Поделиться через


Изменения в функциях полнотекстового поиска

В этом разделе описаны изменения поведения полнотекстового поиска. Изменения в поведении влияют на то, как функции работают или взаимодействуют в 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 search и семантического поиска. Для обеспечения согласованности между содержимым индексов и результатами запросов рекомендуется выполнить повторное заполнение существующих полнотекстовых индексов.

  1. Для английского языка добавлены новые средства разбиения по словам. Если необходимо сохранить поведение, существовавшее в предыдущем выпуске, см. раздел Change the Word Breaker Used for US English and UK English.

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

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

Изменения в поведении новых средств разбиения по словам и парадигматических модулей

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

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

В некоторых случаях новые компоненты возвращают больше результатов.

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

dog
cat

cat-dog

dog
cat@dog.com cat

com

dog
cat

cat@dog.com

com

dog
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:49AM

tt1049
10:49AM

tt24104900

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

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

(где термы не являются допустимыми символами английского языка)
'jěˊžqCžl' je yq zl
table's table's

table
table's
cat- cat

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

000

nn000

nn100$

usd
$100 000 USD

nn100000usd
beautiful U.S land beautiful

land

u.s

us
beautiful

land
Mt. Kent and Mt Challenger challenger

kent

mt

Mt.
mt

kent

challenger

Изменения в поведении полнотекстового поиска в SQL Server 2008

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

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

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

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

      Примечание

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

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

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

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

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

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

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

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

См. также:

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