2012-10-08 81 views
1

向Lucene.Net數據庫添加多條記錄時,數據文件的大小會緩慢增加。這會產生不必要的副作用,在具有許多Lucene數據庫的系統上導致大量磁盤碎片並頻繁更改它們。爲lucene.net預分配驅動器空間?

我的問題是:有沒有辦法爲Lucene.Net DB預先分配硬盤空間來減少碎片?

如果很重要,我使用C#進行編碼。

回答

0

您可以構建一個自定義目錄實現,將數據存儲在更大的預分配文件中。

已經有一個名爲big-dir的項目爲Lucene這個java版本做了這個工作,您可以將它移植到C#中。根據他們的頁面,它處於alpha階段的早期階段,但是他們在文件容器中創建虛擬文件系統的想法似乎對您而言是一個可行的解決方案。