热点|创邻图查询范式引爆LDBC TUC2024

2024年8月30日至31日,创邻科技Galaxybase团队联合蚂蚁集团TuGraph团队、阿里巴巴GraphScope团队共同主办第18届LDBC TUC会议。在本次会议中,来自全球图数据库领域的学者和技术专家做了很多精彩的分享,共同探讨图技术的最新进展。创邻科技Galaxybase团队也围绕图查询语言的多种模式及其未来发展方向展开分享,发表了题为《Parameterized Algorithm Routine: The Perfect Balance between Performance and Usability》的演讲,分享了Galaxybase独有的高性能图查询范式——PAR(全称Parameterized Algorithm Routine,参数化算法过程),引发了热烈讨论。(点击链接即可查看演讲PPT)

*完整会议议程可见:https://ldbcouncil.org/event/eighteenth-tuc-meeting/

01 背景

随着数据量的爆发式增长,“万物互联”已成为不可逆转的趋势。为了应对日益庞大的关联数据,我们需要借助图技术。图技术不仅能帮助我们更有效地理解和分析复杂的数据关系,还广泛应用于各种场景。例如,在社交网络中,图技术可以用来查询好友关系、识别关键影响力人物、查找共同好友,进行社群发现;在金融领域,图技术可以用于交易路径追踪、异常交易检测、欺诈团伙分析以及交易模式识别;在制造行业,图技术可以用于供应链上下游的监控与追溯;在能源行业,图技术可以用于智能调度与设备检修管理。
「那么,图数据库是如何应对这些复杂多样的分析场景的呢?」——「关键在于图查询。」

通过图查询,我们能够快速、高效地从复杂的数据关系中提取有价值的信息,以理解和应对不同的业务需求。

图查询根据其执行过程的控制方不同,分为声明式查询和命令式查询,具体对比如下:

声明式查询命令式查询
定义以结果为导向,用户仅需描述需要获取的数据,由机器决定数据获取的过程。以过程为导向,用户需描述执行步骤,向机器指定如何获取数据。
特点特点简洁、更接近自然语言,由数据库系统自动优化。复杂、提供细粒度查询控制,由用户根据业务逻辑优化、性能高。
优化通用性优化、实时优化定制性优化、执行前优化。
示例Cypher, GQLProcedure, Function

声明式查询
在这里插入图片描述

命令式查询
在这里插入图片描述

在这里插入图片描述

在上面的例子中,我们看到声明式的Cypher查询看起来比命令式的存储过程更加简单、明了。

那么,为什么还需要命令式查询呢?

Galaxybase服务过的多行业跨场景客户的实际数据显示,约70%的客户在OLAP和OLTP的混合场景中使用图数据库,10%的客户将图数据库应用于纯OLAP场景,仅有20%的用户将图数据库仅用于OLTP的场景。这些数据充分体现了不同于关系型数据库更常应用于OLTP场景,图数据库更多应用于处理复杂分析任务的OLAP及AP、TP的混合场景,因此,OLTP类多跳查询之外的,处理复杂图结构特征、多维度数据关联模式的HTAP查询和分析任务的执行效率,将更大程度决定一款图数据库在实际应用中的性能。
在这里插入图片描述

但是由于图数据的不平衡性特性(超级节点现象)、查询数据在机器节点分布的不可预测性、分布式存储中点边不在同一台机器上,以及查询路径的多样性等因素,声明式查询语言很难以通用的优化方式实现在不同数据特征、不同图结构特征、不同查询模式下的最优化。不优的查询不仅仅是查询响应慢,还容易因为查询返回的非必要中间节点信息过多、占用过大内存资源而造成系统稳定性问题。因此,在那些对性能和稳定性要求特别高的生产环境中,命令式查询反而更为合适。它允许我们在执行之前,针对特定场景进行优化,确保系统的稳定、高效运行。
在这里插入图片描述
▲ 图结构的数据不均衡性示例

此外,声明式查询语言虽然上手门槛较低,但在复杂业务场景下,其语法表达能力的限制会导致要使用多层分支嵌套的查询才能完整实现业务需求。这是由于声明式查询语言要以文本行来表达,只能描述直接路径扩展,无法对图上的复杂网络关系提供简单直观的表达方式。比如多跳扩展中的边条件如果有前后依赖关系,或者子网筛选有复杂的剪枝条件等,这些业务逻辑用声明式查询语言写会非常繁琐,反而降低了易用性。相同情况下,使用命令式查询,可以直接按照业务逻辑来写各种规则和条件,更加清晰明了、易于维护。

