2014-03-03 92 views
2

我正在嘗試爲Freebase創建本地SPARQL端點以運行一些本地實驗。在使用Virtuoso 7時,我經常看到服務器被OOM殺手殺死。我已按照here提及的所有步驟進行操作。我還對RDF Performance Tuning中提到的virtuoso.ini文件進行了必要的更改。Virtuoso 7在批量加載時崩潰

我的系統配置是:

  • 8 CPU 2.9 GHz的
  • 16 GB RAM

我有足夠的硬盤了。

關於數據轉儲,我已經將freebase數據轉儲(23GB gzip,約250 GB未壓縮)分成10個更小的gzip文件,每個文件包含200,000,000個三元組。

以下是我對virtuoso.ini

NumberOfBuffers = 1360000 
MaxDirtyBuffers = 1000000 

MaxCheckpointRemap = 340000 # (1/4th of NumberOfBuffers) 

取得隨着這個我已經設置vm.swapiness = 102提到的更改。

我錯過了一些明顯的東西嗎?

P.S .: 我也嘗試過virtuoso-opensource-6.1。但它似乎太慢了。

我有一個有趣的觀察是在批量加載過程中,virtuoso-6.1內存消耗增長太慢,但這可能是因爲一般索引本身太慢了。

我的另一個觀察是開始時的virtuoso-6.1佔用幾乎可以忽略的內存(500MB的順序),而virtuoso-7從大約6500MB開始並快速增長。

在這方面的任何幫助將不勝感激。

+0

準確版本是很重要的 - 通常是最好的'大師-T輸出 - ?您當地的二進制文件名'調整。您是否按照建議使用[內置大容量加載功能](http://virtuoso.openlinksw.com/dataspace/doc/dav/wiki/Main/VirtBulkRDFLoader)?內存總容量爲16GB,你可能擁有10-14 GB的可用內存 - 這應該是[通知你的優化設置](http://virtuoso.openlinksw.com/dataspace/doc/dav/wiki/Main/VirtRDFPerformanceTuning #怎麼%20to%20determine%20available%20Memory)。 – TallTed

+0

請注意[Virtuoso](http://virtuoso.openlinksw。com /) - 特定問題經常通過如[Virtuoso用戶郵件列表](https://lists.sourceforge.net/lists/listinfo/virtuoso-users/),[公共支持論壇] (http://boards.openlinksw.com/support/index.php)或[機密支持案例](http://support.openlinksw.com/support/online-support.vsp)。 (ObDisclaimer:我爲Virtuoso的製作人[OpenLink Software](http://www.openlinksw.com/)工作。) – TallTed

回答

1

您使用的緩衝區數量有點太高。不要忘記,一些內存也被OS和其他進程佔用。

你使用哪個確切版本? (開發還是穩定分支?)

您是否使用了磁盤分條?

我也將freebase加載到Virtuoso 7,但我使用的是較小的文件。大約260個壓縮文件,每個10mil三個=大約100M。每次文件加載後都會執行提交。

也許會更容易讓你使用炫技images with Virtuoso preloaded by Freebase