Что такое Полнотекстовый поиск по сравнению с ПОДОБНЫМ

124
задан MPelletier 14 December 2013 в 02:09
поделиться

3 ответа

В целом существует компромисс между "точностью" и "отзывом". Высокая точность означает, что меньше несоответствующих результатов представлено (никакие ложные положительные стороны), в то время как высокий уровень полноты означает, что меньше релевантных результатов отсутствует (никакие ложные отрицательные стороны). Используя LIKE оператор дает Вам 100%-ю точность без концессий для отзыва. Средство полнотекстового поиска дает Вам большую гибкость для настройки вниз точности для лучшего отзыва.

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

оператор SQL LIKE может быть чрезвычайно неэффективным. При применении его к неиндексированному столбцу полное сканирование будет использоваться для нахождения соответствий (точно так же, как любой запрос на неиндексируемом поле). Если столбец индексируется, соответствие может быть выполнено против индексных ключей, но с намного меньшей эффективностью, чем большинство индексных поисков. В худшем случае ПОДОБНЫЙ шаблон будет иметь ведущие подстановочные знаки, которые требуют, чтобы каждый индексный ключ был исследован. Напротив, много информационно-поисковых систем могут включить поддержку ведущих подстановочных знаков путем предварительной компиляции суффиксных деревьев в выбранных полях.

Другие функции, типичные для полнотекстового поиска,

  • лексический анализ или tokenization— повреждая блок неструктурированного текста в отдельные слова, фразы и специальные маркеры
  • морфологический анализ или stemming— сворачивание изменений пообещанного в один индексный термин; например, рассматривая "мышей" и "мышь" или "электрификацию" и "электрический" как тот же Word
  • ranking— измерение подобия соответствия записывает к строке запроса
151
ответ дан palaniraja 24 November 2019 в 01:07
поделиться

FTS включает индексацию отдельных слов в текстовом поле для создания поиска многих записей быстрым. Используя ПОДОБНЫЙ все еще требует, чтобы Вы сделали поиск строки (линейный и т.п.) в поле.

38
ответ дан Ignacio Vazquez-Abrams 24 November 2019 в 01:07
поделиться

Как подстановочные знаки использования только, и не все это мощное.

Полный текст позволяет намного более сложный поиск, включая И, Или, Не, даже подобные звучащие результаты (SOUNDEX) и намного больше объектов.

я начал бы смотреть на SQL, СОДЕРЖИТ () FREETEXT () и связанные объекты Полнотекстового поиска, чтобы помочь получить лучшее понимание того, что доступно.

16
ответ дан Mitchel Sellers 24 November 2019 в 01:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: