GeaFlow(品牌名TuGraph-Analytics)已正式开源,欢迎大家关注!!!欢迎
07月05日 17:38
GeaFlow(品牌名TuGraph-Analytics) 已正式开源,欢迎大家关注!!!欢迎给我们 Star 哦!
Welcome to give us a Star! GitHub /TuGraph-family/tugraph-analytics
更多精彩内容,关注我们的博客 /
(资料图)
6月18日-23日,数据库国际顶会 2023 ACM SIGMOD 在美国西雅图举行,蚂蚁流式图计算团队一篇论文入选。ACM SIGMOD 数据管理国际会议是由美国计算机协会(ACM) 数据管理专业委员会(SIGMOD) 发起,与 VLDB、ICDE 并称为数据库业界的三大顶级学术会议。其收录论文代表了数据库领域的最高水平,也是未来数据库技术发展的重要风向标。蚂蚁流式图计算团队本次的论文 《GeaFlow: A Graph Extended and Accelerated Dataflow System》 被 SIGMOD 2023 收录,代表蚂蚁流式图计算团队的成果不仅在工业界有界广泛的应用,同时也在学术界得到进一步认可。
图片注:GeaFlow 为蚂蚁流式图计算引擎 TuGraph Analytics 内部代号,本文将沿用论文中所用 “GeaFlow”,便于读者对应。图片项目代码地址:/TuGraph-family/tugraph-analytics
背景介绍伴随着流处理技术的不断发展,它被各大应用领域广泛的使用,例如监控、推荐、广告等。虽然现有的流处理系统已经被证明对处理窗口类型的集合查询非常有效,但当面临更复杂的数据结构,例如图结构数据时,却面临非常多的挑战。首先在流计算中 join 是一个开销非常大的操作,特别是对于动态变化的数据,因为每来一条数据都需要从另外一条流中找到其所对应的数据,另外还涉及到数据物化和 shuffle。而流式图计算中通常需要成百上千次图迭代才能得到结果,对应流计算就是成百上千次 join 操作。其次流计算中数据聚集的中间状态,通常在固定窗口或者滑动窗口中,需要维护的数据量是远小于窗口的原始数据大小,且窗口通常不会特别大。而流式图计算中通常需要维持一个较长窗口且动态变化的图,比如在风险识别中需要回溯到几个月甚至几年的数据。为了解决上述的这些问题,蚂蚁流式图计算团队开发和设计了一款流图计算引擎 Geaflow,它能很好的解决流式动态图分析、遍历和计算的诉求,同时支持长窗口数据图数据状态管理、DSL 化流图任务研发等特性。Geaflow 在蚂蚁的风控、营销等场景也得到了非常广泛的应用,同时也在双十一大促中大放异彩。下面我们来剖析下 Geaflow 的运行场景和内部技术。运行场景不同于图数据库,Geaflow 解决的问题是高吞吐场景下复杂的图分析和计算问题,例如深度图遍历、子图匹配、全图分析等。Geaflow 使用流式事件驱动的方式进行计算和查询,同时利用查询优化技术进行查询合并和加速。下面我们来描述下 Geaflow 的运行场景。
图1 所描述的就是一个典型的 Geaflow 数据流向图。从整体的流水线来看,它在进行流式的构图,构图的数据可以包括多种不同类型的数据,可以是消息队队列,也可以是日志系统。数据可以经过ETL处理,最后转换为点和边写入图存储,图存储会定期的进行 checkpoint 来保障 ExactlyOnce。同时,它还基于增量和变化的数据进行驱动图计算,例如反套现场景中不断进行付款的用户id。和其他通用的流计算系统不同的是,由于图计算是迭代计算,GeaFlow 支持流式链路上的迭代图处理。最后可以将图计算的输出数据加工处理,例如上图中进行 Window TopN 计算后输出。架构设计为了支持以上的场景,Geaflow 做了如下的架构设计:
如图2所示,相对于典型的流系统,我们做了如下的扩展和补充。整体架构从上往下包含以下几层:Hybird DSLGeaFlow创新型的融合了表和图语义,利用表 DSL SQL以及图 DSL Gremlin 来描述,用户可以轻松通过类似SQL编程的方式编写实时图计算任务。同时,在 Query Planning 中,我们针对对逻辑执行计划和物理执行计划进行图语义优化;并且对多查询语句还 进行合并查询等优化。
Core API
GeaFlow 设计了一套带状态语义的算子,支持多种流、图语义,包括标准的流算子、vertex/edge-centric 的图算子。在图算子中,我们建立了很好的编程模型,支持用户各种不同的图结构,同时引入 session 来处理并发的图查询。Streaming EngineGeaFlow 运行时的分布式DAG执行层,可以灵活的在流图语义间切换,同时可以高效的支持多查询优化。在执行过程中,我们利用 off-heap 内存管理、sharing graph state 和批量执行等技术进行优化,极大的提升了整体的吞吐。GeaFlow StateGeaFlow 的状态存储,用于存取流、图数据。可以使用 KV 语义的状态,也可以使用图语义的状态。在图状态中,我们设计了一套高效的 key layout,加速 vertex 和 edge 存取,兼容多种不同多模 backend。同时我们还开发了一套 graph-native 的 backend,利用类 CSR 的索引结构以及计算和存储分离架构支持更高效的图存取,与灵活的扩缩容。实验结果我们在这里列举了 Geaflow 和其他流计算引擎的对比。在 K-Hop Neighborhood 场景中,我们选在 LiveJournal 以及 Twitter-2010两个公开数据集,对比 Geaflow、 Flink 以及 Differential Dataflow。实验是在8个 container 的集群上做测试,其中每个 container 规格为8c16G。通过实现,我们可以看到:在多个 hop 的遍历场景下,GeaFlow 整个的内存保持平稳,并不会随着迭代深度增加而显著增加,而其他通用流式计算引擎,则会有显著的存储空间放大,从而在 hop 数过多是内存溢出。GeaFlow 针对典型流式图场景,对于基于通用路计算引擎基于 Join 来实现的方式,吞吐显著提升。
在图查询仿真场景中,我们验证查询时间和并发执行 query 数的关系。在图4中我们看到随着批次中并发的查询数据量增大,执行时间增加的并不会特别明显。可以发现融合40个query的时间只增加了%,达到倍的提速效果。
总结及规划Geaflow 源于6年前我们在蚂蚁业务场景的尝试,当时我们发现现有的流处理架构并不适合流式图处理,经过两年的孵化,Geaflow 成功的支持蚂蚁反欺诈业务,同时在2018年双十一期间达到每秒处理超过千万级事件的高吞吐量。在这些业务中的流式图查询和分析效果带来的业务效果也非常显著,证明了流式图处理在金融场景中可以提供非常多的帮助。之后我们引入 DSL 的支持,进一步减少用户开发成本,我们选择了 SQL + Gremlin 的组合,并不断改进器查询优化器,于是便有有大量的用户开始使用我们的DSL来查询和分析他们的图计算场景。如今 Geaflow 已成为蚂蚁最受欢迎的计算引擎之一。接下来,我们计划在以下几个方面进一步发展 GeaFlow:* 融合更多的图语义,例如具有增量语义的图计算算子。* 探索更多声明式的图查询语言,例如 OpenCypher、GQL 和 SQL/PGQ 等。同时融入 CBO 优化,自动调参等能力。* 探索使用 Rust/C++ 等语言改写我们执行引擎,进一步提高性能。
GeaFlow(品牌名TuGraph-Analytics) 已正式开源,欢迎大家关注!!!
欢迎给我们 Star 哦!
Welcome to give us a Star!
GitHub /TuGraph-family/tugraph-analytics
更多精彩内容,关注我们的博客 /
关键词:
GeaFlow(品牌名TuGraph-Analytics)已正式开源,欢迎大家关注!!!欢迎
07月05日 17:38
祝贺安谱实验中标“广电计量2023-2024年度试剂耗材供应商”包组一、三
07月05日 17:39
美国“独立日”假期枪案频发 10人死亡数十人受伤
07月05日 17:41
土耳其外长称如瑞典加入北约可能带来麻烦
07月05日 17:44
金盘科技公告,公司近日与厦门东源签订了黄骅市德润500兆瓦渔光互补智
07月05日 17:46
每经AI快讯,有投资者在投资者互动平台提问:公司有布局激光直写光刻机
07月05日 17:44
7月4日,申通发布消息称,申通快递在西北地区的首个无人配送车,已于西
07月05日 17:35
6月30日,四川省政务服务“三化”建设暨园区政务服务集成授权改革现场
07月05日 17:45
大众网记者朱昱辰通讯员裴晓丽杨恒日照报道今日,日照市委组织部、市人
07月05日 17:33
00:13人民日报客户端7月4日,内蒙古自治区呼和浩特市武川县应急管理局
07月05日 17:36
湖南日报·新湖南客户端7月4日讯(通讯员田治排)7月3日傍晚,笔者迎着
07月05日 17:38
智通财经讯,苏泊尔(002032 SZ)公告,公司截止2023年6月30日已回购公司
07月05日 17:41
7月3日,中国驻美大使谢锋会见美国财长耶伦。双方就中美关系及共同关心
07月05日 17:33
(原标题:看好7月行情,私募逆市加仓|21私募通)上半年
07月05日 17:41
【CNMO新闻】当地时间7月3日,据美国媒体报道,扎克伯格的Meta公司正与
07月05日 17:32
四川新闻网-首屏新闻成都7月4日讯(记者陈淋)7月4日,四川省2023年下
07月05日 17:41
民警互送孩子回家。警方供图华龙网-新重庆客户端讯(记者罗盛杰)6月26
07月05日 17:36
纵览客户端讯(河北日报记者陈华)从石家庄市教育考试院获悉,石家庄市
07月05日 17:31
如今,为了全面保护软件的安全,相关企业必须考虑整个攻击面。这意味着
07月05日 17:31
姐妹们常说“红气养人”,车作为最常见的出行工具,“强者当红”才符合
07月05日 17:37
A股公司上半年接受调研近万次机械设备、医药生物等行业获关注
07月05日 17:32
重庆银行(SH601963,收盘价:7 88元)7月4日晚间发布公告称,自2023年
07月05日 17:38
ai绘画技术在日常生活中提供了一种简便而有趣的方式来涉足艺术创作
07月05日 17:28
7月3日16时左右,四川甘孜海螺沟区域突降暴雨,引发山洪泥石流灾害。当
07月05日 17:33
【环球网科技综合报道】7月4日消息,据外媒报道,针对Office办公套件捆
07月05日 17:31
截至7月2日,江苏今年13项主电网(其中7项是500千伏电网工程)、1221项
07月05日 17:26
当谈到肉鸽卡牌游戏时,这些游戏将卡牌和肉鸽元素相结合,为玩家带来全
07月05日 17:37
金蝉是王者荣耀这款热门MOBA游戏中的一个法师职业角色,金蝉有着很强的
07月05日 17:24
树王圣体菇是流浪者的突破材料,为了节省大家的跑图时间,下面就由小编
07月05日 17:24
那束光,是涓涓汗水,浇灌生命力量;那束光,是煌煌梦想,点亮人生希望
07月05日 17:26