2017-08-18 7 views
1

janusgraph gremlin-serverとClusterクライアントに問題があります。 クラスタを使用して取得された頂点(gremlin-driver 3.2.3/3.2.5)には、id属性、ラベル、およびプロパティが常に空です。JanusGraphクラスタは常にプロパティなしの頂点を返します(ReferenceVertex)

これは私のクライアントの設定です。

val cluster = Cluster.open("/opt/janusgraph-0.1.1-hadoop2/conf/remote-objects.yaml") 

リモートobjects.yaml

hosts: [localhost] 
    port: 8182 
    serializer: { className: org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistry] }} 

グレムリン・サーバ設定:細かい作業グレムリン・コンソールを使用して

host: localhost 
port: 8182 
scriptEvaluationTimeout: 30000 
channelizer: org.apache.tinkerpop.gremlin.server.channel.WebSocketChannelizer 
graphs: { 
    graph: conf/gremlin-server/graph.properties} 
plugins: 
    - janusgraph.imports 
scriptEngines: { 
    gremlin-groovy: { 
    imports: [java.lang.Math], 
    staticImports: [java.lang.Math.PI], 
    scripts: [scripts/empty-sample.groovy]}} 
serializers: 
    - { className: org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistry] }} 
    - { className: org.apache.tinkerpop.gremlin.driver.ser.GryoLiteMessageSerializerV1d0, config: {ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistry] }} 
    - { className: org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0, config: { serializeResultToString: true }} 
    - { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV1d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistry] }} 
    - { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV2d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistry] }} 
    - { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistry] }} 
processors: 
    - { className: org.apache.tinkerpop.gremlin.server.op.session.SessionOpProcessor, config: { sessionTimeout: 28800000 }} 
    - { className: org.apache.tinkerpop.gremlin.server.op.traversal.TraversalOpProcessor, config: { cacheExpirationTime: 600000, cacheMaxSize: 1000 }} 
metrics: { 
    consoleReporter: {enabled: true, interval: 180000}, 
    csvReporter: {enabled: true, interval: 180000, fileName: /tmp/gremlin-server-metrics.csv}, 
    jmxReporter: {enabled: true}, 
    slf4jReporter: {enabled: true, interval: 180000}, 
    gangliaReporter: {enabled: false, interval: 180000, addressingMode: MULTICAST}, 
    graphiteReporter: {enabled: false, interval: 180000}} 
maxInitialLineLength: 4096 
maxHeaderSize: 8192 
maxChunkSize: 8192 
maxContentLength: 65536 
maxAccumulationBufferComponents: 1024 
resultIterationBatchSize: 64 
writeBufferLowWaterMark: 32768 
writeBufferHighWaterMark: 65536 
ssl: {enabled: false} 

リモートクエリ(remote.yamlおよびリモートobjects.yaml)

クラスタトラバーサルとリモートトラバーサルを使用したクエリは機能しません。

val g = EmptyGraph.instance().traversal().withRemote(DriverRemoteConnection.using(cluster, "g")) 

g.V().toList.foreach(v => println(v, "id", v.id(), "label", v.label(), v.properties("name").toList, v.getClass)) 

出力:

(v[8336],id,8336,label,,List(),class org.apache.tinkerpop.gremlin.structure.util.reference.ReferenceVertex) 
(v[12288],id,12288,label,,List(),class org.apache.tinkerpop.gremlin.structure.util.reference.ReferenceVertex) 
(v[12304],id,12304,label,,List(),class org.apache.tinkerpop.gremlin.structure.util.reference.ReferenceVertex) 
(v[12328],id,12328,label,,List(),class org.apache.tinkerpop.gremlin.structure.util.reference.ReferenceVertex) 
(v[12360],id,12360,label,,List(),class org.apache.tinkerpop.gremlin.structure.util.reference.ReferenceVertex) 

私が間違ってやっていますか?

答えて

2

あなたが試みたようなリモートグラフを使って作業する場合、それらに含まれる最小限の情報を持つReferenceElementsが返されます。残念ながら、現時点でこれに関する文書はあまりありません(私はopened a ticketに対処しています)が、これはmailing list threadを参照することができます。

リモートトラバーサルは正常に動作していますが、要求する内容をより明確にする必要があります。あなたがidlabel、およびすべてのpropertiesをしたい場合たとえば、あなたが使用できます。

g.V().valueMap(true).toList() 
+0

ありがとうございました!できます! –

関連する問題