赵平-宜信数据中台进化历程
如果无法正常显示,请先停止浏览器的去广告插件。
1. 宜信数据中台实践之路
宜信数据中台架构负责人 · 赵平
2. 目录
宜信数据处理发展史
敏捷中间件实践
数据中台实践
数据治理探索
数据中台思考
3. 目录
宜信数据处理发展史
敏捷中间件实践
数据中台实践
数据治理探索
数据中台思考
4. 宜信数据处理发展史
第一阶段
第二阶段
第三阶段
第四阶段
第五阶段
数据治理阶段
数据中台阶段
数据平台阶段
数据仓库阶段
数据库阶段
• RDBMS
• 存储过程
• Hive/RDBMS
• ETL/调度
• 报表/BI
• 存储多样性
• 计算多样性
• 需求多样性
• 数据治理
• 数据资产
• 统一
• 复用
• 自助
2019年
2018年
2016年
敏捷中间件
数据中台
自治平台
5. 目录
宜信数据处理发展史
敏捷中间件实践
数据中台实践
数据治理探索
数据中台思考
6. 「敏捷中间件」— 时代背景:数仓时代
架构:
应用 应用 应用
数据
仓库 数据
仓库 数据
仓库
计算 计算 计算
存储 存储 存储
网络 网络 网络
产品线A 产品线B 产品线C
问题:
数据时效慢、需求处理慢、场景应变慢、技术成本高、人力成本高、沟通成本高 …
7. 「敏捷中间件」— 定义与体系
敏捷大数据实践
敏
捷
中 大
间 数
件 据
据
数
大 论
捷 法
敏 方
敏捷大数据中间件
dbus 数据采集|
wormhole 实时处理|
moonbox 计算服务|
davinci 可视应用|
…|
敏捷大数据方法论
|需求分析验证阶段
|架构设计选型阶段
|实施测试调优阶段
|上线部署迁移阶段
|管理运维监控阶段
敏捷大数据理念
敏捷大数据理念
|组件化/平台化/产品化/本地化
|标准化/接口化/配置化/可视化
|统一化/开放化/管控化
|自助化/自动化/智能化
|平民化
敏捷大数据(Agile Big Data),
即在敏捷理念原则指导下,构建
出一系列通用中间件,和一整套
大数据应用全生命周期方法论,
以支撑更轻量、更灵活、更低门
槛、更快迭代的大数据实践。
8. 「敏捷中间件」— 数据流转架构
应用层
其他应用
数据服务层
存储层
jupy/zepp
/sas/r/hue
druid/kylin
/es/mongo
kudu/cass
/hbase/ch
hdfs/hive db2/oracle
/mysql
流式处理平台Wormhole
总线层
数据源层
可视化应用
Davinci
计算服务平台Moonbox
流式处理层
集成层
数据仓库
消息总线kafka
数据采集平台DBus
关系数据库
日志文件
用户程序
服务终端
9. 「敏捷中间件」— 数据采集平台DBus
DBus(数据采集平台),是一个DBaaS(Data Bus as a Service)平台解决方案。
MySQL
Oracle
DB2
dbus
MongoDB
日志文件
功能特性
•
无侵入方式接入多种数据源
•
海量数据实时传输
•
自动感知数据源Schema变更
•
初始加载和独立加载
•
可靠多路消息订阅分发
•
实时监控&预警
•
可视化后台管理系统
•
支持分表数据汇集
•
多租户支持
UMS
kafka
DBus面向大数据项目开发和管理运维人员,致力于提供数据实时采集和分发解决方案。平台采
用高可用流式计算框架,提供海量数据实时传输,可靠多路消息订阅分发,通过简单灵活的配置,
无侵入接入源端数据,对各个IT系统在业务流程中产生的数据进行汇集,并统一处理转换成通过
JSON描述的UMS格式,提供给不同下游客户订阅和消费。DBus可充当数仓平台、大数据分析
平台、实时报表和实时营销等业务的数据源。
10. 「敏捷中间件」— 数据采集平台DBus
通知告警
监控展示
元数据变更通知
Heartbeat
心跳预警
监控
Master
全量拉取
UMS
Full Splitter
分片
Slave
Full Puller
全量拉取
增量拉取
binlog
Extractor
日志抽取
Dispatcher
分发预处理
Kafka Topic
(Schema 1)
Stream
流式转换
Kafka Topic
(Schema N)
File
Log Agent
(Logstash/Flume/Fil
ebeat/…)
Processor
算子处理
11. 「敏捷中间件」— 流式处理平台Wormhole
kafka
UMS
wormhole
db2/oracle
/mysql
kudu/cass
/hbase
backfill
hdfs
Log/csv
druid/kylin
/es/mongo
…
Wormhole(流式处理平台),是一个SPaaS(Stream Processing as a Service)平台解决方案。
Wormhole面向大数据项目开发和管理运维人员,致力于提供数据流式处理解决方案。平台专注于简化和统一开发管理流
程,提供可视化的操作界面,基于配置和SQL的业务开发方式,屏蔽底层技术实现细节,极大降低了开发门槛,使得大数
据流式处理项目的开发和管理变得更加轻量敏捷、可控可靠。
12. 「敏捷中间件」— 流式处理平台Wormhole
Lookup
(lookup ns)
source ns
HDFS
(state store)
sink ns
Spark
Wormhole Stream
Wormhole Flow
Kafka Topic
(UMS1…N)
Data Store
Wormhole Flow
Wormhole Flow
Kafka Topic
(UMS2…N)
Wormhole Job (backfill)
HDFS
Wormhole Job
Wormhole
Rider
ES
幂等Sink HDFS小文件 多Flow支持 动态指令 业务时间策略 Flow漂移
• 通过id判断是否写入 • 分片直接落txt/csv文
件 • 一个source ns和一个
sink ns唯一定义flow • 可以设置时间对齐
timeout和处理策略 • 设置大小阈值,小则
append,大则新建 • flow关注从哪到哪做
什么 • flow实时感应zk指令
并动态生效,无需重
启stream • 可以控制flow从一个
stream中漂移到另一
个stream中
• 设置时间阈值,超出
则新建文件 • flow是一种虚拟化逻
辑概念,支持单物理
stream同时跑多flow
• 通过op决定写入方式
• 写入前合并行快照
• 写入采用批量方式
• 支持数据最终一致性
• 根据zk配置动态加载
topic
• 通过hdfs parquet维
护中间state数据
• 会自动调整合适的
offset
• 为自动化运维提供接
口服务
13. 「敏捷中间件」— 计算服务平台MoonBox
db2/oracle
/mysql Moonbox(计算服务平台),是一个DaaS(Data Virtualization as a Service)平台解决方案。
kudu/cass
/hbase Moonbox面向数据仓库工程师/数据分析师/数据科学家等,致力于提供数据虚拟化解决方案。既可
作为数据应用底层数据查询计算统一入口,也可作为逻辑数据仓库与现有数据仓库互补。用户只需
通过统一SQL服务调用和Moonbox交互,即可透明屏蔽异构数据系统异构交互方式,轻松实现跨异
构数据系统透明混算。
hdfs/hive
/clickhouse
moonbox
REST API
JDBC/ODBC
druid/kylin
/es/mongo
…
•
功能特性
•
•
•
虚拟化能力
ü 支持多源异构系统无缝混算(目前支持 MySQL、Oracle、Kudu、HBase、 Cassandra、
MongoDB、Elasticsearch、HDFS、Hive等)
语言交互
ü 支持统一扩展SQL语法查询操作
ü 支持两种写出模式:Merge、Replace
ü 支持两种交互模式:Batch模式、Adhoc模式
ü 支持多形式注册UDF/UDAF
ü 支持三种调用方式:REST服务、JDBC连接、ODBC连接
元数据
ü 支持导入动态元数据
ü 支持统一元数据获取服务
•
•
•
优化策略
ü 支持查询替换
ü 支持复杂算子下推
ü 支持整体快速下推
ü 支持临时表缓存
用户体系
ü 支持多租户用户体系
ü 支持灵活多角色定义
数据安全
ü 支持认证登录
ü 支持表/列权限、读/写权限和UDF/UDAF权限
ü 支持加载安全策略
其他功能
ü 支持CLI工具和Zeppelin
ü 支持YARN调度器资源管理
ü 支持Crontab表达式注册定时任务
14. 「敏捷中间件」— 开源赋能
开源社区微信群
• 2000+用户
开源企业使用用户
• 包括微众银行、百信银行、中原银行、PPMoney、
顺丰、华润万家、亚信科技、360、凯声文化、金拱
门、盖茨集团、依图科技等几十家以上企业
v
v
v
v
DBus(625 star):https://github.com/BriData/DBus
Wormhole(574 star):https://github.com/edp963/wormhole
Moonbox(254 star):https://github.com/edp963/moonbox
Davinci(1027 star):https://github.com/edp963/davinci
15. 目录
宜信数据处理发展史
敏捷中间件实践
数据中台实践
数据治理探索
数据中台思考
16. 「数据中台实践」— 企业现状
q 阶段:数仓阶段或者数据平台阶段
q 目标:想做好大数据,让数据赋能
q 思考:做成什么样,如何做
企业关注
—— 降本
增效 提质
17. 「数据中台实践」— 目标
快
ü
ü
ü
平台化,透明封装复用技术组件
自助化,简单配置,月=>天
实时化,驱动业务增长,天=>分
ADX
准
敏捷
统一
平民化
自助
轻量
省
ü
ü
ü
自助化,节省时间就是节省成本
平台化,成熟技术组件高复用度
精细化,集群资源可估可查可量化
ü
ü
ü
统一化,统一数据湖归集和出口
管理化,元数据、数据地图、血缘
资产化,模型管理让数据可信赖
18. 「数据中台实践」— 功能结构
数据中台
中台仓库
数据治理
数据产品
数据血缘 数据质量 数据模型 数据主题 可视化产品 行为分析产品
数据地图 元数据 数据集市 主数据 数据指标产品 画像产品
数据安全 数据生命周期 数据湖 标签数据 数据推荐产品 数据触达产品
数据工坊
数据枢纽
数据归集
数据申请
实时作业编排
平台管理
批量作业编排
租户/资源管理 权限/安全管理
数据服务 数据查询
基础技术能力
数据采集
实时数据加工
批量数据加工
任务调度
数据后台
存储引擎 · 计算引擎
19. 「数据中台实践」— 组件架构
应用层
数据仓库
jupy/zepp
/sas/r/hue
其他应用
可视化应用
Davinci
数据枢纽DataHub
数据服务层
存储层
计算服务平台Moonbox
druid/kylin
/es/mongo
kudu/cass
/hbase/ch
hdfs/hive
db2/oracle
/mysql
数据工坊DataWorks
数据处理层
流式处理平台
Wormhole
调度系统
Triangle
计算服务平台
Moonbox
数据枢纽DataHub
集成层
数据源层
数据采集平台
DBus 流式处理平台
Wormhole 调度系统
Triangle 计算服务平台
Moonbox
关系数据库 日志文件 用户程序 服务终端
20. 「数据中台实践」— 数据湖
维基百科对数据湖的定义:
数据湖(Data Lake)是一个存储企业的各种各样原始数据的大型仓库,其中的数据可供存取、处理、
分析及传输。
数据湖特点:
DW/DM
ODS
数据仓库
p 存储所有变化数据(非快照)
p 可重放数据变化
p 可计算任意时刻快照
数据湖
HDFS
DBus
数据同步
数据源
Mysql
csv/json
Wormhole
Oracle
Files
p 减少对数据源的影响
21. 「数据中台实践」— 数据枢纽模块DataHub
DO-数据拥有方
数据源
DE-数据工程师
dbus
kafka
datahub 实时数据湖 实时历史
wh hdfs
log mb
DU-数据用户
实时增量
wh
数据源
kafka
实时快照
wh
数据源
kudu
mb
dataworks
sas/r/zepp
jupyter
批量快照
tria
数据源
parquet
mb
逻辑快照
mb
数据源
adxmgt
datamgt
dv
DA-数据分析师
AU-APP用户
app
22. 「数据中台实践」— 数据工坊
用户角度: 数据中台角度:
ü 统一数据视图 ü 适配各个中间件功能
ü 统一功能视图 ü 适配各个中间件数据权限体系
ü 统一SQL语法 ü 适配各个中间件用户体系
23. 「数据中台实践」— 行为分析
数据预处理
埋点
数据分析
4.数据预处理
业务A_SDK
1.数据采集
业务B_SDK
神策_SDK
2.数据消费
Wormhole
3.预处理配置加载
神策系统
3.预处理配置加载
5.数据消费
行为分析平台
6.数据分析
ClickHouse
24. 「数据中台实践」— 用户画像:整体结构
标签加工
ü 实时
ü 批量
画像同步
ü 实时
ü 批量
标签仓库
多个标签树
画像
多个画像
画像服务
25. 「数据中台实践」— 用户画像:标签仓库
用户维度
技术维度
标签树
标签仓库
G1_1
实时标签(HBase/KUDU)
G2_1
标签A
标签B
G2_2
标签X
标签Y
G1_2
标签C
标签E
标签T
选中标签
编写SQL
实时(Wormhole)
G1_3
G3_2
标签F
标签M
标签N
标签P
A B C X
1 a1 b1 c1 x1
ID E F 1 e1 f1
批量标签(Parquet)
数据工坊
G3_1
ID
批量(调度+跑批)
ID T M N
1 t1 m1 n1
ID P Y 1 e1 y1
26. 「数据中台实践」— 用户画像:画像+画像服务
用户维度
技术维度
标签树
画像服务
G1_1
G2_1
画像(ES/Redis)
标签A
标签B
G2_2
标签X
标签Y
G1_2
选中标签
配置规则
同步
数据工坊
标签C
标签E
标签T
G1_3
A X M
1 a1 x1 m1
API(画像ID+Version)
根据用户查标签
根据标签查用户
G3_1
G3_2
ID
标签F
标签M
标签N
标签P
标签仓库
27. 「数据中台实践」— 数据应用:精准营销(实时)
5-1. 推荐数据
APP
触达平台
5-2.推荐数据
2. 配置触达规则
业务系统
1-1.行为驱动
营销平台
4. 推荐数据
1-2.业务驱动
1. 配置触发规则
实时规则引擎
Wormhole
2.推荐请求
3.配置推荐规则
推荐平台
3. 读取画像数据
用户画像平台
28. 目录
宜信数据处理发展史
敏捷中间件实践
数据中台实践
数据治理探索
数据中台思考
29. 「自治平台」— 时代背景
数据源层
数据集成层
数据总线层
数据处理层
数据服务层
分析型存储
结构化数据
数据集成与总线
数据处理
数据应用层
数据产品
数据服务
服务型存储
非结构化数据
数据源质量问题
数据存储层
模型方法论缺失、不统一;
数据无法打通、指标口径乱
数据应用
数据资产运营缺失、不明确
元数据管理缺失;数据编码不统一、非标准化;数据地图缺失;数据归属管理缺失
主数据建设缺失
端到端数据血缘缺失
数据质量管理缺失;数据安全管理不健全;数据生命周期管理缺失
数据治理依然是难题,过于依赖于组织、业务和人
30. 「自治平台」— 数据治理建设思路探索
智能化
• 数据治理经验可视化、数据治理规则知识化
自动化
• 数据治理流程线上化、数据治理流程编排化
自助化
• 增加私有数据治理建设、加强公有数据质量审核
工具化
• 元数据管理平台、数据质量平台、数据模型管理平台、指标管理平台
31. 目录
宜信数据处理发展史
敏捷中间件实践
数据中台实践
数据治理探索
数据中台思考
32. 「数据中台思考」— 适合自己的才是对的
l 什么是数据中台? ü 我们企业的大数据现状?
l 数据中台有什么作用? ü 我们企业需要什么样的大数据?
l 数据中台怎么建设? ü 我们企业如何建设大数据?
33. 「数据中台思考」— 共建
数据中台建设问题: 共建
Ø 是否够灵活 Ø 先帮助再沉淀
Ø 是否沦为摆设 Ø 价值交换
是最好的解决办法
34. 谢谢