Interested Article - Полнотекстовый поиск

Полнотекстовый поиск ( англ. Full text searching , фр. Recherche en texte integral ) — автоматизированный поиск документов, при котором поиск ведётся не по именам документов, а по их содержимому, всему или существенной части. Многие веб-сайты и прикладные программы (например, программы для обработки текстов) предоставляют возможности полнотекстового поиска. Некоторые системы веб-поиска, такие как AltaVista, используют методы полнотекстового поиска, в то время как другие индексируют только часть веб-страниц, проверенных их системами индексации.

Полнотекстовый индекс

Первые версии программ полнотекстового поиска предполагали сканирование всего содержимого всех документов в поиске заданного слова или фразы. При использовании такой технологии поиск занимал очень много времени (в зависимости от размера базы), а в интернете был бы невыполним. Современные алгоритмы заранее формируют для поиска так называемый полнотекстовый индекс — словарь, в котором перечислены все слова и указано, в каких местах они встречаются. При наличии такого индекса достаточно осуществить поиск нужных слов в нём и тогда сразу же будет получен список документов, в которых они встречаются.

Реализации

MySQL

Полнотекстовые индексы в MySQL обозначаются как типом «FULLTEXT», который может применяться для столбцов типов «VARCHAR» и «TEXT». При массовом добавлении данных в таблицу с полями «FULLTEXT» индекс будет создаваться сразу, что замедлит работу, для избежания эффекта рекомендуется модернизировать поля уже после добавления.

Поиск выполняется с помощью функций MATCH() и AGAINST():

  SELECT * FROM articles WHERE MATCH (title, body) AGAINST ('поиск');

При этом поисковая фраза должна быть написана слово в слово (то есть «поиска», «поисковик» — невалидные варианты для примера выше)

Результат (жирным выделены найденные соответствия):

id title body
5 Регулярные выражения В большинстве реализаций регулярных выражений есть способ производить поиск фрагмента текста …
1 Полнотекстовой поиск Полнотекстовой поиск

См. также

Ссылки

  • Бартунов О., Сигаев, Ф. . 8 октября 2015 года.
  • Лебедев, Д., Юсов, О. . 1 января 2016 года.
  • Петрухин, А. Н., Дворецкий, А. Ю. Цифровой поиск как основа реализации словаря полнотекстовой базы данных // Вопросы радиоэлектроники. — Москва: Центральный научно-исследовательский институт экономики, систем управления и информации «Электроника. — ISSN .
  • Симанкина, Н. И., Шипулина, К. В., Костарев, А. А., Окунев, А. Ф. . — 2014. — № 4 (27) . — С. 92—96 .
  • Филатов, В. О., Кравцов, И. В., Варфоломеев, А. Г. . 18 августа 2019 года.
  • Зайцев, А. В. . 23 декабря 2015 года.
  • Колосов, А. П., Богатырев, М. Ю. . 4 марта 2016 года.

Примечания

  1. . Дата обращения: 9 июля 2011. 31 мая 2011 года.
Источник —

Same as Полнотекстовый поиск