インデックスをハードディスクに保持する代わりにRAMに保持する方法はありますか?
検索を高速化したいと考えています。
インデックスをハードディスクに保持する代わりにRAMに保持する方法はありますか?
RAMDirectoryクラスの使用
こちらのSampleUsage
LuceneのFAQからも
一般に、インデックス作成のパフォーマンスを向上させるには、ドキュメント数ではなくRAM使用量でフラッシュし、できるだけ大きなRAMバッファを使用することをお勧めします。
編集: RE:RamDirectory、APIが言うように、RamDirectoryはメモリ常駐ディレクトリの実装です。、ディレクトリRAMDirecoryで指定されたRAMにそれらのインデックスのみを保持します
RE:キャッシング 私の知る限り、Luceneはフィルターを使用して検索結果をキャッシュします。plslook@ CachingWrapperFilterおよびQueryWrapperFilter
RAMDirectoryのドキュメントを確認してください。これが基本的な使用例です。これは、インデックスが十分に小さい場合にのみ機能します。
RAMディスクはこれに対する解決策になる可能性があります。mini-HOWTOは、http: //www.vanemery.com/Linux/Ramdisk/ramdisk.htmlで入手できます。RAMディスクをインデックスディレクトリとしてマウントします。これで完了です。