我们已经知道关系数据库并不总是足以处理今天的数据量、速度和多样性,但是有什么明确的替代方案呢?

还有许多其他数据库选项—包括许多NoSQL数据存储—但没有一个是专门设计来处理和存储数据关系的。 没有,也就是说,除了图形数据库。

在这个关系数据库管理系统和图表博客系列中,我们将探索关系数据库与其对应的图相比如何,包括数据模型、查询语言、部署范例等等。

上周,我们讨论了为什么关系数据库并不总是足以应对当今的大数据挑战。 本周,我们将从关系数据库管理系统开发人员的角度讲述图形数据库的基础知识。

图形给开发堆栈带来的最大价值是它们能够将关系和连接存储为一流的实体。

例如,图形技术的早期采用者围绕数据关系的价值重新构想了他们的业务。 这些公司现在已经成为行业领导者:领英、谷歌、脸书和贝宝。

作为图形技术的先驱,这些企业中的每一个都必须从头开始构建自己的图形数据库。 幸运的是,对于今天的开发人员来说,情况不再是这样了,因为图形数据库技术现在已经上市了。

让我们进一步了解一下为什么您应该为您的下一个连接数据应用程序考虑一个图形数据库。 我们将从一些基本定义开始。

为了理解图形数据库,你不需要理解图论中神秘的数学魔法。 相反,如果你已经熟悉了关系数据库,你会发现图表是轻而易举的事情。

首先:答 图表 –在数学中–与图表不同,所以不要画条形图或折线图。 相反,想象一个网络或思维导图,如下例所示。

RDBMS 图表 图形 基本 相对 开发

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

每个节点代表一个实体(一个人、一个地方、一件事、一个类别或其他数据),每个关系代表两个节点是如何关联的。 例如,两个节点”蛋糕”和”甜点”会有关系”是一种类型“,从”蛋糕”指向”甜点” .”

这种通用结构允许您对各种场景进行建模—从道路系统到设备网络,到人群的病史或任何其他由关系定义的东西。

图形数据库是一个在线数据库管理系统,其创建、读取、更新和删除(CRUD)操作在图形数据模型上进行。 图形数据库通常是为事务处理(OLTP)系统而构建的。 因此,它们通常针对事务性能进行了优化,并在设计时考虑了事务完整性和操作可用性。

与其他数据库不同,关系在图形数据库中处于第一位。 这意味着您的应用程序不必使用外键或带外处理(如MapReduce)来推断数据连接。

通过将节点和关系的简单抽象组装成连接的结构,图形数据库使我们能够构建与我们的问题领域紧密对应的复杂模型。

图形数据库技术有两个重要的特性:

  • 图形存储
  • 一些图形数据库使用专门设计用于存储和管理图形的本机图形存储,而其他数据库则使用关系数据库或面向对象数据库。 非本地存储通常更具潜力,尤其是随着数据量和查询复杂性的增长。

  • 图形处理引擎
  • 本机图形处理(a .k.a. “无索引邻接”)是处理图形数据的最有效方法,因为数据库中连接的节点在物理上”指向”彼此。 非本机图形处理使用其他方法来处理未针对图形进行优化的CRUD操作,通常涉及索引查找,这将导致性能下降。

图形数据库是专门为处理高度关联的数据而构建的,当今数据量和关联性的增加为可持续竞争优势提供了巨大的机遇。

在将图形数据库应用于现实问题时,由于现实的技术和业务限制,企业组织选择图形数据库的原因如下:

  • 分钟到毫秒的性能
  • 查询性能和响应能力是许多组织对其数据平台最关心的问题。 在线交易系统—尤其是大型网络应用—要想成功,必须在几毫秒内对最终用户做出响应。

    在关系世界中,随着应用程序数据集大小的增长,JOIN痛苦开始显现,性能下降。 使用无索引邻接,图形数据库将复杂的连接转化为快速的图形遍历(这是一种恒定时间的操作),从而保持毫秒级的性能,而与数据集的整体大小无关。

  • 急剧加速的开发周期
  • 图形数据模型减少了困扰软件开发几十年的阻抗不匹配,从而减少了在对象模型和表格关系模型之间来回转换的开发开销。

    更重要的是,图形模型减少了技术和业务领域之间的阻抗不匹配。 主题专家、架构师和开发人员可以使用一个共享模型来谈论和描绘核心领域,然后将该模型整合到应用程序本身中。

  • 极致的业务响应能力
  • 成功的应用程序很少停滞不前。 业务条件、用户行为以及技术和运营基础设施的变化推动了新的需求。 过去,这要求组织进行细致而漫长的数据迁移,包括修改模式、转换数据和维护冗余数据以满足新旧功能。

    使用图形数据库开发与当今敏捷的、测试驱动的开发实践完全一致,允许您的图形数据库与应用程序的其余部分以及任何不断变化的业务需求同步发展。 数据团队可以在不危及当前功能的情况下,对现有的图结构进行添加,而不是提前对一个领域进行详尽的建模。
    数据库同步

  • 企业就绪
  • 当在任务关键型应用中使用时,数据技术必须是健壮的、可扩展的,并且通常是事务性的。 Although some graph databases are fairly new and not yet fully mature, there are graph databases on the market that provide all the -ilities needed by large enterprises today:

  • 酸性交易性
  • 高可用性

水平读取可伸缩性

数十亿个实体的存储

这些特征是导致大型组织采用图形数据库的一个重要因素,不仅是在适度的离线或部门能力方面,而且在真正改变业务的方式方面。

当图形数据库首次在消费者网络的社交应用中流行起来时(脸书、领英、推特),它们的使用案例远远超出了社交空间。

相关文章:

  • 2021-10-14
  • 2021-12-01
  • 2021-09-23
  • 2022-12-23
  • 2022-12-23
  • 2021-04-22
  • 2021-06-24
猜你喜欢
  • 2022-12-23
  • 2021-05-04
  • 2022-12-23
  • 2021-09-30
  • 2021-08-10
  • 2021-07-12
  • 2021-12-19
相关资源
相似解决方案