On Oct 5, 2005, at 7:38 AM, Eugeny N Dzhurinsky wrote:
On Wed, Oct 05, 2005 at 07:03:45AM -0400, Erik Hatcher wrote:
On Oct 5, 2005, at 4:01 AM, Eugeny N Dzhurinsky wrote:
Is it possible somehow to change some partial fields in indexed
documents without reindexing all documents?
No, not with Lucene 1.4.3. But the Subversion trunk has a feature
that can facilitate this sort of thing by building two indexes, one
with the data and one with the security information. Look at
ParallelReader and it's javadocs.
Ok, thanks, I will review things you mentioned. But could Lucene
mix up 2
indexes in single query?
Using ParallelReader - yes. Read the javadocs to learn more.
However, for data like permissions, ACL's, groups, etc, it may be
better to keep the information where it originally resides and have a
Filter that accesses the external data. It would likely be easier
and quicker to re-instantiate Filter's than to rebuild a security
index and less duplication.
But what about the case if only 1 result is allowed to be displayed by
application, but there are thousands of hits, which needs to be
filtered for
ACLs?
Filters may be expensive to create, but once created and cached they
are rapid. Each user, for example, may have their own associated
filter. Or each group, or something like that. You'd only need to
rebuild the filters when permissions changed, but that may be better
than rebuilding an index.
As far as I understand, this can be the pain, because Lucene keeps
the results
in memory, correct?
Results?! As in Hits? No. Filters, yes, perhaps. Architecturally
that is your decision though.
So it is better to find solution for pre-filtering rather
than post-filtering, since last one could be resource-expensive.
I recommend trying it out and seeing if it works for you.
May be you
could suggest some another index/search engines?
I'm a little too biased for that :)
Erik
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]