1、罗强/腾讯高级工程师 Tencent Senior Engineer腾讯新闻基于腾讯新闻基于Flink+PipeLineFlink+PipeLine模式的实践与应用模式的实践与应用The Practice and Application of Tencent News Based on Flink+pipeline mode背景介绍背景介绍整体架构整体架构PipeLinePipeLine模式设计模式设计 高可用高可用/稳定设计稳定设计 未来规划未来规划#1#2#3#4#5Background introduction Overall architecturePipeline pattern d
2、esignHigh availability and highstability designFuture#1#1项目背景项目背景Background introduction业务背景腾讯网腾讯体育腾讯新闻新闻电商新闻教育游戏联运阅文小说小游戏维表数据知识付费新闻微信插件新闻QQ插件收入数据行为数据平台多业务广数据杂Business background项目背景原有实时系统面临的问题新需求接入需要3-5天代码业务强耦合,复用性低需要到服务器部署上下线应用开发成本高需求排不上简单功能难实现每周投入0.5-1天服务器运维自行搭建4台服务器、扩容难、资源吃紧系统黑盒,异常监控难自行搭建服务器频繁占用
3、人力运维storm 算子能力弱、灵活性差延时高、不支持SQL不支持时间窗口业务发展功能越来越复杂实时性要求越来越高维护成本高灵活性不足Project background迁移技术挑战业务逻辑不变情况下平稳切换需求多变、复杂快速接入数据/代码高质量高可用性、代码灵活低耦合数据复用率高减少存储及计算资源Technical challengesSmooth switching withunchanged businesslogic我们是如何解决?Demand is changeableand complex,how toaccess quicklyHigh quality data and code
4、.High availability,flexible code andlow coupling are requiredHigh data reuse rate,reducingstorage and computing resources2021.4 正式上线#2 2整体架构整体架构Overall architecture架构图ODS层原始数据上报HDFSETL实时数仓数据接入新闻请求新闻曝光新闻曝光游戏联运新闻电商系统监控存储/接入TDWHDFSImpalaTDWHDFSImpala数据仓库存储计算层Meta信息DWD层明细数据存储/接入数据微聚合等计算层Meta/维表DWS层应用数据存
5、储/接入维度计算等计算层MysqlClickhouseRedisImpala数据应用后端等业务系统OceanusTube MQFlinkTube MQTube MQOceanusFlinkOceanusFlinkArchitecture实时数据应用Data application 用户广告实时点击序列特征 用户广告负反馈特征序列 实时用户游戏标签特征 数据实时清洗、归并、结构化 实时数据入库 异常用户数据检测实时数仓实时业务实时报表实时监控实时风控在线学习Flink 游戏用户授权 用户登录态信息处理分发 广告实时停单 流量抖动监控 用户行为监控预警 PV/UV等用户访问数据相关图表 交易订单报
6、表、流量趋势图等 搜索热词等实时排行榜#3 3PipeLinePipeLine 模式设计模式设计Pipeline pattern designFlink+PipeLine 设计思想PipeLinePipeLine:为自定义管道流水线,可以将任务的处理分解为若干个处理阶段,即前一个处理单元的结果也是第二个模块的输入,实现计算作业流水线化。目标目标:充分利用Flink资源提高计算效率,使得代码结构层次更加清晰、代码解耦、模块高复用成为可能。FlinkFlink Runtime Runtime sourcesourcetransformation/processtransformation/proc