JanusGraph是一个图形数据库引擎。JanusGraph专注于提供便捷的图序列化,丰富的图数据模型和高效的数据查询。而且,JanusGraph也可以基于Hadoop进行图数据分析和图数据批量处理。 JanusGraph为数据持久化,数据索引和客户端访问提供了强大的模块化接口。 JanusGraph模块化的架构使其能够与各种存储,索引和客户端结合使用;它也简化了JanusGraph的扩展流程。

JanusGraph可以适配多种数据库和索引。JanusGraph默认支持以下的适配,但是JanusGraph的模块化架构使得也支持第三方的适配器。

数据库:

  • Apache Cassandra
  • Apache HBase
  • Oracle Berkeley DB Java版

索引,加快并支持更复杂的查询:

  • Elasticsearch
  • Apache Solr
  • Apache Lucene

从广义上讲,程序可以通过以下两种方式与JanusGraph进行交互:

在同一JVM中,在程序中可以直接通过JanusGraph执行Gremlin查询。在执行查询时,JanusGraph的缓存和事务处理跟应用程序在同一JVM中进行,而数据检索的后端存储可以是本地或者远端。

通过向服务器提交Gremlin查询语句来与本地或者远端的JanusGraph实例进行交互。JanusGraph原生支持Apache TinkerPop的Gremlin Server组件。

下图是JanusGraph的架构图

JanusGraph架构图

欢迎扫码关注公众号,更好的交流

欢迎扫码关注公众号,更好的交流