1
我目前正在閱讀Apache Lucene的一些教程。我對索引的工作方式有疑問,我無法找到答案。Apache Lucene搜索程序
給定一組我想索引的文檔,並用字符串進行搜索。看來Lucene程序應該索引所有這些文件,然後每次程序運行時搜索輸入的搜索字符串。這不會導致性能問題?或者我錯過了什麼?
我目前正在閱讀Apache Lucene的一些教程。我對索引的工作方式有疑問,我無法找到答案。Apache Lucene搜索程序
給定一組我想索引的文檔,並用字符串進行搜索。看來Lucene程序應該索引所有這些文件,然後每次程序運行時搜索輸入的搜索字符串。這不會導致性能問題?或者我錯過了什麼?
不,這將是非常非典型的建立一個新的索引,每次你運行該程序。
許多教程和例子使用RAMDirectory
,也許這是混淆來自何處。 RAMDirectory
完全在內存中創建索引。這對於演示和教程非常有用,因爲您不必擔心文件系統或任何廢話,並且它確保您從一開始就處於可預測的空白狀態。
實際上,你通常不會使用它。相反,在第一次創建它之後,您會使用directory on the file system和open an existing index,而不是每次運行該程序時都創建一個新索引。
非常感謝femtoRgon。這就說得通了。 – nishanth