Изменения в функциях полнотекстового поиска
В этом разделе описаны изменения поведения полнотекстового поиска. Изменения в поведении влияют на то, как функции работают или взаимодействуют в 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 и семантического поиска. Для обеспечения согласованности между содержимым индексов и результатами запросов рекомендуется выполнить повторное заполнение существующих полнотекстовых индексов.
Для английского языка добавлены новые средства разбиения по словам. Если необходимо сохранить поведение, существовавшее в предыдущем выпуске, см. раздел Change the Word Breaker Used for US English and UK English.
Сторонние средства разбиения по словам для датского, польского и турецкого языков, которые были включены в предыдущие выпуски SQL Server, были заменены компонентами Майкрософт. Эти новые компоненты включены по умолчанию.
Добавлены средства разбиения по словам для чешского и греческого языков. Предыдущие выпуски поиска 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