Behavior Changes to Full-Text Search in SQL Server 2008
This topic describes behavior changes in full-text search. Behavior changes affect how features work or interact in SQL Server 2008 as compared to earlier versions of SQL Server.
In SQL Server 2008, the Full-Text Engine is integrated as a database service into the relational database as part of the server query and storage engine infrastructure. The new full-text search architecture achieves the following goals:
Integrated storage and management—Full-text search is now integrated directly with the inherent storage and management features of SQL Server, and the MSFTESQL service no longer exists.
Full-text indexes are stored inside the database filegroups, rather than in the file system. Administrative operations on a database, such as creating a backup, automatically affect its full-text indexes.
A full-text catalog is now a virtual object that does not belong to any filegroup; it is a logical concept that refers to a group of full-text indexes. Therefore, many catalog-management features have been deprecated, and deprecation has created breaking changes for some features. For more information, see Deprecated Database Engine Features in SQL Server 2008 and Breaking Changes to Full-Text Search in SQL Server 2008.
SQL Server 2005 Transact-SQL DDL statements that specify full-text catalogs work correctly.
Integrated query processing—The new full-text search query processor is part of the Database Engine and is fully integrated with the SQL Server Query processor. This means that, the query optimizer recognizes full-text query predicates and automatically executes them as efficiently as possible.
Enhanced administration and troubleshooting—Integrated full-text search provides tools to help you analyze search structures such as the full-text index, the output of a given word breaker, stopword configuration, and so forth. For more information, see Troubleshooting Full-Text Search.
Stopwords and stoplists have replaced noise words and noise-word files. A stoplist is a database object that facilitates manageability tasks for stopwords and improves the integrity between different server instances and environments. For more information, see Stopwords and Stoplists.
SQL Server 2008 includes new word breakers for many of the languages that exist in SQL Server 2005. Only the word breakers for English, Korean, Thai, and Chinese (all forms) remain the same. For other languages, if a full-text catalog was imported when a SQL Server 2005 database was upgraded to SQL Server 2008, one or more languages used by the full-text indexes in full-text catalog might now be associated with new word breakers that might behave slightly differently from the imported word breakers. For more information about how to guarantee a total match between queries and the full-text index content, see Full-Text Search Upgrade.
A new FDHOST Launcher (MSSQLFDLauncher) service has been added. For more information, see Getting Started with Full-Text Search.
Full-text indexing works with a FILESTREAM column in the same way that it does with a varbinary(max) column. The FILESTREAM table must have a column that contains the file name extension for each FILESTREAM BLOB. For more information, see Querying varbinary(max) and xml Columns (Full-Text Search), Full-Text Search Filters, Full-Text Indexing and Querying Process, and sys.fulltext_document_types (Transact-SQL).
The full-text engine indexes the contents of the FILESTREAM BLOBs. Indexing files such as images might not be useful. When a FILESTREAM BLOB is updated it is reindexed.
For essential information about the impact of the new full-text search architecture on existing applications and scripts, we strongly recommend that you see Deprecated Database Engine Features in SQL Server 2008 and Breaking Changes to Full-Text Search in SQL Server 2008.