Pull to refresh
33
0
Alex Medveshchek @devidark

Разработчик

Send message
Ну начнём с того, что в таком случае у нас не будет и самих текстов подсказок, потому что мы не знаем даже, что искали пользователи. :)
Но с другой стороны, если разработчик поисковой системы может «налить» пользователей на свой поисковик, то статистика неминуемо появится сама собой, и покупка трафика пользователей будет равносильна «покупке» тех самых весов популярности f и всего остального о поведении пользователей. Так что через какой-то непродолжительный промежуток времени у вас уже что-то да будет.
Вопрос хороший.
На самом деле к задаче можно действительно подходить способом отслеживания позиции курсора и выяснять редактируемое слово, что можно использовать, скажем, при ранжировании.
Но такой способ обладает и рядом недостатков:
  • нам придётся увеличить объём индекса: придётся хранить trie со списками для редактируемых слов, да плюс отдельный индекс для законченных слов;
  • этот способ подразумевает обязательное наличие информации о набираемом слове, что в общем случае не очень гибко — не все сервисы, которые хотят использовать подсказки, способны на такое;
  • в общем случае такой способ даёт меньшую полноту подсказок, чем когда мы представляет каждое слово как обобщённый префикс.

Поэтому рассматривать каждое слово как префикс не обязательно, но в целом экономичнее и выгоднее.
Да, скорость здесь играет решающую роль. И надо сказать, что именно пересечение posting list'ов в данном алгоритме — самая ресурсоёмкая часть.
2

Information

Rating
Does not participate
Works in
Date of birth
Registered
Activity