《图数据库》——1.2 图领域概览

本文涉及的产品
PolarDB Agent Flow,2核4GB
云数据库 PolarDB MySQL 版,列存表分析加速 8核16GB
PolarSearch,搜索节点 4核8GB
简介:

本节书摘来自异步社区出版社《图数据库》一书中的第1章,第1.2节,作者: 【美】Ian Robinson , Jim Webber , Emil Eifrem,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.2 图领域概览

图数据库
近年来,无数用于管理、处理和分析图的项目和产品纷纷涌入市场。技术选择的陡增使我们难以跟进这些工具并摸清它们之间的区别,即便对我们这些一直活跃在这个领域的人来说也是如此。本节的内容对理解新兴的图领域提供了一个“高空俯览”。

从1万英尺高空往下看,我们可以将图领域划分成以下两部分。

用于联机事务图的持久化技术通常直接实时地从应用程序中访问
这类技术被称为图数据库,正是本书主要讨论的内容。它们和“通常的”关系型数据库世界中的联机事务处理(online transactional processing,OLTP)数据库是一样的。

用于离线图分析的技术通常都是按照一系列步骤执行的
这类技术被称为图计算引擎。它们可以和其他大数据分析技术看做一类,如数据挖掘和联机分析处理(online analytical processing,OLAP)。

图像说明文字我们可以从另一个视角去划分图领域,去观察各种技术使用的图模型。主流的图模型有3种,分别是属性图、资源描述框架(Resource Description Framework,RDF)三元组和超图。我们将会在附录A中对它们进行详细的说明。市场上常见的大多数图数据库使用的都是属性图模型,因此,在本书的剩余部分我们也将使用这一模型。

1.2.1 图数据库

图数据库管理系统(以下将简称图数据库)是一种在线的数据库管理系统,它支持对图数据模型的增、删、改、查(CRUD)方法。图数据库一般用于事务(OLTP)系统中。相应地,它们也对事务性能进行了优化,在设计时通常考虑了事务完整性和操作可用性。

在研究图数据库技术时,有两个特性需要多加考虑。

底层存储
一些图数据库使用原生图存储,这类存储是优化过的,并且是专门为了存储和管理图而设计的。不过并不是所有图数据库使用的都是原生图存储,也有一些图数据库会将图数据序列化,然后保存到关系型数据库或面向对象数据库,或是其他通用数据存储中。

处理引擎
一些定义要求图数据库使用免索引邻接,这意味着,关联节点在数据库中物理意义上“指向”彼此1。如果看得更远一点:站在用户的角度,任何看起来像是图数据库的都可以称为图数据库(比如说,提供了对图数据模型的CRUD操作的数据库)。然而,我们得承认这个事实,免索引邻接带来巨大的性能优势是其他数据库无法比拟的,因此我们使用原生图处理来代表使用免索引邻接的图数据库。

图像说明文字需要注意的是,原生图存储和原生图处理并不一定比其他方式更好或更差—这不过是典型的工程取舍而已。原生图存储的好处是,它的栈是专门为性能和扩展性设计建造的。但相对的,非原生图存储通常建立在非常成熟的非图后端(如MySQL)之上,运维团队对它们的特性烂熟于心。原生图处理(无索引邻接)虽然在遍历查询时性能优势很大,但代价是一些非遍历类的查询会比较困难,而且还要占用巨大的内存。

与那些需要额外增加像外键这样的属性或者使用map-reduce这样的额外处理来推测实体间关联的数据库管理系统不同,联系在图数据模型中是“一等公民”。图数据库通过将节点和联系的简单抽象组装为相互关联的结构,使我们能够建造任意复杂的模型,来形象地映射我们的问题域。比起那些传统的关系型数据库和其他NoSQL存储,我们所得到的模型更简单,也更具表现力。

根据其存储和处理模型不同,图1-3生动形象地展示了现在市场上的一些图数据库。

image

1.2.2 图计算引擎

图计算引擎技术使我们可以在大数据集上使用全局图算法。图计算引擎主要用于识别数据中的集群,或是回答类似于“在一个社交网络中,平均每个人有多少联系?”这样的问题。

因为偏重于全局查询,图计算引擎通常为扫描和批处理大规模信息做过优化,在这个方面,它们和其他批分析技术(如在关系型数据库世界中大家都很熟悉的数据挖掘和OLAP)类似。只有一部分图计算引擎有自己的图存储层,其他的(几乎可以说大部分)则只完全关注于如何处理外部传入的数据和返回结果。

图1-4展示了一个通用的图计算引擎部署架构。该架构包括一个带有OLTP属性的记录系统(SOR)数据库(如MySQL、Oracle或Neo4j),它给应用程序提供服务,请求并响应应用程序在运行中发送过来的查询。每隔一段时间,一个抽取、转换和加载(ETL)作业就会将记录系统数据库的数据转入图计算引擎,供离线查询和分析。

image

图计算引擎多种多样。最出名的有内存的、单机的图计算引擎Cassovary和分布式的图计算引擎Pegasus和Giraph。大部分分布式图计算引擎基于Google发布的Pregel白皮书,其中讲述了Google如何使用图计算引擎来计算网页排名。

本书重点关注图数据库

