Solr的 directoryFactory總共有以下幾種選擇索引存儲方案:
1、solr.StandardDirectoryFactory,這是一個基於文件系統存儲目錄的工廠,它會試圖選擇最好的實現基於你當前的操作系統和Java虛擬機版本。
2、solr.SimpleFSDirectoryFactory,適用於小型應用程序,不支持大數據和多線程。
3、solr.NIOFSDirectoryFactory,適用於多線程環境,但是不適用在windows平臺(很慢),是因爲JVM還存在bug。
4、solr.MMapDirectoryFactory,這個是solr3.1到4.0版本在linux64位系統下默認的實現。它是通過使用虛擬內存和內核特性調用mmap去訪問存儲在磁盤中的索引文件。它允許lucene或solr直接訪問I/O緩存。如果不需要近實時搜索功能,使用此工廠是個不錯的方案。
5、solr.NRTCachingDirectoryFactory,此工廠設計目的是存儲部分索引在內存中,從而加快了近實時搜索的速度。
6、solr.RAMDirectoryFactory,這是一個內存存儲方案,不能持久化存儲,在系統重啓或服務器crash時數據會丟失。且不支持索引複製。