Изменения поведения в поиске Full-Text

В этом разделе описываются изменения поведения в полнотекстовом поиске. Изменения поведения влияют на работу функций или взаимодействие в SQL Server 2014 по сравнению с более ранними версиями SQL Server.

Изменения поведения в поиске Full-Text в SQL Server 2014

Информация будет предоставлена позже.

Изменения поведения в поиске Full-Text в SQL Server 2012

SQL Server 2012 устанавливает новую версию средств разбиения слов и стеммеров для английского языка США (LCID 1033) и английского языка Великобритании (LCID 2057). Однако можно переключиться на предыдущую версию этих компонентов, если вы хотите сохранить предыдущее поведение. Дополнительные сведения см. в разделе "Изменение средства разбиения слов", используемого для английского языка США и Великобритании.

Установлены новые средства разбиения по словам и стеммеры

SQL Server 2012 обновляет все средства разбиения слов и стеммеры, используемые в Full-Text поиске и семантическом поиске. Чтобы обеспечить согласованность между содержимым индексов и результатами запросов, рекомендуется повторно заполнить существующие полнотекстовые индексы.

  1. Существуют новые средства разбиения слов для английского языка. Если вам нужно сохранить предыдущее поведение, см. раздел "Изменить средство разбиения слов для английского (США) и английского (Великобритания)".

  2. Сторонние средства разбиения слов для датских, польских и турецких, которые были включены в предыдущие выпуски SQL Server, были заменены компонентами Майкрософт. Новые компоненты включены по умолчанию.

  3. Добавлены средства разбиения по словам для чешского и греческого языков. Предыдущие выпуски полнотекстового поиска SQL Server не включали поддержку этих двух языков.

Изменения поведения новых средств разбиения по словам и стеммеров

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

Если вам нужно сохранить предыдущее поведение средств разбиения слов и стеммеров, см. следующие разделы:

В некоторых случаях новые компоненты возвращают дополнительные результаты:

Термин Результаты предыдущего разбивателя слов и стеммера Результаты с новым разбиением слов и стеммером
кошка-собака кошка

собака
кошка

кошка-собака

собака
cat@dog.com кошка

com

собака
кошка

cat@dog.com

com

собака
12/11/2011

(где термин является датой)
12/11/2011

dd20111211
11

12

12/11/2011

2011

dd20111211

В некоторых случаях новые компоненты возвращают аналогичные результаты:

Термин Результаты с помощью предыдущего средства разбиения слов и стеммера Результаты с помощью нового средства разбиения слов и стеммера
100$ 100$

nn100$
100$

nn100usd
022 022

nn022
022

nn22
10:49AM

(где термин обозначает время)
10:49 утра

tt1049
10:49 утра

tt24104900

В некоторых случаях новые компоненты возвращают меньше результатов или результатов, которые могут быть непредвиденными приложениями:

Термин Результаты, полученные с предыдущим средством разбиения слов и стеммером Результаты с новым разделителем слов и стеммером
jˊqCžl

(где термины не являются допустимыми английскими символами)
jěˊÿqℭžl je yq zl
таблица таблицы

таблица
таблицы
кошка- кошка

кошка-
кошка
v-z*(где v и z — шумные слова)* (нет результатов) v-z
$100 000 USD 100 долларов

000

nn000

nn100$

доллар США
$100 000 usd

nn100000 долларов США
красивая земля США красивая

земля

u.s.

нас
красивый

земля
Мт. Кент и Mt Challenger претендент

Кент

мт

мт.
мт

Кент

претендент

Изменения поведения в поиске Full-Text в SQL Server 2008

В SQL Server 2008 и более поздних версиях подсистема Full-Text интегрирована в качестве сервиса в реляционную базу данных и является частью инфраструктуры движка запросов и хранилища сервера. Новая архитектура полнотекстового поиска достигает следующих целей:

  • Полнотекстовый поиск теперь напрямую интегрирован с встроенными функциями хранения и управления SQL Server, и служба MSFTESQL больше не существует.

    • Полнотекстовые индексы хранятся в файловых группах базы данных, а не в файловой системе. Административные операции с базой данных, такие как создание резервной копии, автоматически влияют на его полнотекстовые индексы.

    • Полнотекстовый каталог теперь представляет собой виртуальный объект, который не принадлежит какой-либо файловой группе; Это логическая концепция, которая относится к группе полнотекстовых индексов. Поэтому многие функции управления каталогом были устарели, и это создало ломающие изменения для некоторых функций. Дополнительные сведения см. в статье Устаревшие функции движка базы данных в SQL Server 2014 и важные изменения для поиска Full-Text.

      Замечание

      Инструкции DDL SQL Server 2005 Transact-SQL, работающие с полнотекстовыми каталогами, функционируют правильно.

  • Встроенная обработка запросов— новый обработчик запросов полнотекстового поиска является частью ядра СУБД и полностью интегрирован с обработчиком запросов SQL Server. Это означает, что оптимизатор запросов распознает предикаты полнотекстового запроса и автоматически выполняет их максимально эффективно.

  • Интегрированный полнотекстовый поиск предоставляет расширенные функции администрирования и устранения неполадок, а также средства для анализа структур поиска, таких как полнотекстовый индекс, выходные данные заданного средства разбиения слов, конфигурации стоп-слов и т. д.

  • Стоп-слова и списки стоп-слов заменили шумовые слова и файлы шумных слов. Список стоп-слов — это объект базы данных, который упрощает задачи управления стоп-словами и улучшает целостность данных между различными экземплярами сервера и средами. Дополнительные сведения см. в разделе Настройка стоп-слов и списков стоп-слов для полнотекстового поиска и управление ими.

  • SQL Server 2008 и более поздних версий включают новые средства разбиения слов для многих языков, существующих в SQL Server 2005. Только алгоритмы разбиения слов для английского, корейского, тайского и китайского (все формы) остаются одинаковыми. Для других языков, если полнотекстовый каталог был импортирован при обновлении базы данных SQL Server 2005 до SQL Server 2008 или более поздней версии, один или несколько языков, используемых в полнотекстовых индексах в полнотекстовом каталоге, теперь могут быть связаны с новыми разделителями слов, которые могут вести себя немного иначе, чем импортированные разделители слов. Дополнительные сведения о том, как обеспечить согласованность между запросами и содержимым полнотекстового индекса, см. в разделе "Обновление Full-Text поиск".

  • Добавлена новая служба запуска FDHOST (MSSQLFDLauncher). Дополнительные сведения см. в статье "Начало работы с поиском Full-Text".

  • Полнотекстовое индексирование работает с столбцом FILESTREAM так же, как и с столбцом varbinary(max) . Таблица FILESTREAM должна содержать столбец, содержащий расширение имени файла для каждого BLOB-объекта FILESTREAM. Дополнительные сведения см. в разделе "Запрос с использованием Full-Text поиска", разделе "Настройка и управление фильтрами для поиска" и sys.fulltext_document_types (Transact-SQL).

    Полнотекстовый модуль индексирует содержимое BLOB-объектов FILESTREAM. Индексирование файлов, таких как изображения, может оказаться не полезным. При обновлении BLOB-объекта FILESTREAM он переиндексируется.

См. также

Полнотекстовый поиск
Обратная совместимость поискаFull-Text
Обновление полнотекстового поиска
Начало работы с компонентом Full-Text Search