通过前面的部分,我们对图领域有了一个大致的了解。在这之后,本书将主要关注图数据库。我们的目标始终是试图向读者解释清楚图数据库的概念。我们会在适当的时候穿插一些例子来说明这些概念。这些例子都来自于我们使用属性图模型和Neo4j数据库开发解决方案的过程中获得的经验。读者不必在意我们的例子中使用了什么具体的图模型或图数据库,这些关键概念对于其他的图数据库同样适用。
1参考Rodriguez, M. A.和Neubauer, P.的《The Graph Traversal Pattern》(2010)。
本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

相关实践学习
阿里云图数据库GDB入门与应用
图数据库(Graph Database,简称GDB)是一种支持Property Graph图模型、用于处理高度连接数据查询与存储的实时、可靠的在线数据库服务。它支持Apache TinkerPop Gremlin查询语言,可以帮您快速构建基于高度连接的数据集的应用程序。GDB非常适合社交网络、欺诈检测、推荐引擎、实时图谱、网络/IT运营这类高度互连数据集的场景。 GDB由阿里云自主研发,具备如下优势: 标准图查询语言:支持属性图,高度兼容Gremlin图查询语言。 高度优化的自研引擎:高度优化的自研图计算层和存储层,云盘多副本保障数据超高可靠,支持ACID事务。 服务高可用:支持高可用实例,节点故障迅速转移,保障业务连续性。 易运维:提供备份恢复、自动升级、监控告警、故障切换等丰富的运维功能,大幅降低运维成本。 产品主页:https://www.aliyun.com/product/gdb
相关文章
|
存储 XML JSON
Activiti 7 核心数据库表概览及流程生命周期中的作用
Activiti 7 工作流引擎通过约25张核心数据库表实现流程定义、运行时状态、历史记录与身份数据的存储。表名以ACT_开头,后跟标识用途的字母组合(如RE表示Repository静态信息,RU表示Runtime动态数据)。流程启动时在运行时表登记数据,任务执行中更新关联信息,结束时清理运行时记录并完善历史记录。各表分工明确且逻辑紧密关联,确保高效运行与完整留痕的平衡。掌握这些表的作用和关联有助于深入理解Activiti底层原理及进行高级应用开发。
1239 0
|
关系型数据库 数据库连接 数据库
循序渐进丨MogDB 中 gs_dump 数据库导出工具源码概览
通过这种循序渐进的方式,您可以深入理解 `gs_dump` 的实现,并根据需要进行定制和优化。这不仅有助于提升数据库管理的效率,还能为数据迁移和备份提供可靠的保障。
452 6
|
分布式计算 NoSQL 数据可视化
图数据库HugeGraph:HugeGraph-Hubble基于Web的可视化图管理初体验
图数据库HugeGraph:HugeGraph-Hubble基于Web的可视化图管理初体验
625 0
|
SQL Oracle 关系型数据库
SQL数据库当前版本概览与更新趋势
在探讨SQL(Structured Query Language)数据库的当前版本时,我们首先要明确的是,SQL本身是一种查询语言标准,而并非特指某一个具体的数据库产品
|
存储 SQL 分布式计算
TiDB整体架构概览:构建高效分布式数据库的关键设计
【2月更文挑战第26天】本文旨在全面概述TiDB的整体架构,深入剖析其关键组件和功能,从而帮助读者理解TiDB如何构建高效、稳定的分布式数据库。我们将探讨TiDB的计算层、存储层以及其他核心组件,并解释这些组件是如何协同工作以实现卓越的性能和扩展性的。通过本文,读者将能够深入了解TiDB的整体架构,为后续的学习和实践奠定坚实基础。
|
人工智能 自然语言处理 NoSQL
悦数图数据库推出 AI 知识图谱构建器及图语言生成助手
随着人工智能应用在全球范围的普及和风靡,大语言模型技术(Large Language Model,简称 LLM)受到了广泛的关注和应用。而图数据库作为一种处理复杂数据结构的工具,能够为企业构建行业大语言模型提供强大的支持,包括丰富亿万级别的上下文信息,提升模型的应答精度,从而实现企业级的应用效果。同时,Graph+LLM 可以助力快速构建知识图谱,帮助企业更深入地理解和挖掘数据价值。
|
存储 人工智能 自然语言处理
悦数图数据库:图技术加速行业大模型智能化应用落地|WAIC 2023 精彩回顾
7月8日,以“智联世界,生成未来”为主题的 2023 世界人工智能大会(WAIC)在上海顺利闭幕,悦数图数据库最新版本 v3.5.0在大会上首次亮相,并带来了悦数图数据库与 AI 大模型结合的实践成果分享,获得现场观众及媒体的广泛关注。
悦数图数据库:图技术加速行业大模型智能化应用落地|WAIC 2023 精彩回顾
|
机器学习/深度学习 人工智能 自然语言处理
悦数图数据库:图技术和 AI 在金融行业的应用及技术前瞻
一起来看看 Graph 和 AI 结合金融领域的案例以及悦数图数据库在做的一些大语言模型及前沿技术工具。
悦数图数据库:图技术和 AI 在金融行业的应用及技术前瞻
|
存储 人工智能 自然语言处理
悦数图数据库:发布 AI 大模型解决方案,开启「图+ 大模型」应用新范式
随着 AI 人工智能技术的迅猛发展和自然语言处理领域的研究日益深入,如何构建强大的大语言模型对于企业来说愈发重要,而图数据库作为处理复杂数据结构的有力工具,为企业构建行业大语言模型提供了强大的支持。
|
机器学习/深度学习 存储 分布式计算
如何在图数据库中训练图卷积网络模型
如何在图数据库中训练图卷积网络模型
569 0
如何在图数据库中训练图卷积网络模型