17.2.8. Текстовый поиск в системах баз данных

Интеграция ресурсов баз данных и коллекций текстовых документов, а также использование инструментария систем баз данных для реализации систем текстового поиска уже давно востребованы практикой разработки информационных систем.

Действительно, текстовые документы могут обладать различными структурированными характеристиками, и в таких случаях может потребоваться не только традиционный поиск по содержанию документов, но и поиск по значениям таких ассоциированных с документами внешних атрибутов. Поддержка связей между ассоциированными с документами атрибутами и соответствующими им документами, а также поиск документов по значениям ассоциированных с ними атрибутов вполне вписываются в обычные технологии баз данных. Кроме того, механизмы среды хранения СУБД могут быть использованы и для хранения самих документов.

Вместе с тем, информационные ресурсы, которыми оперируют системы баз данных, часто включают наряду со структурированными данными о документах также и полные тексты этих документов. Поэтому необходимость текстового поиска возникает и в среде традиционных систем баз данных. Традиционные СУБД стали оснащаться механизмами текстового поиска по содержанию документов.

Технологии текстового поиска поддерживаются в настоящее время многими реляционными и объектно-реляционными серверами баз данных, например, продуктами линий DB2 компании IBM и Oracle компании Oracle Corporation, SQL Server 7.0 и SQL-сервер 2000 компании Microsoft Corporation.

Нужно заметить, однако, что в большинстве таких СУБД механизмы текстового поиска не обеспечивают реализации продвинутых моделей поиска, которые обсуждались выше. Чаще всего они ограничиваются поддержкой булевской модели поиска, иногда с расширением запросов, полнотекстовым индексированием и некоторыми другими дополнительными возможностями.