Назначение
Понятие «полнотекстовый» (или фразовый) поиск подразумевает поиск
по полному тексту или по всем текстовым полям документа (базы данных). Любой текстовый документ, как правило, имеет
внутреннюю структуру – деление на параграфы, отступ для заголовка, для подписи, таблицы. Текстовые редакторы позволяют
делать эту структуру достаточно сложной – выделять текст шрифтами и вариантами их начертания, делать списки, выравнивание
и т.д. и т.п. Кроме того, различные редакторы имеют определенные форматы хранения данных (.doc
,
/l
, .rtf
, .tex
и др.). Некоторые документы (например,
в формате /l
), помимо средств визуального оформления информации, имеют разметку внутренней
структуры – заголовок, тело документа, ключевые слова. Поэтому в задачу полнотекстового поиска входит понимание
внутренней структуры и «расшифровка» разных форматов документов с помощью специальных средств – конвертеров или фильтров.
СУБД ЛИНТЕР со средствами полнотекстового поиска рекомендуется использовать в проектах, где основными определяющими факторами являются скорость поиска и извлечения текста по фразе в больших хранилищах информации (например, интернет-сервер). Средства полнотекстового поиска дают возможность упростить схему хранения данных в приложении и избежать создания некоторых дополнительных таблиц.
Система полнотекстового поиска обеспечивает:
-
варианты поиска слов: по началу, окончанию, части слова, целому слову, поиск с использованием символов шаблона;
-
поиск по словам, набранным с ошибками (нечеткий поиск). Поддерживаются три основных типа ошибок (пропуск, вставка, замена буквы);
-
поиск с учетом и без учета регистра букв;
-
поиск близкорасположенных слов и фраз с известным порядком слов;
-
поиск по названию и значению атрибута в файлах с гипертекстовой разметкой;
-
автоматическое определение кодировки русскоязычного текста;
-
поддержка многобайтных кодировок и иероглифических символов;
-
хранение информации в кодировке UNICODE.