Full-Text Query Architecture
The Microsoft® SQL Server™ 2000 full-text query component supports sophisticated searches on character string columns.
This capability is implemented by the Microsoft Search service, which has two roles:
- Indexing support
Implements the full-text catalogs and indexes defined for a database. Accepts definitions of full-text catalogs, and the tables and columns making up the indexes in each catalog. Implements requests to populate the full-text indexes.
- Querying support
Processes full-text search queries. Determines which entries in the index meet the full-text selection criteria. For each entry that meet the selection criteria, it returns the identity of the row plus a ranking value to the MSSQLServer service, where this information is used to construct the query result set. The types of queries supported include searching for:
- Words or phrases.
- Words in close proximity to each other.
- Inflectional forms of verbs and nouns.
- Words or phrases.
The full-text engine runs as a service named Microsoft Search on Microsoft Windows NT® Server, Windows NT Advanced Server, Windows® 2000 Server, or Windows 2000 Advanced Server. It is installed when the Full-Text Search feature is selected during custom installation. The Microsoft Search service itself is not installed during an installation of SQL Server Desktop Engine. While this means that the Microsoft Search service is not installed on Microsoft Windows 95, Windows 98, Windows NT Workstation, or Windows 2000 Professional clients, these clients can make use of the service when connected to an instance of SQL Server 2000 Standard Edition, SQL Server 2000 Developer Edition, or SQL Server 2000 Enterprise Edition.
The full-text catalogs and indexes are not stored in a SQL Server database. They are stored in separate files managed by the Microsoft Search service. The full-text catalog files are not recovered during a SQL Server recovery. They also cannot be backed up and restored using the Transact-SQL BACKUP and RESTORE statements. The full-text catalogs must be resynchronized separately after a recovery or restore operation. The full-text catalog files are accessible only to the Microsoft Search service and the Windows NT or Windows 2000 system administrator.
Communications between SQL Server and the Microsoft Search service are made through a full-text provider.
The full-text catalogs, indexes, and searches supported by the Microsoft Search service apply only to tables in SQL Server databases. The Windows NT Indexing Service and Windows 2000 Indexing Service provides similar functionality against operating system files. Indexing Service includes an OLE DB Provider for Indexing Service that can be used by OLE DB consumers. SQL Server applications can access the OLE DB Provider for Indexing Service through distributed queries. Transact-SQL statements can combine full-text searches referencing SQL Server tables with textual searches of file data by using both the full-text SQL constructs with distributed query references to the OLE DB Provider for Indexing Service. For more information, see Full-text Querying of File Data.
There is only one Microsoft Search service on any computer running multiple instances of SQL Server. The single instance of the full-text search engine manages the full-text indexes for all the instances of SQL Server 2000 and SQL Server version 7.0 on the computer.