f88娱2:你知道这六个图形数据库的应用场景吗?


随着现代信息化产业快速发展,社交、电商、金融、物联网等行业相互交融,传统数据库难以处理这张庞大复杂的关系网。数易轩致力于图数据库处理解决方案服务,使海量复杂数据得以运算。图数据库应运而生。世界上很多著名的公司都在使用图数据库。比如:· 社交领域 :Facebook, Twitter,Linkedin..

凭证数据库引擎最新发布的图形数据库排名第二,仍然是第一名Neo4J:

属性可以被索引和约束

社交领域:脸谱网、推特和领英用它来管理社交关系和获得最好的朋友推荐

零售领域:易趣沃尔玛用它来实现向买家实时推荐产品,以获得更好的购物体验

摩根大通、花旗集团和瑞银等金融领域:银行正在利用地图数据库进行风险控制处罚

沃尔沃、戴姆勒和丰田等汽车制造领域:顶级汽车制造商依靠地图数据库来推广创新的制造解决方案

Verizon、orange和ATT等电信领域:电信公司依靠图形数据库来管理网络控制、满足和支持客户360

根据使用地图数据库,万豪和雅高酒店等旅店领域:顶级酒店公司管理着巨大且快速变化的库存

NoSQL数据库大致可分为四类:

1. Why Graph DB?JanusGraph支持多种存储后端(包括Apache Cassandra、Apache HBase、Bigtable、Berkeley DB)。JanusGraph的可扩展性取决于JanusGraph使用的基础技术。例如,通过使用Apache Cassandra作为存储后端,JanusGraph可以简单地扩展到多个数据中心。

1.1 什么是图?

图由两个元素组成:节点和关系。

图形数据库

一些图形数据库使用本地图形存储

1.2 什么是图数据库?

学过数据结构这类课程的学生,脑子里应该或多或少都有一个图形化的视图。

图形数据库是一种在线数据库治理系统,具有图形数据模型的建立、读取、更新和删除(CRUD)操作,并带有处理惩罚。

列存储数据库

本地标签索引针对速度进行了优化

例如,我们想找到乔的所有第二好的朋友:

1.3 两个重要属性

举个栗子:假设一个关系数据库中有这么多用户、订单、商品表:

本机图处理惩罚(也称为无索引邻接)是处理惩罚图数据的最有效方法,因为相邻节点在数据库中是物理指向的

Secondary是一个用Java实现的开源图形数据库。它从2003年开始开发,直到2007年第一版正式出版,并在GitHub上托管。

既然图形数据库被广泛使用,越来越多的企业和开发人员开始使用它,那么它有什么值得注意的呢?让我们揭开它的神秘。

图存储

Cypher是Secondary的图形查询语言,允许用户在图形数据库中存储和检索数据。

虽然JanusGraph不是本机图形数据库,但在其他系统上存储数据就像Hbase一样。

图处置惩罚引擎

与其他数据库的差异关系在图形数据库中占据第一位。这意味着应用法语不必使用外键或带外处理惩罚(如MapReduce)来推断数据的连续性。

一个关系可以有一个或多个属性(即存储为键/值对的属性)

2. 对比2.1 与NoSQL数据库对比

索引标签可以加快在图中查找节点的速度

属性是命名值,其中名称(或键)是字符串

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

当我们想查询:“用户购买了什么商品?”或者“有哪些客户购买过这款产品?”要求开发人员加入几个表是低效的。

与关系数据库或其他NoSQL数据库相比,图形数据库的数据模型更加简单和具体。

一个节点可以有多个标签

2.2 与关系型数据库对比

图形数据库是为事务处理(OLTP)系统而构建的,设计时考虑了事务完整性和操作可用性。

世界上许多著名的公司都在使用图形数据库。比如:

该关系邻接两个节点

在数据关系中心,图形数据库的查询速度非常高效,即使是深度和巨大的查询。在《Neo4j in Action》中,作者在一个关系数据库中

关系查询性能对比

