You could implement a good solution with the underlying Lucene ParallelReader
http://lucene.apache.org/java/3_0_2/api/core/org/apache/lucene/index/ParallelReader.html
Keep the 100 search fields - 'static' info - in one index, the
permissions info in another index that gets updated when the
permissions change.

Does SOLR expose this kind of functionality?

-Glen Newton
http://zzzoot.blogspot.com/
http://zzzoot.blogspot.com/2009/07/project-torngat-building-large-scale.html

On 7 July 2010 00:38, RL <rl.subscri...@gmail.com> wrote:
>
> I've a question about indexing/searching techniques in relation to document
> level security.
> In planning a system that has, let's say, about 1million search documents
> with about 100 search fields each. Most of them unstored to keep the index
> size low, because some of them can contain some kilobytes and some of them
> several hundred kilobytes. Two of these search fields are for permission
> checking, where i keep the explicitely allowed and explicitely disallowed
> users and usergroups. (usergroups can be in a hierarchical structure with
> permission inheritance)
>
> So when a user searches in the system, his user id, and ids of usergroup
> memberships are added as a filter query in my application logic before the
> query is sent to solr. So far so good for the searching part.
>
> But the problem is, that the permissions can be changed by administrators of
> that system, requiring to re-index the two permission search fields.
>
> first idea:
> Partial updates of index entries is not possible, so i need to fetch all the
> 1million documents from a database to do a re-indexing just because some
> permissions changed. The fetching process is rather expensive and requires
> more then 14hours. I am sure that this can be optimized of course, but i
> would rather try to avoid a whole re-indexing of all content.
>
> second idea:
> Another idea would be to store just the permissions in one small and fast to
> update index and all the other stuff in the other huge and not so often
> updated index. But i didn't find any possibilities to combine these two
> indices in one query. Is that even possible?
>
>
> Does somebody have experience with these topics or give advice how to solve
> that case properly?
> Thanks in advance.
>
> --
> View this message in context: 
> http://lucene.472066.n3.nabble.com/document-level-security-indexing-searching-techniques-tp946528p946528.html
> Sent from the Solr - User mailing list archive at Nabble.com.
>



-- 

-

Reply via email to