1、蚂蚁金融服务集团 版权所有蚂蚁金融服务集团 版权所有支付宝关系链平台设计与实现 关系链平台概述人类社会自从远古时代开始就包含两大重要行为,分别是:交易 和 建立关系。对于关系来说,不同的场景对应不同的关系维度。关系链平台概述进入现代社会,关系形态远比过去要丰富、复杂很多。关系不仅仅是人与人之间的连接,广泛的看,也是人与物,人与事的连接。例如人和设备的关系、人和某个虚拟游戏的关系。关系链平台概述在DT时代,我们如何该利用关系链条来助力业务?单纯的关系是没有意义的,只有放到业务中才能产生价值,在关系之上渲染业务属性,产生1+1大于2的效果。简单来看,关系链平台要具备以下能力n 具备抽象的数据写入能
2、力n 业务快速接入,配置成本低n 高可用的数据流转能力n 关系是双边数据,需要解决数据一致性问题n 组件化服务关系链平台概述关系链平台是解决业务关系存取、基于关系的查询、业务聚合、数据计算的平台化系统。旨在帮助业务在业务传播、业务分析、数据落地等方向进行更高效的拓展。关系链是人与人、人与业务之间的资源通道。用户视角的广义关系1234人与人的状态型关系人与实体的状态型关系人与人的操作型关系人与实体的配置型关系业务支撑01目前已支撑支付宝几十个业务场景,如蚂蚁森林、花呗、转账等。平均查询耗时 10ms 内每天处理 数十亿次 请求。三大块01存储计算与聚合配置中心n 数据层强一致、易扩展、同城容灾、
3、异地容灾。n 资源灵活组合。n 组件化、服务化输出。n 数据资产化。整体结构01技术线01抽象关系存储关系推荐Sample Text.消息管道聚合服务动态选人关系链配置中心统一对资源进行注册和配置管理。关系链配置中心关系链配置中心Sample Text.聚合服务AdapeterQ uery Bui l derDi spatcherLog C ol l ecti orApl i cati on Servercl i ent抽象关系存储-4种存储形态只关注单方面的关系,关系数据的变更只影响主动触发方。单向关系01关系建立后,双方视角都可以看到关系状态变化。双向关系02反向关系基于双向关系,从反向视
4、角来看有多少主体与当前用户产生了关系。例如:谁存了我的手机号码。反向关系03单边反向关系04单边反向由两个视角组成,第一个视角是从当前视角看到的关系,第二个视角是站在对方视角反过来看谁和他产生了关系。“关系黑名单”就是典型的单边反向关系,从当前人的视角看是:拉黑了对方,而从对方视角看是:被当前人拉黑了。抽象关系存储-多地多中心 多点写入能力 水平扩展能力 DB层一致性算法保障数据稳定性 任意机房全数据 同城、异地容灾能力抽象关系存储 容灾01抽象关系存储 容灾01容灾由DB-conector和DB server共同完成。n DB server侧,通过paxos协议确保在多数可用的情况下实现切换
5、。支持同城、异地无损容容灾。n DB-connector侧,同步集群状态信息,路由请求。抽象关系存储-拆表01数据分段存储后在当前库中查询自己的反向数据比较困难,“反向表”用来解决这个问题。聚合服务查询服务Ranking服务InDome服务定制化服务标准服务聚合服务将业务数据、关系数据、相关元数据按照配置好的规则进行merge、加工、输出。如果在数据资产中没有相关的业务数据,还需要通过数据流模块将业务数据拉到图数据库中。数据流模块业务数据图数据库聚合服务 数据流01实时数据平台包含一套流式数据处理框架,负责接入各种实时数据作业。定义数据的作业,实时数据通过过滤,聚合,转换等操作,让关系数据最终
6、持久化存储。实时数据平台本身分为数据接入层、数据处理层、数据输出层。接入层负责不同数据源的适配,统一接入体系。并且做流量控制,蓄洪等能力。处理层提供基础的数据处理能力,可以编排DAG自定义组合。输出作为结果输入部分,适配不同的存储插件。聚合服务-图存储01Sw i f t Q ueueU pdater Engi neBul kLoaderBatchU pdaterResponderResponderResponderResponderResponderSl aveQ ueue