Lucene search results are sorted by an individual list of orders (unique to each user)

I have authenticated users in my application who have access to a shared database of up to 500,000 items. Each user has his own public website, and he needs to prioritize the displayed elements (think about yourself) on his own website.

out of 500,000 items, they can only have up to 200 priority items, the order of the remaining items is less important.

Each user will prioritize differently.

First I asked a similar mysql question here. Mysql results are sorted by a list that is unique to each user , and got a good answer, but I think the best option would be to choose an unindexed solution without sql.

Can this be done in Lucene ?, there is another search technology that would be better for this.

ps. Google implements a similar setting with search results, where you can prioritize and exclude your own search results if you are logged in.

Update: relabeled with sphinx, as I read the documentation, and I believe that it can do what I am looking for with “attribute values ​​for each document” stored in memory - I am interested to hear any feedback about this from the sphinx guru

+3
1

. , , - :

"OR item_id=%d+X"

X - , . , , , , "" , - .

, , , - , .

+2

Source: https://habr.com/ru/post/1716359/


All Articles