Полный текстовый поиск на выборе Heroku, базы данных и / или индексера?

StackOverflow https://stackoverflow.com/questions/9305516

Вопрос

Я хочу реализовать (бесплатно, как в пиве) Полный текстовый поиск в небольшом приложении на Heroku (минимальное количество пользователей, ограниченный набор данных). Тем не менее, я изо всех сил пытаюсь найти лучший шаблон для этого, один из вариантов - использовать предел 10 МБ Xeround, пока он длится (мы можем превзойти это в ближайшем будущем), второе - каким -то образом свернуть свой собственный полный текстовый поиск на mongodb или couchdb.

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

Я бы предпочел нечеткие возможности поиска, таким образом, стремление к свирепе.

Среди моих требований (я должен был упомянуть ранее, чтобы быть свободно!)

Я не нашел никаких шаблонов для использования Wheosh с MongoDB в Python, Flask Application.

Может ли кто -нибудь предоставить больше информации о том, как обрабатывать полный текстовый поиск в небольшом приложении Heroku, Python?

Это было полезно?

Решение

Так что я не пробовал, но http://tenderlove.github.com/texticle/ Похоже, подразумевает, что вы можете использовать насыщенный поиск PGSQL Fulltext, если вы можете вписаться в пределы пространства. Проблема с Whyosh в том, что вы столкнетесь с проблемами с дисковым пространством и его настойчивостью в рамках правил Героку.

Другая вещь, которую нужно сделать, это работать с добавлением, как предложено через Dev Docs:http://devcenter.heroku.com/articles/full-text-search

Что касается шаблонов, вы в основном должны выполнять полное поиск и получить обратные данные/идентификаторы записей, а затем запросить хранилище данных (Mongo) для полного набора данных на основе полного текста. Это ручный процесс, но ничего страшного. Если поиск не нуждается в полных записях, вы обычно можете сойти с рук, сдерживая важные данные с помощью полной информации, но это увеличит размер вашей полнотекстовой индексации.

Другие советы

писолр решает вашу проблему.

Вы думали об использовании Apache Solr? Я думаю, что это лучшее решение для поисковой системы бесплатного текста, она бесплатно и открыт.

Чтобы использовать Solr из Python, я рекомендую вам Майсолр библиотека. Довольно быстрее и проще в использовании, чем pysolr (вы можете увидеть некоторую статистику здесь)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top