2016-09-20 71 views
1

我試圖讓管道並用以下設置運行:小鬼:Blazegraph遠程

  • Blazegraph 2.1.1(遠程)
  • TinkerPop有關2(bigdata-藍圖2.0.0,BlazeGraph-小鬼1.0.0,bigdata核心2.0.0)
  • 語言:Java的

我已經能夠用於創建和刪除頂點和邊的藍圖API。我希望儘可能地堅持Tinkerpop來進行所有圖表操作。我無法找到以下API:

  1. 通過ThreadedTransactionalGraph進行線程交易。
  2. 遍歷使用GremlinPipeline

我有以下問題:

  1. 是否有當TP3爲Blazegraph的遠程版本將提供一個時間表?
  2. 在近期有沒有支持以下的計劃?

    a。藍圖ThreadedTransactionalGraph

    b。 GremlinPipeline API

  3. 2a和2b有哪些可供選擇的替代方案?


我曾嘗試getFeatures功能的圖表提供和它得到以下列表:

supportsDuplicateEdges: true 
supportsSelfLoops: true 
supportsSerializableObjectProperty: false 
supportsBooleanProperty: true 
supportsDoubleProperty: true 
supportsFloatProperty: true 
supportsIntegerProperty: true 
supportsPrimitiveArrayProperty: true 
supportsUniformListProperty: true 
supportsMixedListProperty: true 
supportsLongProperty: true 
supportsMapProperty: false 
supportsStringProperty: true 
ignoresSuppliedIds: false 
isPersistent: true 
isWrapper: false 
supportsIndices: true 
supportsVertexIndex: false 
supportsEdgeIndex: false 
supportsKeyIndices: true 
supportsVertexKeyIndex: true 
supportsEdgeKeyIndex: true 
supportsEdgeIteration: true 
supportsVertexIteration: true 
supportsEdgeRetrieval: true 
supportsVertexProperties: true 
supportsEdgeProperties: true 
supportsTransactions: false 
supportsThreadedTransactions: false 

我這裏主要關心的是,我不允許有GremlinPipeline工作,而查詢在Blazegraph與遠程。

我有一個現有的API在OrientDB上運行,我想遷移到Blazegraph。爲了使用Blazegraph,我是否必須更改所有讀取的內容(Gremlin查詢),還是有辦法使用Tinkerpop 2以及GremlinPipeline

+1

我還沒有使用Blazegraph,但是這不是你要找的東西嗎? https://github.com/blazegraph/tinkerpop3 –

+1

正如傑森指出的,我認爲你在尋找[gremlin])(https://github.com/blazegraph/tinkerpop3)插件的blazegraph。我已經使用它,我可以確認它支持Threaded Transactions。 –

+0

聽起來像你應該添加,作爲答案@FilipeTeixeira :) –

回答

1

正如傑森指出的關於Tinkerpop 3你應該看看this插件。

但是,在我的評論中,我錯了它支持線程事務。使用TP3的Blazegraph目前不支持ThreadedTranactions,但確實支持ConcurrentAccess以及Tinkerpop Transactions。即使線程必須等待對方完成。

BlazeGraphEmbedded graph = BlazeGraphFactory.open("test.jnl"); 
graph.features(); 

回報:

FEATURES 
GraphFeatures 
-- Computer: false 
-- Persistence: true 
-- ConcurrentAccess: true 
-- Transactions: true 
-- ThreadedTransactions: false 

至於在Blazegraph TP2這種支持或TP3你應該提出的問題與他們的地位。