How Search Server Works

Microsoft Search Server is a separate service that is installed as part of the SQL Server 2000 product. It is included with Enterprise, Standard, and Developer Editions, but not Personal Edition. The Search Server runs as a separate service, so you can disable it if you do not make use of it.

The Search Server creates indexes on the Windows file system completely outside of SQL Server. These indexes are similar in structure to the nonclustered indexes used by SQL Server. Search Server uses B-tree indexing for each discrete word, with pointers to the table, column, and location of those words. This allows the index to find specific words very rapidly and with small amounts of work.

The Search Server will pull the data to be indexed out of the SQL tables and break it up into single words. Certain words, called noise words, will be dropped from the index. Noise words, which are language-specific, are words that are so common, that any indexing would be counterproductive. You can look at the list of noise words for your language by looking in c:\Program Files\Microsoft SQL Server\FTDATA\SQLServer\Config.


The path to the noise word file, and other paths mentioned in this chapter, might be different on your system if you installed SQL Server in a path other than the default.


If you would like to add to the list of ignored words in the noise files, you can manually edit them by following these steps:

  1. Stop the Search Service.

  2. Descend to the \Microsoft SQL Server\MSSQL\FTDATA\SQLServer\Config directory, and use Notepad or another text editor to open the file for your language. For example, edit noise.enu for American English. (Be sure to make a backup of the file in case the editing goes awry.)

  3. Although it is not required, maintain the word list in alphabetical order. You can also remove words from the list, if you choose.

  4. Note that phrases are not supported. Separate the words with spaces or add one word per line.

  5. Save the file.

  6. Restart Search Server.

  7. Rebuild your full-text indexes.

The full-text index keeps track of each word and the key values for rows where the word can be found.

    Part III: SQL Server Administration
    Part IV: Transact-SQL
    Part V: SQL Server Internals and Performance Tuning
    Part VI: Additional SQL Server Features