Проблема SQL Server 2008 FTS, лучшая альтернатива - PullRequest
1 голос
/ 23 декабря 2009

Я разрабатываю поисковую систему новостей на C # и SQL Server 2008
я использую полнотекстовый поиск SQL для поиска, и это нормально до недели назад.

В настоящее время у меня более 100 миллионов записей, в которые ежедневно добавляется около 1 миллиона статей.
но иногда я вижу, когда пользовательский поиск, один из 8 процессоров становится 100% и занимает несколько минут. после повторного заполнения каталога, это нормально в течение нескольких дней, в чем проблема?

Примечание: я устанавливаю автоматические изменения отслеживания и планирую его для добавочной загрузки, когда ЦП переходит в режим ожидания

Также мне нужно знать, что является лучшей альтернативой?

  • Lucene.Net

  • Xapian

  • Sphinx

  • Solar

  • Или любое другое лучшее решение?

Не могли бы вы мне помочь?

Ответы [ 2 ]

2 голосов
/ 23 декабря 2009

Кроме того, если вы добавляете 1 миллион статей в день, SQL необходимо объединить индексы, что может вызвать скачок на некоторое время, пока индексы не будут объединены.

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

2 голосов
/ 23 декабря 2009

Я рекомендую вам ознакомиться с этим техническим документом: Полнотекстовые запросы SQL Server 2005 для больших каталогов: извлеченные уроки , в котором объясняются некоторые методы, используемые SQL CAT (Customer Advisory Team) для управления 420 ГБ. база данных с каталогом FT 10Gb.

...