总结来说,声明式查询适合处理简单或者数据量小的图查询场景,而在更为复杂的图特征及模式查询场景中,尤其是在大数据分布式场景中,命令式查询能够根据业务逻辑及数据分布特性进行优化,是更佳的选择。尤其在生产环境中,如果业务对分布式大数据的查询实效性要求高,命令式查询更是必不可少的选择。

当然目前在图数据库领域中,命令式查询还存在许多挑战:

  • 命令式查询的实现难度比较大。开发这些查询的过程比写Cypher/GQL查询对使用者的编程能力要求更高,而目前针对命令式查询的用户友好的工具还不多;
  • 在处理大数据集的生产环境时,通常需要用到分布式图数据库。但是,目前市面上的图数据库很少能有效支持命令式查询的分布式并发操作;
  • 由于命令式查询的可操控性强,不法分子可以通过命令式查询进行破坏数据库的操作,这就对系统的安全性提出了更高的要求,需要设计者在提供命令式查询接口时同时做好足够的安全防护。

02 Galaxybase的解决方案——PAR

创邻科技在开发声明式查询的同时,同样重视命令式查询的研发,我们的命令式查询方案PAR在命令式查询领域取得了重大进展,为各行业多场景的应用提供了强大的支持,在实际应用中取得了出色的效果。PAR,全称为“Parameterized Algorithm Routine”(参数化算法过程),它是创邻科技专为应对大数据场景下复杂图数据库查询的挑战而设计的参数化的自定义算法程序。它充分利用了Galaxybase底层分布式计算框架的能力,为用户提供了一种通过PAR API进行服务端编程的方式。Galaxybase提供了非常丰富的API,赋能用户执行包括定制化图算法、分布式并行带条件的图数据遍历、图计算任务的分布式调度在内的复杂查询和计算操作,并针对不同场景做了分布式并行优化,在为客户提供更优秀的查询、计算性能的同时,也提升了图数据库在生产环境中的稳定性和可靠性。

提升查询计算性能

  • 分布式查询性能优化:随着数据的不断增长,用户往往需要在生产环境中使用分布式图数据库。Galaxybase的PAR在设计时就考虑了底层数据存储的分布式存储架构,会根据数据的实际分布情况进行优化,高效的处理分布式查询。
  • 并行操作性能优化:PAR提供了一系列并行操作的优化,通过底层的并行迭代接口,针对数据的分区并行特性提升了读写操作的性能。例如,在遍历磁盘上的数据时,PAR优先将同一分区的数据放在一个线程内读取,同时将不同分区的数据放在不同线程中并行读取,从而在确保磁盘的高效顺序读取的同时提升了系统的整体处理效率。

提升可用性

  • 简便的注册功能:命令式查询的开发通常比写GQL查询要复杂得多,但PAR提供了简便的注册功能。所有的命令式查询操作都可以通过可视化的用户交互界面轻松完成,包括上传、注册和修改存储过程,这让整个开发过程变得更加直观和简单。
  • 功能封装与开发便利性:Galaxybase提供了一个PAR Kit工具包,封装了各种分布式、多线程、图遍历接口,使得开发过程更加便捷和高效。即使用户不了解分布式和并行处理的细节,也可以轻松编写出支持分布式和并行处理的代码,降低学习成本、提升开发效率。

优化资源使用,提升系统稳定性

  • 资源统一管理:在生产环境中,复杂的查询在实现和使用过程中可能会占用大量资源。Galaxybase通过统一的线程池管理、文件操作和内存追踪功能,确保系统资源被合理利用,从而增强系统的稳定性。
  • 自定义停止功能:PAR支持自定义停止功能,用户可以随时停止正在执行的存储过程,防止不合理的程序消耗过多资源,进而保障系统的稳定性。

应用广泛

  1. 高校图数据库课程: 在浙江大学开设的图数据库课程中,Galaxybase的PAR已成为课程中的重要部分,帮助学生更好地理解和掌握图数据库的应用。
    在这里插入图片描述

  2. 图数据库书籍:创邻科技出版的《图数据库:理论与实践》一书中,专门讲解了图数据库服务端编程的内容,旨在帮助更多的开发者和技术人员掌握并利用好PAR支撑复杂的业务分析需求。
    在这里插入图片描述

  3. 商业项目中的验证:Galaxybase的PAR已在金融、能源、互联网、教育等多个行业的客户项目中被客户广泛应用,证明了其在实际商业环境中的可行性和有效性。
    在这里插入图片描述

