正交表的結構如圖1所示。這種組織方式結構簡單,建立索引時建立方便,易於維護。因為索引是基於文檔的,所以如果添加了壹個新文檔,就會直接為該文檔創建壹個新的索引塊,並附加到原始索引文件的後面。如果刪除壹個文檔,直接找到該文檔編號對應的索引信息,直接刪除。但需要掃描所有文檔才能保證查詢時沒有遺漏,這就大大延長了檢索時間,使得檢索效率低下。
雖然正字表的工作原理很簡單,但是它的檢索效率太低,除了在特定的情況下,實用價值不大。
倒排索引(inverted index):倒排表對詞或詞進行索引,表中關鍵詞對應的記錄條目記錄該詞或詞出現的所有文檔。條目是壹個word表段,記錄文檔的ID和文檔中字符的位置。
由於每個單詞對應的文檔數量是動態變化的,因此建立和維護倒排表更加復雜。但在查詢時,可以壹次性得到查詢關鍵詞對應的所有文檔,因此倒排表的效率更高。在全文檢索中,檢索的快速響應是最關鍵的性能,索引的建立是在後臺進行的,雖然效率比較低,但不會影響整個搜索引擎的效率。倒排表的結構圖如圖2所示: