You are viewing a plain text version of this content. The canonical link for it is here.
Posted to xindice-users@xml.apache.org by Christian Schuster <Ch...@edv-konzepte.com> on 2003/11/18 13:47:02 UTC

Problem: search on two collections

Hi all,

I got a collection for companies and one for persons. A company may have lots of persons and a person may have lots of companies (in fact, most persons only have one company related). When I search for all persons whose names start with "sc", my XPath-Query looks like this: "/Person[starts-with('sc')]" on the collection "/db/person". In the display of the results I also need the companies, in a form like this:

Company "idontcare AG"
 - Person "schuster"
 - Person "schulz"

Company "whatever AG"
 - Person "schuber"
 - Person "scholl"

Ok, I got all person-data from that query, but to retrieve the company-name (and some other informations from the companies as well) I take the related companyID out of the person-document, which is in fact a Xindice-ID of a company. Then I load every single company by ID, wich takes a lot of time. I tried to create one very big query with all IDs in it, but it didn't work. Same Problem when I search for a company - then I have to load every single person by it's ID. Depending on the size of the database you need nearly as many queries as you got search-results from the first query - in my case there are often more than 700 queries for only one search...

Is there any Sollution to make that far more performant?


I'm using a 1.1b2 cvs-build from 2003-10-06, embedded.

Greetings,
  Christian Schuster