事实上,关系数据库不擅长优势和原因关系。在许多情况下,您的业务需求完全超出了当前的数据库体系结构。

关键/价值数据库

JanusGraph通过与Apache Spark Apache Giraphachache Hadoop集成,支持全局图形数据的分析、呈现和ETL。

例如:人员节点和车辆节点

可以看出,对于图形数据库,数据量越大,关联查询越大,有利于体现其优势。从4/5深度的查询效果可以看出,图形数据库返回了整个社交网络一半以上的人。

3. Neo4J 和 JanuasGraph深度为2(即朋友的朋友)时,两个数据库的性能差异不是很显著;当深度为3(即朋友的朋友)时,关系数据库的响应时间已经变得无法接受30s当深度达到4时,关系数据库需要将近半个小时才能恢复效果,以至于无法应用到在线系统;当深度达到5时,关系数据库无法再完成查询。对于从3到5的图形数据库的第二深度,响应时间在3秒内。

Neo4J

Neo4J

基于文档的数据库

并在Neo4j数据库和图形数据库(二次)之间进行了实验。

JanusGraph

JanusGraph

图形数据库不是指存储图片的数据库,而是用图形的数据结构来存储和查询数据。

辅助支持ACID群集、备份和故障转移。Neo4J二次最新版本是3.5,分为社区版和企业版。社区版仅支持独立部署,效力有限。企业版支持主从复制和读写分散,包括可视化治理工具。

乔认识莎莉,莎莉也认识安娜。鲍勃没有受到影响,因为除了通过莎莉成为二等朋友之外,他还是一等朋友。

随着现代信息产业的快速发展,社会、电子商务、金融、物联网等行业相互融合。传统数据库很难处理和惩罚这个庞大的网络。数字奕譞致力于图形数据库处理惩罚的解决方案服务,能够计算海量数据。图形数据库应运而生。

3.1 标志属性图模型

标记属性图模型

(1)节点

节点是主要的数据元素

节点通过关系与其他节点相邻

一个节点可以有一个或多个属性(即存储为键/值对的属性)

节点有一个或多个标签形态及其在图中的作用

从网关系统到设备网络,再到人口病史或其他任何由关系定义的东西。

(2)关系

JanusGraph是Linux基金会下的开源扩散图数据库。JanusGraph提供Apache2.0软件许可证。这个项目得到了IBM、Google和Hortonworks的支持。JanusGraph是从TitanDB图形数据库中修改的。TitanDB从2012年开始发展。现在最新版本是0.3.1。

关系有偏差

节点可以有多个甚至递归关系

以及“购买产品的客户购买了什么商品?”类似的查询几乎不可能实现。

(3)属性

JanusGraph支持地理、数字比例和通过弹性搜索工具进行全文搜索。

二级属于原生图形数据库,其后端存储是为二级图形数据库定制和优化的。理论上更有利于图形数据库的性能。

图形数据库处理当今宏观商业世界的总体趋势:利用高度相关和巨大的动态数据获得洞察力和竞争优势。中国越来越多的公司开始进入图形数据库领域,开发自己的图形数据库系统。对于任何具有一定规模或价值的数据库,出现和查询这些关系数据都是最好的方式。理解和分析这些图形的能力将成为未来企业最关注的竞争力。

(4)标签

标签用于对节点进行分组

相互的。非本机图处置惩罚使用其他方法处置惩罚CRUD操作。

凭据存储和处置惩罚模型之间存在一些差异。

您可以从多个属性创建复合索引

4. Cypher图查询语言的每个节点代表一个实体(人、地、物或其他数据),每个关系代表两个节点的关联模式。这个总体结构可以模拟各种场景-

NoSQL数据库

查询语句如下:

匹配(人:人)-[:人知道]-(朋友:人)-[:人知道]-(foaf:人)人在哪里。name=' Joe '而非(person)-[: knows]-(foaf)return并非所有图形数据库都使用本机图形存储,但有些图形数据库序列化图形数据,然后生活在关系数据库、面向工具的数据库或其他通用数据存储中。

5. 小结是这样的: