Interested Article - Полнотекстовый поиск
- 2021-03-19
- 1
Полнотекстовый поиск ( англ. 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 года.
Примечания
- . Дата обращения: 9 июля 2011. 31 мая 2011 года.
|
Это
заготовка статьи
о
программном обеспечении
. Помогите Википедии, дополнив её.
|
|
В статье
не хватает
ссылок на источники
(см.
рекомендации по поиску
).
|
- 2021-03-19
- 1