客户评价

  • 交通银行: “PAR的便利性和效率非常好。目前我们生产上3个PAR包,基于几十亿的图项目并行运行效率依然高效稳定,尤其是代码在线编辑功能,为PAR开发人员和运维人员问题排查起到作用。”
  • 杭州银行:“在需求明确的情况下,(比Cypher查询)性能提升明显。数据有业务逻辑,比如筛选和排序之类,PAR用在实时查询上,更加灵活,应用调用方便。”

03 Galaxybase PAR引全球专家热议

创邻对声明式语言的深入探讨,在LDBC TUC会议上引发了热烈的探讨,我们的提议也得到了LDBC多位专家的高度评价。
在这里插入图片描述
▲LDBC副主席Alastair Green对PAR的实现进行提问

在这里插入图片描述

▲创邻科技CTO周研博士现场答与会者提问

04 展望和总结

在未来,创邻科技希望通过推广命令式查询的研发与应用,持续推动图数据库行业的健壮发展。

  • 支持声明式与命令式模式的混合使用:我们将在同一平台上支持声明式和命令式查询的混合使用,使用户可以根据不同场景灵活选择最合适的查询方式。通过无缝切换这两种模式,用户可以充分利用它们各自的优势,更好地应对复杂的业务需求。

  • 实现查询模式的自动转换:我们计划通过引入AI技术,实现声明式和命令式查询之间的自动转换。这不仅能够大幅降低开发命令式查询的成本,还能让更多用户轻松上手,从而提高开发效率。

  • 加强培训与教育:我们将加强对声明式和命令式图数据库查询的培训和教育。通过提供更多资源、在线课程和实操案例,帮助开发者更深入地理解并掌握这两种查询方式,进而选择适合自己场景的最佳模式。

  • 推动PAR的跨平台兼容性:我们将致力于提升PAR的跨平台兼容性,使其能够在更多数据库平台上顺利运行。通过一套命令式查询在不同平台上的执行,PAR的应用范围将进一步扩展,让更多企业和开发者受益。

  • 促进声明式与命令式查询的协同发展:我们希望通过持续的创新和探索,推动声明式和命令式查询的协同发展,在性能和功能上不断突破,为更多用户和企业创造真正的价值。

如果您也想了解更多PAR相关的内容,欢迎登录创邻科技官网添加创邻科技小助手

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/145787.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL高阶1853-转换日期格式

