Полнотекстовый поиск по Heroku, выбор базы данных и / или индексатора? - PullRequest
3 голосов
/ 16 февраля 2012

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

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

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

Iне нашел никаких шаблонов для использования Whoosh с MongoDB в приложении Python, колба.

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

Ответы [ 3 ]

2 голосов
/ 16 февраля 2012

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

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

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

0 голосов
/ 16 февраля 2012

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

Чтобы использовать SolR из python, я рекомендую вам библиотеку MySolr .Это гораздо быстрее и проще в использовании, чем pysolr (некоторые статистические данные здесь )

0 голосов
/ 16 февраля 2012

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

...