Използвам подобен подход със сортирани набори за прилагане на индексиране на пълен текст. Като цяло подходът е добър, въпреки че можете да направите няколко сравнително прости подобрения.
- Вместо да използвате произволно генерирани ключове, можете да използвате заявката (или кратка форма от нея) като ключ. Това ви позволява да използвате повторно наборите, които вече са били изчислени, което може значително да подобри производителността, ако имате заявки в два големи набора, които обикновено се комбинират по сходни начини.
- Обработването на заглавието като пълен низ ще доведе до много голям брой едночленни набори. Може да е по-добре да индексирате отделни думи в заглавието и да филтрирате крайните резултати за точно съвпадение, ако наистина имате нужда от него.