Как масштабно реализовать что-то вроде оповещений Google?

Требуется, чтобы у нас было много сохраненных поисков, и когда поступают новые документы, мы хотим иметь возможность найти, какие сохраненные поиски соответствуют этим новым документам, и иметь возможность уведомлять создателей этих сохраненных поисков в режиме реального времени.,

Поддерживается ли что-то подобное в каких-либо популярных поисковых системах и библиотеках свободных программ, встроенных или в виде плагина? Если нет, то какой лучший способ сделать это эффективным и масштабируемым способом?

Я предполагаю, что общая идея должна заключаться в том, чтобы индексировать сохраненные результаты поиска, как если бы они были документами, и использовать входящие документы в качестве запросов для их поиска. Но я не понял, как именно это сделать.

Также лучше, если мы сможем установить как можно меньше ограничений на поддерживаемые операторы запросов.

Заранее спасибо.

1 ответ

Решение

Как насчет сделать наоборот -

  • Поддерживайте поиск в другой базе данных с пользовательской информацией вместо solr.
  • Индексируйте новый документ, чтобы он был доступен для всех последующих поисков
  • После добавления выполните все сохраненные запросы по всему документу, чтобы проверить, соответствует ли он документу.

Кроме того, Solr поддерживает широкий спектр поддержки запросов, так что вы можете проверить это.

Другие вопросы по тегам