
点击上方「蓝字」关注我们

前言
图数据库应运而生。
社交领域 :Facebook, Twitter,Linkedin用它来管理社交关系,实现好友推荐 零售领域 :eBay,沃尔玛使用它实现商品实时推荐,给买家更好的购物体验 金融领域 :摩根大通,花旗和瑞银等银行在用图数据库做风控处理 汽车制造领域 :沃尔沃,戴姆勒和丰田等顶级汽车制造商依靠图数据库推动创新制造解决方案 电信领域 :Verizon, Orange和AT&T 等电信公司依靠图数据库来管理网络,控制访问并支持客户360 酒店领域 :万豪和雅高酒店等顶级酒店公司依使用图数据库来管理复杂且快速变化的库存
1. Why Graph DB?
图的概念。
1.1 什么是图?
节点和
关系。
从道路系统到设备网络,到人口的病史或由关系定义的任何其他事物。
1.2 什么是图数据库?
图数据库(Graph database)并非指存储图片的数据库,而是以
图这种数据结构存储和查询数据。
图形数据库是一种在线数据库管理系统,具有处理图形数据模型的创建,读取,更新和删除(CRUD)操作。
关系在图数据库中占首要地位。这意味着应用程序不必使用外键或带外处理(如MapReduce)来推断数据连接。
1.3 两个重要属性
Neo4J就是属于原生图数据库,它使用的后端存储是专门为Neo4J这种图数据库定制和优化的,理论上说能更有利于发挥图数据库的性能。
JanusGraph不是原生图数据库,而将数据存储在其他系统上,比如Hbase。
① 图存储
原生图存储,这类存储是经过优化的,并且是专门为了存储和管理图而设计的。并不是所有图数据库都是使用原生图存储,也有一些图数据库将图数据序列化,然后保存到关系型数据库或者面向对象数据库,或其他通用数据存储中。
② 图处理引擎
无索引邻接)是处理图数据的最有效方法,因为连接的节点在数据库中物理地 指向
彼此。非本机图处理使用其他方法来处理CRUD操作。
2. 对比
2.1 与NoSQL数据库对比
键值(key/value)数据库 列存储数据库 文档型数据库 图数据库


2.2 与关系型数据库对比
关系型数据库实际上是不擅长处理关系的。很多场景下,你的业务需求完全超出了当前的数据库架构。
举个栗子:假设某关系型数据库中有这么几张用户、订单、商品表:

当我们要查询:“用户购买了那些商品?” 或者 “该商品有哪些客户购买过?” 需要开发人员JOIN几张表,效率非常低下。
而“购买该产品的客户还购买了哪些商品?”类似的查询几乎不可能实现。
关系查询性能对比
在数据关系中心,图形数据库在查询速度方面非常高效,即使对于深度和复杂的查询也是如此。在《Neo4j in Action》这本书中,作者在关系型数据库
和图数据库(Neo4j)之间进行了实验。

他们的实验试图在一个社交网络里找到最大深度为5的朋友的朋友。他们的数据集包括100万人,每人约有50个朋友。实验结果如下:

3. Neo4J 和 JanuasGraph
根据DB-Engines最新发布的图数据库排名,Neo4J仍然大幅领先排在第一位:

Neo4J

JanusGraph

。JanusGraph提供Apache2.0软件许可证。该项目由IBM、Google、Hortonworks支持。JanusGraph是由TitanDB
图数据库修改而来,TitanDB从2012年开始开发。目前最新版本为0.3.1。
DB)。JanusGraph的可扩展性取决于与JanusGraph一起使用的基础技术。例如,通过使用Apache
Cassandra作为存储后端,可以将JanusGraph简单地扩展到多个数据中心。
Hadoop)集成,支持全局图数据的分析、报告和ETL。
3.1 标记属性图模型
(1)节点
节点是主要的数据元素 节点通过 关系 连接到其他节点 节点可以具有一个或多个 属性 (即,存储为键/值对的属性) 节点有一个或多个 标签 ,用于描述其在图表中的作用 示例:人员节点与Car节点
(2)关系
关系连接两个节点 关系是方向性的 节点 可以有多个甚至递归的关系 关系可以有一个或多个属性(即存储为键/值对的属性)
(3)属性
属性是命名值,其中名称(或键)是字符串 属性可以被索引和约束 可以从多个属性创建复合索引
(4)标签
标签用于将 节点 分组 一个节点可以具有多个标签 对标签进行索引以加速在图中查找节点 本机标签索引针对速度进行了优化
4. Cypher图查询语言

查询语句如下:
MATCH (person:Person)-[:KNOWS]-(friend:Person)-[:KNOWS]-(foaf:Person)WHEREperson.name = "Joe"AND NOT (person)-[:KNOWS]-(foaf)RETURNfoaf
Joe认识Sally,Sally认识Anna。Bob被排除在结果之外,因为除了通过Sally成为二级朋友之外,他还是一级朋友。
5. 小结
图数据库应对的是当今一个宏观的商业世界的大趋势:凭借高度关联、复杂的动态数据,获得洞察力和竞争优势。国内越来越多的公司开始进入图数据库领域,研发自己的图数据库系统。对于任何达到一定规模或价值的数据,图数据库都是呈现和查询这些关系数据的最好方式。而理解和分析这些图的能力将成为企业未来最核心的竞争力。



文章转载自侠梦的开发笔记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




