We're not really sure how big the userbase is going to get, but it could become huge. I think initially we need to be able to cope with several thousand users, and probably only several thousand communities.
I'll certainly have a look at "faceted browsing" :), and yeah, a query handler that does that sounds quite useful. I think I need to have a read on what "filters" actually are :) Thanks thought, It looks like I've got some more reading to do ... -- Martyn On Fri, 2006-08-11 at 00:07 -0400, Yonik Seeley wrote: > On 8/10/06, Martyn Smith <[EMAIL PROTECTED]> wrote: > > I was just reading about the limit on boolean operators in a query (it > > seems to default to 1024 in Solr). > > > > Using option 2 would mean that a user can't be in any more than 1024 > > communities (assuming no other boolean logic in the query). > > > > Potentially a huge number of communities (10,000+ ?). Each community > > could easily have say 100 documents each, and there's some other > > "global" type documents too. > > > > Say 500,000 - 1,000,000 documents? > > How many users for this system? > > > What do you mean by "You could also store user documents in the > > collection to avoid passing the security info" ? > > Store a document of type "user" that contains the communities they belong to. > Create a custom query handler that takes a base query in addition to > the user id. > Get the user document, get a filter for each community they belong to > from the filter cache, union them all, and then do a filtered query. > > If the number of users is low, you could cache the resulting filter > from unioning all the communities. If the number of users is high > compared to the number of communities, cache the community filters > instead. > > Search the archives for faceted browsing... many of the techniques may > be applicable. > > -Yonik >