全文檢索搜尋架構
更新: 2006 年 4 月 14 日
Microsoft SQL Server 2005 中的「全文檢索搜尋」是由「Microsoft SQL Server 全文檢索引擎」(MSFTESQL) 所提供。MSFTESQL 服務有兩個角色,即是索引支援和查詢支援。
下圖顯示 SQL Server 中的「全文檢索搜尋」架構。
該架構是由下列處理序所組成:
- SQL Server 處理序 (Sqlservr.exe)
- SQL Server 的 Microsoft 全文檢索引擎處理序 (Msftesql.exe)
- Microsoft 全文檢索引擎篩選背景程式處理序 (Msftefd.exe)
上述這些處理序都包含許多元件,如下列章節所述。
SQL Server 處理序
SQL Server 處理序是由下列元件所組成:
- 使用者資料表
這些資料表包含要進行全文檢索索引的資料。 - 索引鍵對應
此元件包含全文檢索索引鍵資料行中,資料值與內部文件識別碼間的對應。 - SQL Server 查詢處理器
- Microsoft 全文檢索收集程式
此元件負責排程和驅動全文檢索索引母體擴展,以及監視全文檢索目錄。
Microsoft Full-Text Engine for SQL Server (MSFTESQL) 處理序
MSFTESQL 服務負責下列作業:
- 擴展和管理全文檢索目錄。
- 讓 SQL Server 資料庫中更容易進行資料表的全文檢索搜尋。
MSFTESQL 處理序會主控下表中列出的元件。
元件 | 描述 |
---|---|
篩選背景程式管理員 |
負責監視 Microsoft 全文檢索引擎篩選背景程式 (MSFTEFD) 處理序的狀態。 |
索引子 |
建立用來儲存已索引之 Token 的反向索引結構。如需詳細資訊,請參閱<全文檢索索引結構>。 |
同義字檔案 |
包含搜尋詞彙的同義字。如需詳細資訊,請參閱<同義字>。 |
贅字檔案 |
包含經常出現但對搜尋沒有任何幫助之單字的清單。如需詳細資訊,請參閱<贅字>。 |
斷詞工具和詞幹分析器 |
在所有全文檢索索引資料上執行語言分析。斷詞工具是一種元件,可在進行全文檢索索引的資料列中,決定文字分界在文字資料流中的位置。詞幹分析器會擷取所提供之單字的原形。例如,"running"、"ran" 和 "runner" 是 "run" 單字的不同形態。如果該查詢是 FREETEXT 查詢或要求字形擴展,則 MSFTESQL 服務會在查詢時間叫用詞幹分析器。 |
如需詳細資訊,請參閱<斷詞工具與詞幹分析器>。
如需有關 MSFTESQL 服務的詳細資訊,請參閱<Microsoft SQL Server 全文檢索引擎>。
Microsoft 全文檢索引擎篩選背景程式 (MSFTEFD) 處理序
MSFTEFD 是在全文檢索索引處理序期間透過 MSFTESQL 服務啟動。MSFTEFD 會主控下列元件,這些元件負責存取和篩選資料表中的資料、進行斷詞及進行詞幹分析。
- 通訊協定處理常式
在 SQL Server 2005 中,此元件會從所指定之資料庫的資料表中存取資料。 - 篩選工具
從文件中擷取文字資訊的資料流,並捨棄所有非文字和格式化資訊。如需詳細資訊,請參閱<全文檢索搜尋篩選>。 - 斷詞工具和詞幹分析器
內部資料表
全文檢索搜尋會使用下列內部資料表:
- fulltext_index_map 會儲存全文檢索索引鍵資料行和內部文件識別碼 (可唯一識別文件) 之間的對應。
- fulltext_catalog_freelist 會儲存未使用的文件識別碼。
附註: |
---|
這些資料表僅供內部使用。您無法修改這些資料表,或是針對這些資料表執行查詢。我們無法保證這些資料表的回溯相容性,也不保證它們可用於 SQL Server 未來的版本。 |
請參閱
概念
Microsoft SQL Server 全文檢索引擎
全文檢索索引和查詢處理程序
其他資源
說明及資訊
變更歷程記錄
版本 | 歷程記錄 |
---|---|
2006 年 4 月 14 日 |
|