图数据库JanusGraph实战[2]: JanusGraph架构

图数据库JanusGraph实战[2]: JanusGraph架构

作者:胡佳辉  CSDN博客:https://blog.csdn.net/gobitan

 

图数据库JanusGraph实战是一个系列文章,将全面介绍JanusGraph的各个方面。本文是该系列的第二篇,主要介绍JanusGraph的架构。

JanusGraph是一个图数据库引擎。JanusGraph本身专注在图数据的序列化、丰富图数据建模和高效查询的执行。此外,JanusGraph使用Hadoop/Spark等来做图分析和批量图数据处理。

JanusGraph为数据的持久化、数据索引和客户端访问实现了健壮的,模块化的接口。JanusGraph的模块化架构使得它可以广泛地与各类存储、索引和客户端技术交互操作。它也简化了JanusGraph扩展支持新系统的过程。

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

数据存储

  • Apache Cassandra

  • Apache HBase

  • Oracle BerkeleyDB Java Edition

索引

  • Elasticsearch

  • Apache Solr

  • Apache Lucene

一般来说,应用程序可以通过如下两种方式与JanusGraph交互:

  • 嵌入式JanusGraph:它与执行Gremlin查询语言的应用程序运行在同一个JVM中。查询执行,JanusGraph图缓存和事务处理都发生在同一个JVM中,但后端的数据存储可以是本地也可以在远程。

  • JanusGraph服务器:通过提交Gremlin语言到JanusGraph服务器来交互。

JanusGraph的架构图如下所示:

JanusGraph架构图

JanusGraph主要包含四个部分:

  • 后端存储:负责JanusGraph图数据的存储

  • 外部索引:负责JanusGraph的外部索引,是可选的

  • OLTP:负责图数据库相关接口及API操作(含Gremlin)

  • OLAP:负责图计算相关接口及与其他计算框架的集成

从上面的图可以看出,JanusGraph的架构非常灵活,对于各种第三方组件支持自由组合,可根据自己当前所在的业务需要和技术平台来选择适合自己的技术架构。

 

参考资料:

[1] http://janusgraph.org/

本文原发于 "图数据库与图计算"公众号,欢迎关注!也可以加入"图数据库与图计算"QQ群(463749267)  

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gobitan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值