2013-01-07 18 views
0

我只是想建立一個小型的索引文件系統(超過3000文本文件,超過5 GB)。我已經搜索谷歌或其他東西的結果,但沒有得到我想要的。所有的結果都與Lucene相關,但是我只想在沒有任何第三個庫的情況下完成它,你會給我一些建議還是一些例子?建立一個文件索引,而不使用Lucene

+0

如果您使用數據庫,您可以執行類似於基於標記的實現(文檔和標記之間的多對多關係)。不幸的是,您必須完成所有工作,例如lucene確實(像NLP)獲得好的結果。你爲什麼不想使用第三方庫? –

+0

它是一個巨大的話題,而且很難簡潔地回答。對於像這樣的問答網站來說,一個體面的答案會太大。相反,你應該閱讀索引和搜索的主題。查看衆所周知的索引是如何工作的,或者閱讀關於搜索索引的wiki文章http://en.wikipedia.org/wiki/Search_engine_indexing。使用一個正在發展的第三方庫比重新發明要容易得多。 – Qwerky

+0

我們不是使用第三方lib.And我只是想建立一個小的。只需分割關鍵詞,然後使用倒排索引,最後可以提供搜索。你們可以給我一些例子嗎? – DowntownGuy

回答

0

一個非常基本的解決方案可能是使用倒排索引。這是您讀取所有要編入索引的文檔的地方,並將找到的單詞作爲鍵存儲在地圖中,其值是包含這些單詞的文檔的列表。

doc 1;

,這是一示例文檔

DOC 2;

這個文件是二號

地圖將有;

this -> doc1, doc2 
is -> doc1, doc2 
an -> doc1 
example -> doc1 
document -> doc1, doc2 
number -> doc2 
two -> doc2 
+0

你說的只是我想要做的,但我不知道如何去實現。你有沒有相關的例子? – DowntownGuy