图数据库JanusGraph与neo4j对比

图数据库

什么是图?

​ 图由两个元素组成:节点、关系

​ 每一个节点代表一个实体,每一个关系代表两个节点的关联方式

什么是图数据库?

​ 图形数据库是NoSQL数据库的一种类型,它应用图形理论存储实体之间的关系信息。图形数据库是一种非关系型数据库,它应用图形理论存储实体之间的关系信息。最常见例子就是社会网络中人与人之间的关系。关系型数据库用于存储“关系型”数据的效果并不好,其查询复杂、缓慢、超出预期,而图形数据库的独特设计恰恰弥补了这个缺陷。

何时需要使用图数据库

图数据库常用领域

  • 社交网络
    Facebook, Twitter,Linkedin用它来管理社交关系,实现好友推荐
  • 推荐和个性化
    eBay,沃尔玛使用它实现商品实时推荐,给买家更好的购物体验
  • 欺诈识别
    例如银行欺诈,信用卡欺诈,电子商务欺诈,保险欺诈等
  • 金融领域
    摩根大通,花旗和瑞银等银行在用图数据库做风控处理
  • 汽车制造领域
    沃尔沃,戴姆勒和丰田等顶级汽车制造商依靠图数据库推动创新制造解决方案
  • 电信领域
    Verizon, Orange和AT&T 等电信公司依靠图数据库来管理网络

怎么确定需要使用图数据库

可以从一下几点进行考虑

  1. 多对多关系

  2. 高价值关系:

    ​ 元素之间的关系和元素本身一样重要,甚至比元素本身还要重要

  3. 大规模低延迟:

    ​ 图数据库可以比其他类型的数据库更快地处理大型数据集所表示的关系,尤其是存在在复杂的关系连接

图数据库的种类

数据库评分排行网站DB-Engines的评分截图图下:

在这里插入图片描述

可以看到多模型的数据库有很多种,单一图模型的数据库第一位Neo4j,第二位JanusGraph

Neo4J和JanusGraph比较

特性\数据库名称Neo4jJanusGraph
是否开源社区版开源,企业版收费完全开源
第一版发行时间2007年2016年12月【基于TitanDB[2012]】
技术特点一站式服务、工具齐全需要开发者自行组合,因此技术门坎高
查询语言CypherGremlin
开发语言JavaJava
集群企业版支持,社区版不支持支持
量级轻量级重量级
额外组件依赖官方提供组件,可以与ES、MongoDB、Cassandra等NoSqlDb进行交互数据存储服务可以选用Cassandra、HBase或Berkeley DB服务。
数据索引可以选用Es、Solr或Lucene服务。

JanusGraph大型用户

在这里插入图片描述

JanusGraph功能【官网介绍】

在这里插入图片描述

Neo4j的企业与社区版本对比

特性企业版社区版
数据库集群支持无支持
数据库热备份支持手工备份,运行时需要停止服务
在线存储空间再使用回收并再使用数据删除释放的空间无支持
LDAP/AD继承与企业级用户身份认证和访问控制系统集成无支持
访问控制为数据库管理员提供指定的用户角色功能无支持
数据库监控提供监控数据库运行状况的整套指标无支持
JMX日志和监控包含GraphiteJMX客户端无支持
更全面的日志包括http,刚才,security日志无支持
节点、关系、属性限制无限制节点344亿,关系344亿
节点键使用一个或者多个属性来表示唯一的节点(类似主键)无支持
运营管理工具管理员命令行界面无支持
写入锁、执行过程优化、硬件支持支持超过4核心最多4核心
  • 9
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
Graph Algorithms: Practical Examples in Apache Spark and Neo4j By 作者: Mark Needham – Amy E. Hodler ISBN-10 书号: 1492047686 ISBN-13 书号: 9781492047681 Edition 版本: 1 出版日期: 2019-01-04 pages 页数: (217) Discover how graph algorithms can help you leverage the relationships within your data to develop more intelligent solutions and enhance your machine learning models. You’ll learn how graph analytics are uniquely suited to unfold complex structures and reveal difficult-to-find patterns lurking in your data. Whether you are trying to build dynamic network models or forecast real-world behavior, this book illustrates how graph algorithms deliver value—from finding vulnerabilities and bottlenecks to detecting communities and improving machine learning predictions. This practical book walks you through hands-on examples of how to use graph algorithms in Apache Spark and Neo4j—two of the most common choices for graph analytics. Also included: sample code and tips for over 20 practical graph algorithms that cover optimal pathfinding, importance through centrality, and community detection. Learn how graph analytics vary from conventional statistical analysis Understand how classic graph algorithms work, and how they are applied Get guidance on which algorithms to use for different types of questions Explore algorithm examples with working code and sample datasets from Spark and Neo4j See how connected feature extraction can increase machine learning accuracy and precision Walk through creating an ML workflow for link prediction combining Neo4j and Spark

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

天心有情

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

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

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

打赏作者

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

抵扣说明:

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

余额充值