背景
对janusgraph的各个方面进行调研,包括性能测试,当然首先得把环境搭建起来。然后将数据录入进去,但当数据录入完后,在进行查询时报错了。网上的资料很少,对于这个JanusGraph的研究,其实加了一个社群的人并不少,只是对于这个项技术的调研分享个人觉得大家都太过封闭了,所以还是靠自己吧,有了一些研究成果,在接下来的一段时间里会慢慢公布。
不得不吐槽一下,网上大部分的资料都是互相抄的,而且版本比较低。都是好几年前的东西了。
好了,回归到话题。
解决办法
尝试一
因为对于JanusGraph在过陌生,对于报错,是相当的惧。然后上Google找资料,说是把${JanusGraphPath}/conf/gremlin-server/gremlin-server.yaml
配置文件中的org.apache.tinkerpop.gremlin.jsr223.ScriptFileGremlinPlugin: {files: [scripts/empty-sample.groovy]}
配置删除,但会启动失败。
会报如下错:javax.script.ScriptException: javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: graph for class: Script2
尝试二
再资料无果,突然想到,既然java客户端访问会报错,通过gremlin-console
再访问gremlin-server
应该也会报错。尝试了两种连接gremlin-server
的方法,发现如下这种才不会报错,另一种会。
graph = JanusGraphFactory.open('conf/janusgraph-hbase-es.properties')
于是再次仔细检查 了conf/gremlin-server/gremlin-server.yaml
配置文件,发现配置错了。
graphs: {
graph: conf/gremlin-server/janusgraph-hbase-es.properties
}
该目录下janusgraph-hbase-es.properties
文件是不存在的,也就是路径错了。
最后修改如下:
graphs: {
graph: conf/janusgraph-hbase-es.properties
}
总结
后来经过排查时,对于上述问题,其实服务端的日志会有更详细的原因说明,所以看系统日志或许比查资料更靠谱。如下: