2016-03-21 30 views
2

在Sesame NativeRDF上執行SPARQL更新時,臨時數據寫入/ tmp。 在我們的例子中,這可能很大,因此超出了/ tmp的可用空間。 這個目錄在哪裏設置,以便我們可以(重新)將它配置到另一個位置?Sesame NativeRDF寫入/ tmp

回答

3

NativeStore在內部使用MemoryOverflowModel s,它在計算可用RAM數量不足以繼續將所有內容保留在RAM中時將其數據同步到磁盤(在臨時目錄中)。這樣創建的臨時文件僅在MemoryOverflowModel對象的生命週期中存在(最多是事務的持續時間)。

MemoryOverflowModel使用系統屬性java.io.tmpdir定義的操作系統的默認配置臨時目錄。因此,如果您希望將其配置爲使用其他目錄,請確保將此屬性設置爲不同的值。最簡單的方法是在調用JRE時覆蓋(java -Djava.io.tmpdir=/some/other/dir ...)。

將JRE配置爲可用更多堆空間也是值得的,因此即使在大型更新時也不太可能啓用磁盤同步。

相關問題