2011-02-07 98 views
13

我想問一個很好的triplestore用於大型數據集,它應該:Triplestore對於大型數據集

  • 很好地擴展(百萬三元)
  • 有一個Java接口
+0

哪個平臺? – 2011-02-07 14:07:26

回答

9

您應該考慮使用OpenLink Virtuoso商店。它可以通過OpenSource許可證獲得,並可擴展到數十億的三倍。您可以通過Sesame和Jena API使用它。

請參閱here關於大型三重商店的概述。 Virtuoso絕對比BigData更容易設置。除此之外,我已經使用了芝麻NativeStore,它不太好。

4Store也是一個不錯的選擇,雖然我還沒有用過它。 Virtuoso超過4Store的一個好處是您可以輕鬆地將標準關係模型與RDF混合使用,因爲Virtuoso處於關係數據庫之下。

6

4store: Scalable RDF storage

報價4store網頁...

4store的主要優勢是其 的性能,可擴展性和穩定性 。除RDF存儲 和SPARQL查詢外,它不提供許多 功能,但如果您的是 尋找可擴展,安全,快速的 和高效的RDF存儲,則4store 應位於您的短名單中。

就我個人而言,我已經測試了具有非常大的數據庫(高達20億個三元組)的4store,結果非常好。 4store是用C編寫的,運行在Linux/Unix 64位平臺上,當前版本1.1.1部分實現了SPARQL 1.1

4store可以部署在商用服務器集羣上,這可能會提高查詢性能,並且斷言吞吐量可能高達100 KTriples /秒。但即使你在一臺服務器上使用它,你也會獲得相當不錯的表現。

在南安普敦大學,我們在研究項目和我們的網站站長團隊中選擇非常大的數據集,請參閱Data Stores for Southampton and ECS Open Data

在這裏,您還可以查看和管理4store Client Libraries所有庫的列表。此外,4store's IRC channel有一個活躍的用戶社區,如果遇到任何問題,它們都會有所幫助。

如果你是Linux/Unix用戶4store絕對是一個不錯的選擇。

5

我也建議4store,但在完全公開的精神,我是首席架構師:)

如果你想利用RDF存儲標準化的優勢,那麼你應該使用Java庫它實現SPARQL,而不是使用本機公開JAVA API的。

否則,由於在它們之間移動,這是典型的SQL遷移地獄,您可能最終會被第一個選擇的商店卡住。

+0

+1絕對選擇一個通用/足夠抽象的API(無論您的目標平臺),以便在/需要時移動到不同的存儲區是相對無痛的 – RobV 2011-02-08 10:27:15

3

我個人對GraphDB很滿意。它在中等硬件(256GB RAM服務器)上運行得非常好,擁有150億個三元組。通過芝麻和jena界面都可以訪問。 (雖然jena beta'ish)。

如果您負擔得起,Oracle 12c實例並不壞。並可能適合現有的Oracle基礎架構(備份等)。

Virtuoso 7.1規模很好,可以處理合理成本的龐大數據量。不幸的是,它的SPARQL標準符合標準

1

@Steve - 不知道如何評論,所以我想我會一次回答2個問題。

JDBC驅動下面SPARQL:

http://code.google.com/p/jdbc4sparql/

支持SPARQL協議和SPARUL(通過SPARQL協議作爲更新,而不是在SPARUL協議)。

@myahya

4Store強烈推薦,所以值得評價爲候選人。

炫技也有本地的JDBC驅動程序,並支持大型數據集(最多12個十億三元)

www.openlinksw.com/wiki/main/Main/

此外,甲骨文有一些,但要準備花大價錢:

http://www.oracle.com/technetwork/database/options/semantic-tech/index.html