Как выполнить свободный текстовый поиск в хранилище таблиц Azure? - PullRequest
5 голосов
/ 07 октября 2010

У меня есть решение с хранилищем таблиц Azure, содержащее до нескольких строк строк для каждого клиента (ключ раздела).

Как лучше всего выполнить молниеносный поиск свободного текста?

Из-за характера данных я не могу выполнить поиск слова «дыра» (например, поиск «zur» должен соответствовать «Azure»).

Ответы [ 3 ]

4 голосов
/ 27 октября 2010

Только что заметил, что может помочь вам: Azure Library для Lucene

4 голосов
/ 12 ноября 2010

Мы используем следующие продукты для наших сайтов: Мы запускаем размещенные экземпляры solr (на основе lucene) на http://websolr.com и кэшируем результаты, используя новую функцию распределенного кэша Azure, которая в настоящее время находится в стадии бета-тестирования. Это дает нам наихудшую задержку в 200 мс для начального поискового запроса между центром данных Amazon, где работает websolr.com, и центром данных Azure, и в среднем 6-10 мс для всех кэшированных поисков. Мы также записываем обычные фрагменты текста поиска и стараемся сохранять их свежими в кеше.

2 голосов
/ 27 октября 2010

На данный момент не существует готового решения для этого. Возможно, функция полнотекстового поиска будет анонсирована на PDC10.

Так что на данный момент вам нужно будет запустить собственное решение для индексирования текста. Я сделал это, построив индекс Lucene.net для рабочей роли. Затем я открываю порт TCP на той рабочей роли, которая предоставляет службу поиска с использованием WCF. Любая веб-роль может затем использовать эту услугу. Это работает очень хорошо и обеспечивает очень быструю службу поиска.

Есть видео PDC09 Стива Маркса, которое дает больше информации: http://www.microsoftpdc.com/2009/SVC16

...