图数据库JanusGraph介绍及使用(二):架构

图数据库JanusGraph介绍及使用(二):架构html

做者:家辉,日期:2018-07-03 CSDN博客: http://blog.csdn.net/gobitangit

 

说明:这是图数据库JanusGraph系列的第二篇,后面会陆续介绍。github

图数据库JanusGraph介绍及使用(一):简介 http://www.noobyard.com/article/p-kelgfolt-kv.html数据库

图数据库JanusGraph介绍及使用(二):架构 http://www.noobyard.com/article/p-zinizgcl-kw.html后端

图数据库JanusGraph介绍及使用(三):安装与初步使用:http://www.noobyard.com/article/p-rmoygith-pe.html缓存

...待写服务器

2. JanusGraph架构架构

JanusGraph是一个图数据库引擎。JanusGraph自己专一在图数据的序列化、丰富图数据建模和高效查询的执行。此外,JanusGraph使用Hadoop来作图分析和批量图数据处理。JanusGraph为数据的持久化、数据索引和客户端访问实现了健壮的,模块化的接口。JanusGraph的模块化架构使得它能够普遍地与各种存储、索引和客户端技术交互操做。它也简化了JanusGraph扩展支持新系统的过程。模块化

JanusGraph支持多个存储和索引适配器,目前它支持以下适配器,但JanusGraph模块化的架构使得它也容易支持其余第三方适配器。oop

  • 数据存储
    • Apache Cassandra
    • Apache HBase
    • Oracle BerkeleyDB Java Edition
  • 索引
    • Elasticsearch
    • Apache Solr
    • Apache Lucene

通常来讲,应用程序能够经过以下两种方式与JanusGraph交互:

  • 嵌入式JanusGraph:它与执行Gremlin查询语言的应用程序运行在同一个JVM中。查询执行,JanusGraph图缓存和事务处理都发生在同一个JVM中,但后端的数据存储能够是本地也能够在远程。
  • JanusGraph服务器:经过提交Gremlin语言到JanusGraph服务器来交互。

 

下面是JanusGraph的架构图

 

对图数据库和图计算感兴趣的朋友,欢迎加入"图数据库与图计算"QQ群:463749267,这里有不少志同道合的朋友跟你一块儿讨论Neo4j,JanusGraph,GraphX,Tinkerpop等等。

 

参考资料:

[1] http://janusgraph.org/ JanusGraph官方网址

[2] https://github.com/JanusGraph/janusgraph JanusGraph的github源码网址

[3] https://docs.janusgraph.org/latest/index.html JanusGraph的官方文档