Getting Started with Statistical Semantic Search in SQL Server 2012

Dmitri GropenSQL Server 2012 introduces a new beyond-relational platform called Semantic Search.  Semantic Search extends Full-Text Search capabilities by allowing querying not only for words in the text source, but also for meaning of that text.

Semantic Search builds its indexes using the indexes created by Full-Text Search. Semantic Search is also called Statistical Semantic Search because its intelligence is based on statistics.

Before you can use Statistical Semantic Search in SQL Server 2012, you will need to download, install, attach, and register Semantic Language Statistics Database.  This database contains the statistical language models that Semantic Search depends on.

Please follow this link to download msi package that contains the database.

Run the installer, and after installation is complete, find semanticsDB.mdf file in Microsoft Semantic Language Database folder under your Program Files directory. Attach this database file by right-clicking Databases folder in Object Explorer of your Management Studio, and selecting Attach button. Then click Add button and locate the database .mdf file to attach. Once the database is attached, register it by executing the following command:

USE master
EXEC sp_fulltext_semantic_register_language_statistics_db @dbname = N'semanticsdb';

Verify that the database is installed by running the following query:

SELECT * FROM sys.fulltext_semantic_language_statistics_database;

To list the languages supported for semantic search, run this query:

SELECT * FROM sys.fulltext_semantic_languages;

You can create Semantic Search indexes on a table by running T-SQL commands, Full-Text Indexing Wizard, or in Full-Text Catalog properties.

To create Semantic Search indexes in Full-Text Catalog properties, in the Object Explorer of your Management Studio navigate to YourDatabase / Storage / Full Text Catalogs.  Right click on catalog name and select Properties.

Select the Tables/Views from the left list view. Add the tables for which you want to create indexes to the Table/View objects assigned to the catalog list. Select the columns under Available Columns list. Finally, select the check boxes under Statistical Semantic list next to the columns for which you want to build Semantic Search indexes.

Full-Text Catalog properties

2 thoughts on “Getting Started with Statistical Semantic Search in SQL Server 2012

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.