Download presentation
Presentation is loading. Please wait.
1
淘宝数据应用开发平台 Weibo.com/apeks
2
大纲 背景——进入淘宝数据平台 数据规模 数据产品 总台架构 概览——数据应用开发架构 产品架构 技术架构 深入——关键服务介绍
知识库(元数据) 调度 数据集成 IDE 成本优化 生命周期 展望——数据创造未来
3
2000+服务器的云计算平台 总体数据规模 每日新增数据20T 累积数据14P 每天处理100,000+作业任务,包括100+新增作业任务
5
如何使用数据——传统数据仓库模式 … … 内部小二: 1 临时提取数据
运营 数据分析师 PD 内部用户 卖家 买家 外部用户 数据化运营 商业决策 产品设计 店铺经营 购买决策 行业分析 … … 商业智能团队 业务分析师/数据PD 数据产品PD 数据产品开发团队 理解业务 文档化业务和需求 BI产品设计 分析、挖掘用户需求 数据产品设计 数据开发团队 ETL开发工程师 模型架构师 内部小二: 1 临时提取数据 2 淘数据 3 Business Preview 数据产品: 数据产品——数据魔方 数据产品——量子统计 ETL作业设计, 实施,维护, 优化 数据模型建模 架构师 程序员 基础开发 & 开发架构 使用、建设 建设 数据平台 技术框架设计 平台与工具的实现
6
数据开放之路——人人都是数据专家 … … 运营 数据分析师 PD 内部用户 ISV 卖家 买家 外部用户 数据开发团队 数据化运营 商业决策
产品设计 店铺经营 购买决策 行业分析 培训,咨询,解决方案 … … 服务 ETL开发工程师 商业智能团队 业务分析师/数据PD 数据产品PD 数据产品开发团队 理解业务 文档化业务和需求 BI产品设计 分析、挖掘用户需求 数据产品设计 模型架构师 使用、建设 架构师 程序员 基础开发 & 开发架构 建设 技术框架设计 平台与工具的实现
7
数据平台——产品架构 数据应用 报表需求(淘数据) 即席查询(adhoc) 数据分析 数据挖掘 数据产品 数据开发平台
数据应用开发平台——数据工场 Data Integration Datax DB sync TT Hive Hbase 实时计算 底层平台 Hadoop Map Reduce Hadoop HDFS
8
数据开发平台——数据流向 数据产品 Adhoc 报表(淘数据,Business Preview) 回流主站应用 其它 数据流向
OLAP server 实时计算平台 开发平台 Oracle Mysql Hbase Other System Gateway Servers DataX Myfox Loader LzLoader Hadoop Hbase 流式计算 Map Reduce Java Jobs Streaming Jobs Hive Jobs Gateway Servers DataX DBSync TimeTunnel Oracle 备库 MySQL 备库 日志系统 Log Server 爬虫数据 主站服务(淘宝,B2B,广告,搜索,BOSS)
9
数据应用开发平台 愿景和目标 用户分类 需求分类 降低数据开发门槛,人人都可以方便加工和获取数据 提升数据项目开发效率 有效控制计算存储成本
沉淀最佳实践,打造数据应用开发的标准 用户分类 非技术背景用户 技术背景用户 需求分类 ADHOC需求? 类Excel查询工具 图形化拖拽 HIVE IDE 数据项目/数据产品? 数据应用开发平台
10
数据工场产品架构 技术服务 基础服务 项目实施流程 数据字典, 知识库, 问答 元数据center 需求分析 图形化辅助建模工具, 自动建模
业务建模 权限控制 数据集成 (DataX,DBSync,TT3) 数据集成 审计 IDE(web,RCP),代码优化器 支持HIVE, map-reduce,mahout 工作流编辑 数据开发&挖掘 日志 准入测试,持续集成, 性能测试 测试 搜索引擎 调度引擎 分析工具集 指标系统(Dashboard) 线上部署 运行 计算成本 成本优化 缓存 监控告警,数据质量, 生命和周期 运行时监控 数据质量监控 管理生命周期 … 数据集成,OLAP,图标引擎, 可视化引擎 结果数据导出 报表配置 数据可视化配置
11
数据工场关键服务——知识库(元数据管理)
Hadoop MR Job/Task级别运行日志 MR级别运行日志 各个环节延迟 系统吞吐 Hadoop HDFS 文件Meta 目录Meta 文件,目录统计信息 权限属性 访问记录 HIVE 表Schema 分隔符,格式,压缩方式 记录数 权限信息 工作流调度 数据流定义,任务依赖 节点级运行日志 系统延迟 调度开销 Gateway集群负载,并发度 任务优先级,基线 代码库 代码 与用户的关联
12
数据工场关键服务——知识库(元数据) 元数据应用 其它服务 数据字典 指标库 知识库 数据质量监控 生命周期 监控告警 … …
自动建模/模型优化 SQL自动改写 血缘分析&影响分析 SQL优化 BUS 归一化存储 Metadata Service Sphinx Redis MySQL 捕获/解析/处理/归一化 RAC 收集器 收集器 收集器 收集器 解析器 收集器 … 生成 Hadoop MR Hadoop HDFS HIVE 调度系统 代码 J/HI/PY 需求系统 …
13
数据工场关键服务——知识库(元数据) 任务依赖关系/data pipeline 宏观数据 系统吞吐瓶颈 天网调度效率 Gateway并行度
微观数据 Jobtracker调度效率 系统优化 关键路径分析 集群计算效率 优先级 末端监控 运行趋势分析 比较 算法优化 运行时间 系统关键路径点 参数调优 数据源监控 重点节点 等待时间 事后评分 工具优化 同步时间 ETL元数据分析/血缘关系 计算模型优化
14
数据工场关键服务——调度 1.0 Crontab 完全为了解决定时启动的问题 应用自己解决依赖关系 无均衡负载问题 无优先级问题 全人工运维
基于工作流,自动管理以来关系 资源分配,并行度控制 容错机制:任务自动重跑、机器自动倒换 自动负载平衡 支持业务优先级 大部分场景支持自动运维,小部分半自动运维 独立的系统 3.0 调度服务(数据工场) 结合IDE 自动部署 全自动运维 自助监控,自助值班,100%监控覆盖 开放式服务 与系统其他部分集成,服务平台的一部分
15
数据工场关键服务——调度 其它服务 调度前台 定义 消息总线 调度服务 benefit fail over high-available
智能调度 dynamic LB high-usage 标准化配置 Lower maintenance cost per machine 统一包管理 批量管理工具 Standardized Gateway server cluster 标准化运维
16
调度服务3.0
17
调度服务3.0 智能调度
18
数据工场关键服务———调度
19
数据工场关键服务———调度 数据源监控 数据流1 数据流2 数据流3 数据流4 数据流5 a c d b f e a c d b f e a
关键路径分析 系统关键路径点监控 末端监控 末端监控 末端监控 末端监控 末端监控
20
数据工场关键服务——数据集成 数据源 增量实时同步 Hadoop集群 计算结果 Dbsync Mysql备库 Mysql 全量/非实时同步
oracle备库 TimeTunnel 2 HDFS DataX 全量/非实时同步 日志数据 oracle 爬虫数据 DataX
21
数据工场关键服务——IDE
22
数据工场关键服务——RCP
23
数据工场关键服务——IDE RCP JDBC Hive server Hive 元数据库 Web IDE Server(HS mode)
HTTP JDBC JDBC Web HTTP IDE Server(HS mode) Hadoop Cluster PIPE CLI RPC CLI … CLI IDE Server(CLI mode) BUS 元数据 调度 优化引擎 生命周期 …
24
数据工场关键服务——成本优化 用户重写 用户提交的数据流 打散为表.列 归一化表达式 数据流rewrite 提交 匹配 规则引擎 字段仓库
数据仓库表 打散为表.列 归一化表达式 模型优化建议 进入 反馈 进入
25
数据工场关键服务——生命周期 … 对象( Object ): Hive table HDFS中的目录 动作( Action ):
规则( Rule ): 对象( Object ): Hive table HDFS中的目录 动作( Action ): 仅保留,不作操作 删除 合并/压缩 极限存储 HDFS Raid 移动到其它文件系统 其它操作(可增加) 动作可以级联 规则( Rule ): 指定管理对象,在指定时间后,执行指定操作策略。 每个管理对象可以配置多条管理规则。 保留 删除 合并 压缩 极限存储 HDFS RAID Move out …
26
数据工场关键服务——数据开发流程 编辑SQL代码 工程管理 调试 作业管理 生成生命周期配置选项 语句优化 配置调优 配置生命周期 版本控制
发布管理 配置多维分析 配置数据导出 调度计划 配置char /dashborad 运行监控 数据质量监控 End 监控告警
27
总结
Similar presentations