蚂蚁集团流式图计算引擎GeaFlow的技术架构与应用实践.docxVIP

蚂蚁集团流式图计算引擎GeaFlow的技术架构与应用实践.docx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
蚂蚁集团流式图计算引擎GeaFlow的技术架构与应用实践 01 GeaFlow的基本介绍 1. 什么是图 我们知道图论起源于哥尼斯堡的七桥问题。数据结构的图由顶点的集合和边的集合构成。在我们现实生活当中,图无处不在,包括像资金网络和关系网络等。图相较于传统的表结构,具有如下几个优势。 ① 维度的提升 图结构能够表达丰富的数据和关系。比起传统用表的方式去存储信息和组织模式图,图可以很清晰地揭示复杂的模式。尤其在错综复杂的社交金融风控领域,它的效果更为明显。 ② 高效的查询、分析 图数据,充分地表达了数据的关联性。基于图可以做一些非常高效的查询和分析。同时基于图我们可以更方便自然地对数据进行建模。比如我们可以通过任意类型的点去表示对象,通过边去表示特定的关系。 2. 应用场景 图的应用场景也非常广泛,例如我们所熟知的关系网络中常见的好友推荐、认识的人、朋友的朋友,以及社群划分、相同兴趣爱好的人等。在知识图谱领域,也可以做关系挖掘,查找共同根结点以及最短路径分析等。另外,在金融风控领域,我们可以做异常资金的流动监控和企业风险的评估。 3. 为什么做实时流图计算 首先我们知道在传统的大数据和数据库领域中,有离线计算、实时计算,以及关系型数据库这样的系统,这些系统本身都是基于table结构的。基于graph的结构在同样的推导下应该有同质的系统出现,比如图数据库和离线图计算以及实时图计算。 早在2017年以前,蚂蚁内部就已经有了图数据库和离线图计算系统。我们在内部开发实现了一套实时图计算的能力,基于实时的关系数据,可以进行流图融合和时序增量的图计算。在通用的实时计算领域,我们基于关系的数据,可以进行流计算和实时的OLAP分析。随着数据结构的升维,我们在图数据上面也可以衍生出图的流计算以及图的探索分析。 基于以上的思考,我们在2017年开始研发了一套流图的融合计算系统,并且在2018年支持了实时反套现这样一些双十一业务上线;然后基于现在流图的融合计算能力和蚂蚁内部业务的思考,我们提供了一套仿真的能力。将在下文进行详细的介绍。 我们基于早期的流图融合计算,可以很好地支持一些内部的应用场景。但是基于动态子图的图计算,无法从全图的视角去看图的变化,比如在图智能的资金核对的场景中,需要我们从全局的图的视角去看财务之间的变化。所以,基于这样的业务场景的诉求,我们在之前的系统能力之上,构建了一套增量的动态时序图计算的能力。通过时序增量的图计算能力,在动态图上,我们可以进行增量计算。另外为了满足内部的研判、血缘分析等交互式分析的场景,我们提供了一套图探索的能力。 02 GeaFlow的技术架构 GeaFlow是蚂蚁内部自研的实时图计算系统。首先我们提供了DSL化的研发能力,可以方便用户快速开发和上线应用。其次我们打造了一套Mix的计算引擎,也就是多模态的计算引擎。相比通用的大数据系统如flink 、spark主要是基于table的结构,GeaFlow主要是基于graph数据进行计算。 我们这里说的支持分布式动态图,可以从两个维度来理解: 首先数据本身是动态更新的,也就是图本身是一个动态的图。其次,我们和Ray一起构建了一套可以动态拉起DAG执行的能力。融合这一块,我们是把SQL和Gremlin融合到一起,一体化去执行,这样可以在一套编程体系里面去实现丰富的业务逻辑。同时,放在一起之后,可以打造端到端的低延时,包括一些优化也可以统一考虑。相比之下经典的先通过流计算系统做一些处理、再把结果写到消息中间件,下游再拉起Graph System,这样整个端到端的延迟会很高,同时也将增加业务的成本。 这是GeaFlow的整体架构。最底层是分布式执行引擎Ray,第二部分是统一的图存储。统一的图存储是蚂蚁内部的Graph Store,在此之上我们实现了一套基于Task Base的动态图计算框架。当然Ray本身是actor model的引擎,因此其也具备Task Base的能力,在其之上我们做了更上层的一些语义的封装和抽象。 上一层是统一的执行计划。这里的统一执行计划其实就是把SQL和Gremlin放一起后会生成一个统一的大DAG去执行。 以图为中心的多模态计算能力,是把多种计算能力融合到一起。云化的状态管理是指我们基于DFS实现了一套云化的图状态管理系统。其本身就是计算存储分离的能力,我们将基于流式的方式去访问它。 在上层我们定义了一套GraphView的核心的API。我们认为GraphView是动态图的视图,在动态图的视图上可以做图的遍历计算和增量计算。 最上层是DSL表达层。我们会把SQL和Gremlin放在一起构建HybridDSL的能力。 1. 动态计算 动态计算是GeaFlow系统中一个核心的系统能力。 通用的大数据基本上都是静态的DAG,比如最早的MapRe

文档评论(0)

宜品文库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档