HBase作为JanusGraph图数据库存储

2018-11-17  本文已影响0人  娃娃学软件

目的

JanusGraph作为一个分布式的图数据库,支持很多的数据库作为它的图数据存储介质。这里将介绍运用HBase作为JanusGraph的存储数据库。

JanusGraph & HBase

优点

配置

在配置文件conf/janusgraph-hbase-solr.properties中添加HBase的访问,配置参数如下:

storage.backend=hbase //使用HBase作为存储后端
storage.hostname=zookeeper-host1,zookeeper-host2,zookeeper-host3 //HBase的Zookeeper
storage.hbase.table=janusgraph//HBase存储JanusGraph元数据的表名
storage.hbase.ext.zookeeper.znode.parent=/hbase //HBase使用的Znode
storage.hbase.ext.hbase.zookeeper.property.clientPort=2181 //端口

HBase的查询是基于Rowkey,所以在条件查询这块是弱项,一旦Rowkey确定如果有新的查询就比较难。所以为了解决这个问题,JanusGraph引入了索引后端,下面我们介绍下如何配置Solr作为JanusGraph的索引后端。配置文件conf/janusgraph-hbase-solr.properties配置参数如下:

index.search.backend=solr //使用solr作为索引后端
index.search.solr.mode=cloud //solr使用集群模式
index.search.solr.zookeeper-url=zookeeper-host1:2181/solr,zookeeper-
host2:2181/solr,zookeeper-host3:2181/solr //HBase使用的Zookeeper
index.search.solr.configset=janusgraph //Solr使用HBase的元数据表名

工作原理

JanusGraph源自Apache TinkerPop,支持Gremlin图遍历语言,例如下面的这个Gremlin语言:

/**
 *查找Alice朋友的朋友名称列表
 */
g.V().has("name", "Alice").out("knows").out("knows").values("name")
上一篇下一篇

猜你喜欢

热点阅读