Hi, I'd like to prepare some personalized search. Let's say there is a user vector which describes a long term profile of the user. There are some values which ranks parameters used in queries and there is a function which uses parameters to compute dynamic ranking (paramets are just index fields - eg. Integer, Float). I tought that I can use boost query to prepare such a ranking ({!boost b=$bb v=$qq}, where $bb is boost function and $qq is query). After test I realized that using boosts is much "heavier" than just make standard queries. The problem is that I have about 50milion of documents and about 3000rps. So if query will be much more CPU consuming it will be expensive to make such a search system.
Moreover I noticed that making scoring cutoff (some filter that makes frange on scoring - {!frange l=<some_value>}query($qq) ) makes queries much slower. I also tought that I could prepare some indexes with precomputed values for ranking for many groups of users. I couln't make index per each user becuase there are milions of users - so I think it is bad idea. Did somebody have a chance to prepare personalized ranking for quite heavy loaded system? Do you have any advices? -- Regards, Pawel