当前位置: 首页 > 科技观察

为什么我们需要图形数据库?

时间:2023-03-15 01:03:10 科技观察

目前,互联网数据呈指数级增长,但增长速度更快的是数据之间的关系。企业的CIO和CTO不仅要管理大量数据,还要从现有数据中挖掘商业价值。在这种情况下,处理数据之间的关系比处理单个数据更重要。传统的关系数据库在处理复杂的数据关系操作时表现不佳。随着数据量和深度的增加,关系型数据库无法在有效时间内计算出结果。因此,为了更好地利用数据之间的联系,企业需要一种将关系信息存储为实体并灵活扩展数据模型的数据库技术。这种技术就是图数据库(GraphDatabase)。图数据库具有天然的可解释性。图数据库基于图模型,图模型是一种用于存储、操作和访问图数据的技术。即使没有图论专业知识,也能轻松理解图数据库。可以接受比实时查询更复杂的分析需求,挖掘图数据中的潜在价值。从分类上来说,图数据库是NoSQL的一种。图模型是图数据库中的一个重要概念。图模型由两个元素组成:节点和边。每个节点代表一个实体(人、地点、事物或其他数据),每条边代表两个节点之间的连接。这种通用结构可以模拟各种场景,例如社交网络和任何其他事物。例如:下面的图形模型包含3个节点:中国、四川、大熊猫。其中,他们的两个方面是:大熊猫是四川的特色,四川是中国的。图模型的基本要素:节点和边从上面的图模型可以看出,图数据库的目标是基于图模型以直观的方式模拟这些关系。因为它是基于事物之间关系的模型表达,所以图也具有天然的可解释性。图数据库处理关联数据的优势与关系型数据库相比,图数据库在处理关联数据方面具有三个非常突出的技术优势:受限于检索时需要多表之间的连接操作,写数据时也需要考虑外键约束,导致大量的额外开销和严重的性能问题。图模型固有的数据索引结构使其数据查询和分析速度更快。灵活:图数据库具有非常灵活的数据模型。用户可以根据业务的变化随时调整数据模型,如随意增加或删除顶点和边,扩展或缩小图模型。对小型数据库没有很好的支持。敏捷性:图数据库的图模型非常直观,支持测试驱动开发模式。可以在每次构建时进行功能和性能测试,满足当前流行的敏捷开发需求,也有助于提高生产和交付效率。我们可以继续扩展前面介绍的图模型用例来展示图数据库的优势。北京也属于中国,长城在北京,汤姆去过长城,火锅店张师傅出生在四川,汤姆出生在中国喜欢大熊猫,张师傅在北京开店,而汤姆是张师傅的客户。扩展的图模型如果你是业务/产品工作者,你一定希望你的产品或业务扩展到用户的方方面面。如果你是一名开发人员,你一定希望能够简单高效地描述这个复杂的世界。在传统的关系数据库中,我们需要创建多少张表才能进行关联查询?国家、省/市、人、动物、地标、动物与省/市的关系、国家与省/市的关系、人与省/市、人与人的关系……粗略统计至少有十几张表.构建这些表没有错。但如果,现在我们要追问:哪些城市的人最喜欢大熊猫?首先,我们要把动物表、人员表、人们最喜欢的动物表关联起来。将这三张表连起来,我们可以发现汤姆喜欢大熊猫。但是接下来还需要再关联两张表,找出他们在哪个地标工作,再关联两张表,找出这些地标在哪个城市。等等,还没完,还得分组排序。你会发现这个查询太难了!但这恰恰是数据分析师最基本的工作,也是大数据时代海量信息处理的一个缩影。使用图数据库,我们可以很方便地描述和查询上图所示的关系。在处理复杂的数据关系操作时,图数据库的查询效率远高于关系数据库。图数据库应用场景图数据库技术已经应用到现实生活的方方面面,Google、Facebook等科技巨头开始借助图数据库的力量蓬勃发展。根据Gartner在《十大数据分析技术趋势》的预测,从2012年到2022年,全球图处理和图数据库的应用将以每年100%的速度快速增长。如果说知识图谱是图数据库的底层应用场景,它充分利用图模型在存储和查询方面的优势,为多个行业提供知识服务。那么金融风控就是一个具有行业特点的高层应用场景。知识图谱知识图谱作为图数据库的底层应用,服务于多种行业,包括:智能问答、搜索、个性化推荐等。以智能问答为例,产品主要分为两类:聊天机器人和行业智能问答系统。开放域中的知识图谱可以为聊天机器人提供广泛的知识。机器不仅可以与用户聊天,还可以提供日常知识。行业智能问答系统采用行业知识图谱,可以为用户提供有针对性的专业领域知识,目前已在法律、医疗等行业得到应用。在知识图谱的应用中,影响知识图谱质量和实现的主要因素有两个——NLP自然语言处理引擎和算法库。NLP自然语言处理引擎决定了NLP爬虫平台获取数据的质量和数量,而这些作为知识图谱知识原材料的原始数据决定了知识图谱的层次。算法库中的图算法决定了图构建、图存储和图运行的能力。知识资料丰富但图算法落后,仍然无法构建强大的知识图谱。金融反欺诈图数据库利用多维互相关信息深度描述应用和交易行为,有效识别规模大、隐蔽性强的欺诈网络和洗钱网络;结合机器学习、聚类分析、风险传播等相关算法,实时计算用户的风险评分,可在风险行为发生前预先识别,有效帮助金融机构提高效率、降低风险。使用图数据库的金融风控场景很多,比如个人征信、洗钱路径追踪、个人/企业征信等,基于图数据库在金融风控方面的出色表现,很多企业都表示看好这项技术,其中有一些具有前瞻性的企业率先使用了这项技术,并获得了竞争优势。图技术已经发展了很多年,但很多公司仍然没有使用这项技术。阻碍技术进步的原因是什么?首先是数据存储的问题。在反洗钱场景中,需要分析用户借记卡和信用卡的数据存储。.在存储的时候发现,只有10个月的借记卡数据+1个月的信用卡数据就有5TB的规模,这在以往的图数据库中是不支持的。第二点是多步分析问题。在反洗钱应用场景中,需要做3-10步以上的分析。但是目前企业级场景下的图数据库在进行2~3度查询时会出现超时或者内存溢出的问题。这种性能对欺诈检测帮助不大。针对这些问题,图数据库厂商正在积极构建成熟的解决方案来满足这两个需求,市场上也出现了越来越多的高性能图数据库。目前一些企业采用的备选方案是通过图数据库+大数据平台的方式实现大数据量的效果,但由于技术门槛高,这种方案不易掌握。工业领域的图模型具有很强的表达能力,对更新快的事物适应性强。它用于工业领域,以管理快速变化的库存和供应链关系。目前,沃尔沃等汽车制造商依靠图形数据库来优化生产流程和供应链管理。在制造业,供应链管理涉及多人协作和实时库存信息反馈,包括汇总信息和明细数据的查询。查询过程涉及很多实体和复杂的关系。这时候图数据库在面对这种深度关联的场景时,优势就体现出来了,因为只需要通过对边的查询就可以找到关联的数据,而不需要对某个顶点进行全局扫描,图数据库可以做到对传入数据的实时更新和深度数据遍历。图数据库技术架构图数据库的技术架构如下图所示,整体采用分层架构模型,从上到下依次为:接口层、计算层、存储层。图数据库系统架构(1)接口层:接口层通过以下方式对外提供服务:查询语言接口:提供图数据库原有查询语言以外的语言查询,例如Cypher、Gremlin语言等主流图查询界面。API:提供ODBC、JDBC、RPC、RESTful等接口与应用端进行交互。SDK:在Python、Java、C++等编程语言中,通过库函数调用图数据库的接口。可视化组件:以图形界面的形式展示和实现用户交互。(2)计算层:提供运算的处理和计算,包括语法分析、查询引擎、优化器、事务管理、任务调度、图算法实现等。其中,图算法可能由图数据库自身提供,或者它可以提供与图处理引擎连接的接口(3)存储层:图数据库有两种存储方式:本地存储和非本地存储。图存储引擎提供图数据结构、索引逻辑管理。图查询语言的统一标准代表着市场认可度的提高。与关系型数据库不同,图数据库领域目前还没有统一的查询语言,大多数查询语言都与产品密切相关。当企业需要使用新的图数据时,需要重新学习语法,带来不必要的学习成本。是否有统一的查询语言标准也标志着图数据库市场的成熟。2019年9月17日,SQL标准国际委员会投票决定采用GQL作为查询图数据的新标准语言。GQL的第一个可实现版本尚未确定,但很可能在2020年下半年提供GQL图查询语言的完整草案。查询语言统一带来的好处:减少学习企业的成本——前期的学习成果可以积累起来,在以后发挥作用。新的查询语言不仅仅是一种简单的语法,而是一种使用该语言的新思维方式。语言统一后,使用不同的图数据库只会意味着工具不同,但语言基础是一样的。提高技术成熟度——企业不仅担心学习成本,更担心整个技术的成熟度。如果行业有统一的查询语言,即当企业认为这种分析方法稳定成熟时,就会被认可。云端让数据查询和分析变得简单易用。目前,将图数据库部署在云端的厂商并不多。一些图数据库供应商为数据科学家、开发人员、业务分析师、学生和其他爱好者提供云上的图数据库部署。使用。开发者可以通过简单的步骤在短时间内启动基于图形的解决方案配置。大数据时代的业务增长带来了数据量的急剧增加和数据关联的复杂性。与此同时,企业对数据价值的期望也越来越高。根据DBEngines过去七年的数据库流行趋势,图数据库的流行度遥遥领先于其他主流数据库。目前,国内越来越多的厂商进入图数据库领域,开始构建自己的图数据库。这是一项长期持续的工作,需要全面的大数据技术,需要图数据库工程师和业务专家的持续协作。未来,图数据库技术必将成为最热门的技术之一。