2023年10月16日
由中国计算机学会主办的
“CCF Talk”直播间
进行了题目为
术语解读:“图计算”的内涵与应用
主题直播活动
讲座吸引7708人观看
图作为一种灵活表达复杂关联关系的数据结构,目前已广泛地应用于社会治理、医疗健康、电网分析、计算材料、计算育种、EDA等众多领域。广义的图计算包括图数据的建模、存储、查询、管理,以及基于图数据的表示与应用等。近年来,随着人工智能与大模型等技术的发展,图计算的内涵和应用也在不断拓展。直播活动邀请了图计算领域的资深学者,围绕图计算这一概念的内涵和应用以及技术发展趋势进行探讨和交流。
下面向大家介绍北京大学邹磊教授本次报告:图数据库的概念和应用
报告摘要:近来图数据的研究引起了学术界和工业界的广泛关注,因为图可以更加方便的表达数据之间的复杂关联。图数据库在数据的模式定义、查询引擎的设计与优化方面和传统的关系数据库都有本质的区别。另外作为图数据的一个典型应用,知识图谱的数据管理的需求也对图数据库系统提出挑战性的研究问题。本报告将简要介绍图数据库的基本概念和相关应用。
文末附本次报告视频,直播活动的完整录播请关注中国计算机学会。
报告分为四个部分,首先简单介绍图数据库的概念
数据库系统是一种 DBMS(Data Management System)。数据库从本质上描述了实体、实体属性以及实体与实体之间的关系。而图数据库则不使用关系表来表达实体之间的联系,而是通过图的方式来呈现。在图中,每个节点表示一个实体,边表示实体之间的关联,边上的标签表示关系的性质。此外,实体可以具有特定的属性值。例如,我们可以使用图的方法来表示"James Watt"出生于1736年这一关联。
图数据库最早出现在20世纪60年代,最初由IBM设计的IMS系统用于管理阿波罗计划土星号火箭的物资。IMS系统采用了层次数据模型,实际上是通过树形数据结构来表示数据和数据之间的关系。与此同时,通用电气(GE)在1964年设计和实施了IDS系统,这个系统更接近图数据库,采用了网络模型(Network Model)来表示数据和它们之间的关系。IDS系统是数据系统语言会议(Conference on Data Systems Languages, CODASYL)DBTG标准的基础实现版本。这些数据库系统是当时时代的产物,它们为不同类型的数据管理需求提供了不同的数据模型和方法。
这些早期数据库系统为后来的图数据库奠定了基础。现在,图数据库有两个主要派别,属性图和RDF图。属性图使用属性值来表示图上的点和边,而RDF图则受到了三元组数据模型的启发,使用主谓宾形式来表示实体之间的关系。这两种图数据库都有自己的查询语言, 如面向属性图的Cypher,以及面向RDF图的主流语言是SPARQL。
比较一下图数据库和传统关系数据库之间的不同。在关系数据库中,我们通常使用表来表示实体之间的关系,比如学生和教师之间的关系可以通过连接两个表来实现。而在图数据库中,实体之间的关系通常以图的形式存储,以更自然的方式表示实体和它们的关系。这种物化的方法使得图数据库更适合表达实体之间的复杂关系。
在图数据库的发展过程中,有两个主要的派别,属性图和RDF图。属性图更侧重于表示实体的属性和关系,而RDF图更注重使用主谓宾形式来描述实体之间的关系。这两者都有自己的查询语言,但在某些情况下,它们可以表达相同的语义。
接下来第二部分,将介绍图数据库的架构。
与传统数据库类似,图数据库也包括查询层、存储层和分布式系统。在查询层,有些操作是通用的,无论是在结构化查询还是图挖掘中,都可以使用。这些通用操作使得图数据库更具灵活性。
在查询层,我们认为有一些与传统数据库不同的地方。例如,图数据库中的子图模式查询,这是我们认为与传统数据库有所不同的地方。子图模式查询在图数据库中非常重要。
当我们处理图结构数据时,可能会用子图查询的方式。此外,在做图结构查询时,查询语言是一个基本组成部分。有两种主要的查询语言,一种是面向RDF的SPARQL语言,另一种是面向属性图的Cypher语言。这两种语言在这个例子中表示的语义是相同的。
这是一个关于图数据库基准测试的例子,其中提取了一个查询语句。这个查询语句的意思是找到社交网络中的一条消息,查找它的作者以及对该消息的回复。然后,找到这两个消息的原始作者,还要查看他们之间是否存在好友关系。这种查询可以表达出子图模式,所以我们认为优化子图模式查询是图数据库查询引擎的一个关键因素。
在RDF数据模型中,数据接近主谓宾的结构。虽然可以使用关系数据库存储它,但需要将这种结构转换为SQL语言并在关系表中执行操作。2011年,我们提出了一种匹配方法,使用点和边来表示RDF图中的主谓宾关系,并使用SPARQL语言进行查询,解决了子图匹配问题。
与关系型数据库不同,图数据库需要以一种完全不同的方式表示和处理数据,这包括图数据模型的逻辑和物理优化,这方面与关系型数据库有显著不同。
在图数据库的存储层面,面临一系列挑战。图数据库以其随机访问的特性,需要不同于传统数据库的存储方式。
图数据库的存储层面存在多个问题需要解决,包括如何进行图结构与属性存储以及选择合适的物理存储方式。这些问题需要综合考虑,以满足不同系统的需求。
在图数据库的架构中,分布式优化是一个重要的考虑因素。有三大类分布式存储方法。
第一种是底层采用云平台和分布式文件系统。这种方法将存储与查询层分离,具有很强的通用性和容错性,但查询性能较低,因为数据分布和划分较为不透明和难以控制。
第二种是多单机存储,将计算和存储整合在每台机器上。数据可以分布在多台机器上,查询根据数据划分执行并由控制节点合并。这种系统通常性能较高,但用户门槛较高,因为性能依赖于数据划分。这种架构在数据库领域广泛研究和应用。
第三类分布优化方法借鉴了云数据库的概念,将系统分为计算节点和存储节点,每个计算节点可以访问所有存储节点,实现了横向扩展和负载均衡。然而,这种方法在工程实现上有较大的挑战,因为不同存储节点的网络延迟不同。
下面简单介绍一下图数据库的应用
推荐阅读这篇2017年的VLDB论文,这篇论文通过访谈和合作研究,研究了图数据库的应用领域。研究内容包括各大厂家在图数据库使用方面的特点,以及用户普遍关注的问题。
主要谈一下图数据库在知识图谱中的应用。知识图谱本质上是一个用图的方法来表示实体和实体关系的网络,这一点与我们讨论图数据库建模的方法相同。
研究知识图谱的广泛性可见于各个领域的研究者的参与。每位研究者都从独特的角度探索知识图谱,包括知识工程、自然语言处理、机器学习等。这种多元化的研究方式就像盲人摸象,每个人都在努力理解知识图谱的不同方面。
从数据库的角度来看待知识图谱,RDF采用了主谓宾的数据结构如何使用数据库来存储它。如果使用关系数据库,将数据存储为三元组表,将SPARQL查询转化为SQL来执行,但这种方法可能导致自连接操作性能较低。因此,我们考虑是否可以使用图数据库来存储知识图谱,这就是图数据库的研究人员在知识图谱领域可以发挥重要的作用。
讲者个人对未来研究的展望包括以下几个方面。
首先是动态图流系统。随着工业互联网和5G等技术的发展,图数据变得越来越动态,并且变化速度非常快。这种动态图流在工业互联网和高速网络路由等领域具有广泛的应用前景。
第二个是说现在的图数据库跟图计算系统目前来说是分离的,一份数据在不同系统当中有多份,会造成空间消耗及数据的不一致性,未来可不可以有事务处理和分析的联机系统的一体化的图数据系统。
以上是向大家汇报的关于图数据库的我们的一些认知。谢谢大家。
哔哩哔哩,,,
邹磊教授:图数据库的概念和应用-CCF Talk直播间
【讲座】邹磊教授:图数据库的概念和应用-CCF Talk直播间_哔哩哔哩_bilibili