1、ArchSummit 全球架构师峰会 京东实时数据平台技术实践京东实时数据平台技术实践京东实时数据平台技术实践京东实时数据平台技术实践 刘彦伟刘彦伟刘彦伟刘彦伟 目录 l 京东大数据平台介绍 l 实时数据平台背景 l 实时数据平台解决方案 l 关键环节详解 l 关于平台产品化 京东大数据平台定位 支撑全集团数据业务 全集团数据集中 自助式服务平台模式 大数 据 平 台 商城 拍拍 易迅无 金融 京东大数据平台发展历程-技术选型 2011年之前201120122012至今 京东大数据平台发展历程-技术选型 传统商业数据仓库解决方案 -弊端 - 高复杂度计算任务并发性差 - 海量数据处理能力不足
2、- 存储能力有限 - 扩展性差 - 成本高 -后期遇到的问题 -越来越多的ETL任务需要12点后才能完成 -任务排队现象严重 -基于流量等大数据量的批量计算和复杂推荐类算法基本无法应付 -存储达到上限,需不断转移历史数据 京东大数据平台发展历程-工具 脚本+配置文件 分散工具集一站式消费+多屏可用 京东大数据平台架构 自助式服务平台 支持离线模式流式模式 开源组件+自主研发 通过产品化发挥最大价值 让用户专注于开发 实时数据平台背景 运营场景 -实时感知业务运行情况,实现实时决策支持,比如调整营销策略、库房排班等 营销场景 根据用户位置、实时浏览轨迹、商品价格变化等实现精准推荐、广告 Top排
3、行榜:销量排行、热度排行等 优化离线数据仓库数据抽取环节 传统“T+1”模式的数据仓库每天凌晨第一件事就是增量或全量抽取业务数据 随着数据抽取任务的不断增长,数据抽取时间成本不断增长,离线计算启动时间 不 断被推迟 实时数据平台要解决的几个问题 实时数据采集-数怎么来 数据要全 延迟要低 实时数据存储-数放在哪 数据存储统一 方便使用、高吞吐量 实时数据计算-数怎么算 及时性 支持高复杂度场景 实时数据平台解决方案 实时数据采集 实时数据总线 实时数据分发 实时数据流式处理 准实时数据批量处理 高可用 实现产品化 关键环节详解实时数据采集 实时数据来源 -在线系统记录日志 -统一的实时日志采集
4、方案 -支持数据上报 -提供SDK支持用户上报实时数据 -基于数据库日志 - 无需开发 - 数据最全 优势 -几乎覆盖全部业务数据 -通过产品化实现用户自助接入 -快速新增实时数据 关键环节详解实时数据采集 数据库日志采集方案 Parser 分分表 数据合并 格式 解析 数据拆分 数据 数据 Tracker 数据确 数据 异构适配 采集 DB JDQ 数据存 粒度 原始日志 保 序 内部使用 JDQ 数据存 表粒度 构数据 保 序 外消 关键环节详解高可用的任务调度框架 实时任务调度框架 Magpie -保证任务的高可用 -节点不可用时任务自动切换到可用节点 -调度框架通过Zookeeper实
5、现各调度节点的无状态 -根据CPU,内存,网络资源平衡集群各节点压力 -通过分组实现集群内资源隔离 -集群规模水平扩展 -整合监控 关键环节详解实时数据总线 DB LOG 在 系 JDQ Topic_f2 Topic_f1 Topic_p1 Topic_t2 Topic_t1 SDK上报 Binlog File 关键环节详解实时数据总线 实时数据采集与下游数据使用者之间的桥梁 数据共享通道 实现了数据集中、统一了实时数据出口 一个支持高吞吐率的分布式消息队列 保障数据的基本可靠性 以Topic为单位存储实时数据对象 基于单分区保障Binlog数据的顺序性 支持数据权限控制 关键环节详解流式处理
6、 离线批量计算 静态数据 规则可变 流式计算 动态数据 规则预设 及时响应 关键环节详解流式处理 流式计算-计算程序从庞大而连续的数据流中提取、过滤、分析数据 实时数据是一个持续的数据流 基于事件触发 并行计算 可靠的消息处理机制,失败后自动重试 及时性高,毫秒级处理延迟 关键环节详解实时计算平台 统一的实时计算平台 基于Storm打造的流式计算平台 提供SDK实现与JDQ的对接,从而通过JDQ获取实时数据 提供可视化的配置管理系统 支持Job的自助上传、测试、发布、管控服务 支持Job的版本控制 集成监控,实现状态、延迟等异常报警 实时查看Job运行日志 实现了公司资源利用最大化,包括人力、
7、技术、硬件等 关键环节详解实时数据分发 从JDQ中消费某一特定数据,并根据用户配置信息将数据分发到HDFS中 日志型文件数据落地为HDFS的文件 Binlog型实时增量数据落地为准实时Hive还原表 基于分钟级时间分区存储 每个分区中一份全量数据 提供UDF获取最新分区 基于实时增量日志每天生成一份拉链表 关键环节详解实时数据分发 准实时Hive还原表的实现思路 关键环节详解准实时批量处理 适用场景 计算逻辑复杂,难以通过流式处理模式实现的实时计算场景 开发人员擅长传统ETL开发或SQL,不熟悉流式处理 可以接受分钟级的延迟 实现方式 每隔固定时间周期(分钟级)批量处理一次 与传统离线数据处理
8、模式相同,学习成本低 依赖 准实时的hive还原表 关键环节详解基于Binlog增量日志的拉链表 改变原有”T+1”数据抽取模式 省去离线抽取环节 基于当天数据库实时Binlog增量日志快速生成离线拉链表 缩短离线计算等待时间 关于平台产品化 愿景 通过产品化降低技术门槛,从而降低大数据消费门槛 让人人都成为数据专家 原则 流程抽象 标准化 功能完备,配置、管控、监控、分析、运营等功能缺一不可 其他 统一风格、统一交互 关注细节 帮助文档+提示+最佳案例 多屏可用 关于平台产品化标准化 关于平台产品化分析 广告一下 京东技术解密的面世,就是京东技术团队首次向业界集体亮相。京东创始人刘强 东、腾讯大佬张志东作序鼎力推荐,同样写给产品、运营、管理、品牌商、创业人群。 书中用翔实的内容为读者逐一解答: 如何用技术支撑网站的综合竞争实力; 如何把握技术革新的时间点; 如何应对各种棘手问题及压力; 如何在网站高速运转的情况下进行系统 升级等备受关注的关键话题。 扫码下单扫码下单