作者:Amy爱爸爸爱妈妈 | 来源:互联网 | 2023-06-05 12:58
JanusGraph旨在提供不止一台机器的图数据的存储和计算能力。实时的图数据遍历和分析查询是JaunsGraph的基本特性。本节将讲解JanusGraph的特性和所支持的底层持久
JanusGraph 旨在提供不止一台机器的图数据的存储和计算能力。实时的图数据遍历和分析查询是JaunsGraph的基本特性。本节将讲解JanusGraph的特性和所支持的底层持久性解决方案。
JanusGraph 基本特性
支持海量的图数据。 JanusGraph所支持的图的大小取决于集群中机器的数量。 支持大并发下图的事务和操作处理。 JanusGraph的事务处理能力与集群中的机器数量成正比,并且能够毫秒级的响应在海量图数据上的复杂的遍历查询操作。 通过Hadoop框架支持全量图分析和批量图处理。 支持对大图的顶点和边进行地理位置,数值范围和全文的检索。 原生支持Apache TinkerPop图数据模型。 原生支持图形遍历语言Gremlin。 易于使用,通过Gremlin Server实现与编程语言无关的连接。 根据不同图数量级的配置来调整性能。 以节点为中心的索引提供节点级别的查询,来解决超级节点问题。 提供优化的磁盘存储方式,来提高磁盘的存储效率和访问速度。 源代码遵循Apache 2 license的开源许可。 JanusGraph基于Apache Cassandra的优势
持续可用,没有单点故障。 没有主从架构下的图读写瓶颈。 弹性扩展,支持增加和减少机器。 使用缓存来确保数据持续可用。 可以通过增加集群中的机器来扩大缓存。 基于Apache Hadoop。 源代码遵循Apache 2 license的开源许可。 JaunsGraph基于Hbase的优势
基于Apache Hadoop的生态系统。 支持强一致性。 支持更多机器的线性扩展。 读写严格一致。 基于Hbase tables便于Hadoop MapReduce计算。 支持通过JMX查看性能指标。 源代码遵循Apache 2 license的开源许可。 JanusGraph和CAP理论
Despite your best efforts, your system will experience enough faults that it will have to make a choice between reducing yield (i.e., stop answering requests) and reducing harvest (i.e., giving answers based on incomplete data). This decision should be based on business requirements.
– Coda Hale
当我们使用数据库时,需要充分考虑CAP理论(C =一致性,A =可用性,P =可分区性)。 JanusGraph支持了3种后端存储:Apache Cassandra,Apache HBase和Oracle Berkeley DB Java Edition。 注意,BerkeleyDB JE是一个非分布式数据库,通常仅用来测试和学习JanusGraph。
HBase以可用性为代价优先考虑强一致性。 Cassandra以一致性为代价优先考虑可用性。
扫码关注微信公众号,更好的交流