扒人家网站做网站,网站建设冷色调,网站结构规划,网站的策划方案怎么写简介#xff1a; Dataphin作为一款企业级智能数据构建与管理产品#xff0c;具备全链路实时研发能力#xff0c;从2019年开始就支撑可集团天猫双11的实时计算需求#xff0c;文章将详细介绍Dataphin实时计算的能力。
背景
每当双11全球购物狂欢节钟声响起#xff0c;上千…简介 Dataphin作为一款企业级智能数据构建与管理产品具备全链路实时研发能力从2019年开始就支撑可集团天猫双11的实时计算需求文章将详细介绍Dataphin实时计算的能力。
背景
每当双11全球购物狂欢节钟声响起上千万用户涌入天猫、淘宝流畅的购物体验背后是阿里工程师用技术打造出的营地支撑了每年双11所带来的数据洪峰。2020年11月1日至11月12日0:00天猫“双11”累计总交易额达4982亿元物流订单总量达到23.21亿单。这一切的背后都离不开实时计算技术。
Dataphin作为一款企业级智能数据构建与管理产品具备全链路实时研发能力从2019年开始支撑集团天猫双11的实时计算需求。就以下文介绍Dataphin实时计算的能力。
传统的数仓架构
在数仓建设过程中一般来说都是先建设离线数仓同时围绕着离线数据构建应用。然后随着业务的发展或者体验的优化再建设实时计算的链路去提升数据的时效性。
在这个过程中相似的代码写两遍就难以避免还会出现实时和离线口径不一致分别维护成本增加等各种各样的问题。 传统的数仓架构流与批从存储计算中分离带来以下的问题
效率问题流批底层数据模型不一致导致应用层做大量的拼接逻辑同比、环比、二次加工等搭建效率低且容易出错质量问题一个业务逻辑两个引擎两套代码SQL逻辑不能复用数据一致性和质量问题难以保证成本问题流批存储系统隔离面向不同写入场景提供的数据服务不一维护成本高手工建数据同步任务开发成本/存储成本高两份批处理流处理集群无法做到错峰资源利用率低
Dataphin流批一体优势
为解决传统数仓架构的存储计算分离的问题有了“流批一体”的思路
流批存储透明化查询逻辑完全一致应用端接入成本大幅降低点查/OLAP分析统一支持服务层统一存储无需手工同步无重复存储一套代码两种计算模式逻辑统一灵活切换研发效率大幅提升流批计算资源混部资源利用率提升Dataphin在Flink流批一体的能力之上额外提供了更多的平台能力如数据源管理、元数据管理、资产血缘、资产质量控制、预编译、调试等能力
开发生产隔离提供开发环境和生产环境隔离保证开发环境开发的业务代码和生产相互之间不干扰元数据管理各系统组件包括数据源、元表、UDX等具备权限控制功能敏感型配置信息加密保护。支持数据源敏感字段访问订阅。元表、函数、资源等全部单元化可视化的管理支持跨项目鉴权字段级调用让使用者聚焦业务逻辑。流批一体流批存储层的统一管理实现模型层统一流批代码统一、通过流批各自专属配置生产独立有协同的额调度实例研发提效提供了预编译的能力提供语法校验、权限校验、字段血缘提取的功能容器化调试支持上传自定义数据或直接消费真实生产数据用来观察作业运行、检查各个节点的输出结果支持元数据检索作业依赖、字段血缘的可视化探查稳定性及质量保障支持流量阈值设置防止计算资源过度竞争避免下游系统过载支持实时元表质量监测可配置统计趋势监测、实时多链路对比、实时离线数据核对。
开发生产隔离
Dataphin支持开发生产隔离的项目支持开发和生产双环境的数据源配置。这样在开发模式下任务就会自动使用开发数据源和开发环境下的物理表而当发布到生产环境时Datpahin则会自动切换为生产数据源及生产环境的物理表。这个过程完全自动化不用手动修改代码或配置。
元数据管理
Dataphin创造性的引入了实时元表和镜像表的概念将实时研发过程中的表进行了平台化、资产化的统一管理并简化了研发提升研发效率和体验。
传统实时任务研发工具需要用户重复写Create table建表语句需要进行繁琐的输入输出表映射等操作。实时元表将实时开发任务中所有用到的数据表进行了统一表构建与管理统一维护了所有实时元表和相关schema信息。开发者在开发过程中不用重复写DDL语句同时也不需要进行繁杂的输入、输出、维表映射采用简单的纯代码研发模式简单的SET语句及权限申请即可引用表数据进行直接查询或写入数据轻松做到一次建表多次引用大幅度提升研发效率和体验。
镜像表顾名思义则是用于维护离线表与实时表之间字段的映射关系。创建镜像表并提交发布后就可以在流批一体的Flink任务中使用镜像表的字段Datpahin会在编译时自动映射到流表和批表上实现一份代码两种计算代码逻辑、口径变更强一致。
流批一体的代码任务
除了引入实时元表与镜像表Dataphin也支持了流批一体的任务使用Flink引擎作为统一的流批计算引擎在一份代码上可同时配置流批的任务配置基于同一份代码生成不同模式下的实例。而对于流批差异化的代码Dataphin也提供了不同的方式给与支持。
流批一体任务中会广泛使用镜像表而镜像表在最终使用时会翻译为对应的流表/批表为了适应流表/批表的多样性流表/批表的数据源可能不一样带来with参数中key可能不一样流表/批表的某些设置可能不一样比如batchSize等可以利用tableHints进行流表/批表的对应。方法如下
set project.table.${mode}.${key} --mode: 流任务stream 批任务batch
举个例子设置批任务的起停时间
set project.table.batch.startTime2020-11-11 00:00:00; set project.table.batch.endTime2020-11-12 00:00:00;
第二种是在Dataphin的任务配置实时和离线模式分别任务参数的方式是利用任务参数进行替换。 实时质量监控
Dataphin实时数据质量主要面向开发者针对产品中实时产出的数据表通过对产出结果进行数据质量分析和校验来保障数据的最终有效与准确。Dataphin支持统计趋势监测、实时多链路对比、实时离线数据核对。
统计趋势监测趋势监测指的是基于数据趋势变化以及专家经验以捕获波动异常的监测方式如 实时GMV的趋势陡增有些异常实时多链路趋势对比实时多链路指的是在实时计算的场景中由于数据的恢复成本较高无法快速从起点重新计算因此需要使用多个计算链路当发生计算异常时自动/手动切换计算链路是一种用资源换稳定的策略当有重大的保障业务时往往会采用该种类型如每年双十一大屏都会采用多链路保障。实时离线核对实时离线核对是保障实时数据常用的一种措施由于实时计算处于一种持续运算状态计算时间持久且受资源与源数据的扰动较大离线数据在逻辑、数据复用性方面可以被更好地操作因此为了保障实时数据的准确性常用离线数据与实时数据进行对比如每年双十一前都会使用离线数据对实时数据进行校验双十一大屏后的Dataphin
回到文章开始的天猫双十一了解了Dataphin平台特有的能力我们来具体拆解Dataphin为什么能支撑天猫双十一的实时数据大屏。 快
Dataphin为实时提供研发、调试、测试、运维全链路一站式服务极大降低用户开发门槛同时提供统一元数据管理元数据仅需初始化一次轻松做到一次建表多次引用让开发聚焦业务逻辑大幅度提升研发效率和体验另外有数据研发经历的同学都有这样的体会很多数据口径都惊人的类似甚至有些只是输入输出表不同典型的场景比如主备链路针对这种场景我们提供了模版研发的能力相同逻辑封装在模版中差异逻辑通过模版参数体现新任务仅需引用模版配置模版参数即可极大提升研发效率的同时也降低了口径维护成本。
基于以上能力在双十一大屏的支持上尽管业务玩法很多需求井喷仍然仅以2人便支撑上百需求。
稳
Dataphin提供任务监控及数据质量监控全方位保障任务稳定快速发现问题基于模版的主备多链路在异常发生时可以秒级切换快速止血基于实时任务血缘快速定位问题根因基于调试、测试、细粒度资源配置快速验证并修复真正做到1min发现、5min定位、10min解决。
准
基于流批一体的能力真正做到代码统一口径统一存储统一数据服务接口统一研发提效的同时保证数据一致。
未来规划
在即将发布的Flink VVPVerverica Platform适配版本将支持新的VVR引擎也将在未来支持开源Flink引擎已支持更多的部署环境。Dataphin也将持续提升实时研发的能力和体验帮助企业降低实时研发的门槛挖掘更多的场景获得实时数据带来的业务价值
原文链接
本文为阿里云原创内容未经允许不得转载。