目录 题目 准备数据 分析数据 总结 题目 给定一个Days表,请你编写SQL查询语句,将Days表中的每一个日期转化为"day_name, month_name day, year"格式的字符串。 返回的结果表 不计顺序 。 准备数据 Create table If Not Exists Days (d…

【Kubernetes知识点】HPA如何控制不同的资源实现自动扩缩容?

【Kubernetes知识点】HPA如何控制不同的资源实现自动扩缩容? 目录 1 概念 1.1 什么是HPA1.2 Deployment 与 HPA 的关系 1.2.1 工作原理 1.3 StatefulSet 与 HPA 的关系 1.3.1 工作原理 2 实验案例:HPA 控制 StatefulSet 进行扩缩容 2.1 部署一个有状态…

[产品管理-28]:NPDP新产品开发 - 26 - 产品生命周期管理 - 产品上市的八大步骤

目录 一、产品发布 1.1 传统的产品上市发布步骤:线性一次性发布 1. 产品概念提出与市场调研 2. 产品开发与测试 3. 生产准备与质量控制 4. 营销策略制定 5. 产品上市发布 6. 持续优化与迭代 1.2 新型的产品上市发布步骤:逐步迭代,多…

【mysql技术内幕】

MySQL之技术内幕 1.MVCC模式2. 实现mvcc模式的基础点3.MySQL锁的类型4. 谈谈分库分表5. 分表后的id咋么保证唯一性呢?6. 分表后非sharding key的查询咋么处理的? 1.MVCC模式 MVCC, 是multi-version concurrency control的缩写,即多版本并发控…

基于RK3588,AI边缘模块,单片6TOPS,可集群堆叠,Mixtile Blade 3

Mixtile Blade 3 是一款经济实惠、节能的 SBC,围绕下一代 8 纳米瑞芯微 RK3588 处理器构建。它非常适合快速开发、AI 应用程序原型设计和边缘计算,允许您集群多个 Mixtile Blade 3 SBC 以扩展您的部署。 硬件布局正反面 开箱即用的 Mixtile Blade 3 是一…

Jordan标准型

Jordan(若尔当)标准型知识梳理 szmike Keep curious 已关注 raDar 等 634 人赞同了该文章 本文主要介绍什么是Jordan标准型以及怎么把一个矩阵化为Jordan标准型。 一,Jordan标准型的定义 矩阵 J 除了主对角线和主对角线上方元素之外,其余都是0&…

漫步者头戴式耳机怎么样?漫步者、西圣、索尼三大耳机测评对比

自头戴式耳机诞生以来,凭借其出色的音质表现和时尚造型,迅速赢得了音乐爱好者的青睐。头戴式耳机不仅能够带来更加沉浸的听觉体验,还具备较强的降噪功能,让用户在嘈杂环境中依然能专注于音乐世界。 与入耳式耳机相比,…

AIGC生图基础知识

一、引言 AIGC,即AI-Generated Content,是一种利用大型预训练模型如生成对抗网络(GAN)、扩散网络(Diffusion)和语言大模型(Transformer)等人工智能技术,通过对大量数据进…

通过springcloud gateway优雅的进行springcloud oauth2认证和权限控制

代码地址 如果对你有帮助请给个start,本项目会持续更新,目标是做一个可用的快速微服务开发平台,成为接私活,毕设的开发神器, 欢迎大神们多提意见和建议 使用的都是spring官方最新的版本,版本如下&#xff1…

样本册3D翻页电子版和印刷版同时拥有是一种什么体验

​在数字化时代,样本册3D翻页电子版的兴起,让传统印刷版样本册面临着前所未有的挑战。与此同时,许多企业也开始尝试将两者相结合,以满足更多元化的市场需求。那么,拥有一份既具备数字化优势,又保留传统印刷…

生信初学者教程(一):欢迎

文章目录 配套数据R包版本安装包版权答疑在生物信息学(生信)领域,随着高通量测序技术的不断发展,大量数据涌现,为科研工作者提供了丰富的资源。然而,对于初学者而言,如何从海量的数据中挖掘有价值的信息,并开展一个完整的生信项目,仍然是一个挑战。目前,市面上针对初…

PACKMOL 一:手把手教你用Linux安装 packmol

文章目录 1. PACKMOL介绍PACKMOL的主要用途:使用场景:优点: 2. PACKMO安装3. PACKMO验证结束语 1. PACKMOL介绍 PACKMOL 是一个开源软件,用于生成分子动力学模拟所需的初始结构。它的主要功能是根据用户定义的几何约束&#xff0…

Excel--WPS 函数与公式技巧(轻松搞定各类排名)

一、直接按成绩或数值的排序(rank函数轻松搞定) 以上函数非常简单,记住两点: 1.rank排名同分作为同一名次,后面的名次需要占位,如,以上两个70分,同为第8名,那么第9名将被…

局域网变压器市场价值

2024 年全球局域网变压器市场价值为 3.056 亿美元,预计到 2030 年将达到 4.426 亿美元,2024-2030 年的复合年增长率为 5.4%。 局域网变压器市场包括用于改变电信号电压或格式的产品,以改善和简化局域网 (LAN) 上的数据传输。这些变压器对于保…

01_WebRtc_一对一视频通话

文章目录 通话网页的设计客户端实现Web的API 服务端实现 2024-9-20 很久没有写博客啦,回顾总结这段时间的成果, 写下博客放松下(开始偷懒啦)主要内容:实现网页(html)打开摄像头并显示到页面需要…

《 LiteFlow 规则引擎(1) - 入门篇》

📢 大家好,我是 【战神刘玉栋】,有10多年的研发经验,致力于前后端技术栈的知识沉淀和传播。 💗 🌻 CSDN入驻不久,希望大家多多支持,后续会继续提升文章质量,绝不滥竽充数…

品牌力是什么?如何评估企业品牌影响力?

品牌影响力,其实就是指品牌在消费者心智中所占据的位置,以及它对消费者购买决策和行为的影响力。如果一个企业的品牌影响力越强,它在消费者心中的印象就越深刻,能够更有效地驱动消费者的购买行为,形成品牌忠诚度&#…

Windows用管理员运行cmd命令后无法切换盘符

解决方法:在你的切换的盘符前面加上/d,如原本命令是:cd d:\。变为:cd /d d:\。

C++的扩充和封装

作业: 手动封装一个顺序表(SeqList),分文件编译实现 有私有成员:顺序表数组的起始地址 ptr、 顺序表的总长度:size、顺序表的实际长度:len 成员函数:初始化 init(int n) 判空:em…

Zabbix 6.4添加中文语言

/usr/share/zabbix/include/locales .inc .phplocale -agrep “zh_CN" yum install langpacks-zh_CN.noarch y y y