Creating and Maintaining Databases

Full-Text Indexes

Full-text support for Microsoft® SQL Server™ 2000 data involves two features: the ability to issue queries against character data, and the creation and maintenance of the underlying indexes facilitating these queries.

Full-text indexes differ from regular SQL indexes in a number of ways.

Regular SQL indexes Full-text indexes
Stored under the control of the database in which they are defined. Stored in the file system, but administered through the database.
Several regular indexes per table are allowed. Only one full-text index per table is allowed.
Updated automatically when the data upon which they are based is inserted, updated, or deleted. Addition of data to full-text indexes, called population, can be requested through either a schedule or a specific request, or can occur automatically with the addition of new data.
Not grouped. Grouped within the same database into one or more full-text catalogs.
Created and dropped using SQL Server Enterprise Manager, wizards, or Transact-SQL statements. Created, managed, and dropped using SQL Server Enterprise Manager, wizards, or stored procedures.

These differences make a number of administrative tasks necessary. Full-text administration is carried out at several levels:

At all these levels, facilities are available to retrieve meta data and status information.

Like regular SQL indexes, full-text indexes can be automatically updated as data is modified in the associated tables. Alternatively, full-text indexes can be repopulated manually at appropriate intervals. This repopulation can be time-consuming and resource-intensive; therefore, it is an asynchronous process that usually runs in the background during periods of low database activity.

Tables with the same update characteristics (such as small number of changes versus large number of changes, or tables that change frequently during a particular time of day) should be grouped together and assigned to the same full-text catalog. By setting up full-text catalog population schedules in this way, full-text indexes stay synchronous with the tables without adversely affecting the resource usage of the database server during periods of high database activity.

It is important to plan the placement of full-text indexes for tables in full-text catalogs. When you assign a table to a full-text catalog, consider the following guidelines:

See Also

sp_fulltext_table