2012-01-16 6 views
0

Я бы переместил приложение на Amazon SimpleDb, так как я не буду поддерживать службу базы данных самостоятельно. Это приложение находится под большой нагрузкой. Существует много операций чтения/записи в секунду. Мне не нужна согласованность и атомарность, и я хочу, чтобы вещи были максимально простыми, поэтому SimpleDb - хороший выбор.Полнотекстовый поиск с Amazon Services

Проблема в том, что мне нужны полнотекстовые возможности поиска. И я не знаю, как сделать его лучше с Amazon SimpleDb. Я реализовал до ручного полнотекстового поиска с помощью базы данных mongoDb. Мне пришлось разделить текст на слова на моем прикладном уровне и создать собственный индекс. Это было не трудно, но я не хочу делать это снова с SimpleDb

я нашел интересную статью http://codingthriller.blogspot.com/2008/04/simpledb-full-text-search-or-how-to.html

Но я хотел бы, чтобы не реализовать его самостоятельно. Я ищу готовое решение

Какие у вас варианты?

Лучше ли пользователю Amazon RDS + Lucene?

Возможно, из решений для SimpleDb вы найдете готовые решения?

Требования:

  • способность обрабатывать много параллельности запросов
  • полнотекстового поиска (размер шрифта не будет больше чем 1 МБ (ограничение SimpleDb))
  • предпочтительнее не админ его самостоятельно.

ответ

4

Lucene или подобное, как правило, люди делают это, но не зная, на какой платформе вы работаете, с которой сложно что-то предложить. Simol - это платформа объектно-постоянства .NET для SimpleDb, которая может использовать Lucene.NET для индексирования. Я также рассмотрел некоторые базовые примеры Lucene.NET, которые не так уж плохи. Если вы ищете размещенную службу индексирования, вы можете взглянуть на вопрос this.

Для того, чтобы ваша индексация выполняла свою работу, вам, скорее всего, придется адаптировать ее к вашему приложению.

+0

Я решил использовать MongoDB вместо этого, это легко осуществить полный текстовый поиск.В любом случае я принимаю ваш ответ, так как я не могу найти хорошее решение здесь – user12384512

3

Amazon выглядит как они будут объявить что-то делать с поиском на 18 января 2012 года http://pandodaily.com/2012/01/17/good-news-for-ec2-customers-amazon-may-launch-new-cloud-search-tomorrow/

SimpleDB для полнотекстового поиска не велика. Он не будет искать более 300 000 документов в одном поле, например, с помощью оператора% like%. Потребуется около двух или трех попыток - около 15 секунд, чтобы пробежать только сотню Мб текста, ищущего матч. Я думаю, что это слишком медленно, как и другие. См. Форумы AWS ...

1

Amazon CloudSearch был выпущен, но не имеет простого способа перемещения данных из вашего SimpleDB в CloudSearch без написания кода.

API, однако, довольно прост и, вероятно, может заработать в течение недели или двух в зависимости от ваших потребностей (если вы используете существующие SDK). Если вы используете язык программирования без SDK, вам потребуется больше времени.

http://aws.amazon.com/cloudsearch/

Смежные вопросы