詞匯表
Analysis
將字段的文本分解為要索引的單個詞條 (Term) 的過程。這包括將文本標(biāo)記為詞條 (Term),然后選擇性地過濾標(biāo)記化的詞條(例如,小寫和刪除停用詞)。 Whoosh 包括幾個不同的分析器。
Corpus
您正在編制索引的文檔集。
Documents
您希望使其可搜索的個別內(nèi)容。 “文檔” 一詞可能意味著文件,但數(shù)據(jù)源實際上可以是任何東西——內(nèi)容管理系統(tǒng)中的文章、博客系統(tǒng)中的博客文章、非常大的文件塊、從 SQL 查詢返回的行、來自郵箱文件,或其他任何東西。當(dāng)您從 Whoosh 獲得搜索結(jié)果時,結(jié)果是一個文檔列表,無論 “文檔” 在您的搜索引擎中意味著什么。
Fields
每個文檔都包含一組字段 (Fields)。 典型的字段可能是“標(biāo)題”、“內(nèi)容”、“url”、“關(guān)鍵字”、“狀態(tài)”、“日期”等。字段可以被索引(因此它們是可搜索的)和/或與文檔一起存儲。 存儲字段使其在搜索結(jié)果中可用。 例如,您通常希望存儲“標(biāo)題”字段,以便您的搜索結(jié)果可以顯示它。
Forward index
列出每個文檔和文檔中出現(xiàn)的單詞的表格。 Whoosh 允許您存儲詞向量 (term vectors),這是一種前向索引 (Forward index)。
Indexing
檢查語料庫中的文檔并將其添加到反向索引 (Reverse index) 的過程。
Postings
反向索引 (Reverse index) 列出了語料庫 (corpus) 中的每個單詞,對于每個單詞,還有該單詞出現(xiàn)的文檔列表,以及一些可選信息(例如該單詞在該文檔中出現(xiàn)的次數(shù))。 列表中的這些項目,包含文檔編號和任何額外信息,稱為帖子 (Postings)。 在 Whoosh 中,存儲在帖子中的信息可以針對每個字段進(jìn)行自定義。
Reverse index
基本上是一個表格,列出了語料庫 (corpus) 中的每個單詞,以及每個單詞出現(xiàn)的文檔列表。 它可能更復(fù)雜(索引還可以列出單詞在每個文檔中出現(xiàn)的次數(shù)、出現(xiàn)的位置等),但這就是它的基本工作原理。
Schema
Whoosh 要求您在開始索引 (indexing) 之前指定索引 (index) 的字段 (fields) 。模式 (Schema) 將字段名稱與字段的元數(shù)據(jù)相關(guān)聯(lián),例如發(fā)布的格式以及字段的內(nèi)容是否存儲在索引中。
Term vector
某個文檔中某個字段的正向索引。 您可以在模式 (Schema) 中指定給定字段應(yīng)存儲詞向量 (term vectors)。