簡體   English   中英

選擇正確的Lucene目錄

[英]Choosing the right Lucene Directory

有許多類型的目錄類型可用於構建Lucene索引。 哪一個最適合提高RedHat機器的搜索速度(不確定操作系統是否相關)?

  • RAMDirectory - 無法使用,索引太大了
  • SimpleFSDirectory - 不能是這個因為它是'簡單'...
  • MMapDirectory - 也許這個?
  • NIOFSDirectory - 還是這個?
  • Any better options?

除非你有充分的理由選擇其中一個,我建議只需調用FSDirectory.open(File) 這使得Lucene能夠決定哪種實現是理想的。

對於好奇,這是決定如何做出的:

public static FSDirectory open(File path, LockFactory lockFactory) throws IOException {
  if ((Constants.WINDOWS || Constants.SUN_OS || Constants.LINUX)
        && Constants.JRE_IS_64BIT && MMapDirectory.UNMAP_SUPPORTED) {
    return new MMapDirectory(path, lockFactory);
  } else if (Constants.WINDOWS) {
    return new SimpleFSDirectory(path, lockFactory);
  } else {
    return new NIOFSDirectory(path, lockFactory);
  }
}

如果你想確保獲得理想的選擇而不是那個,我只能推薦嘗試它們和分析,看看哪個提供了最佳性能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM