这是我参与「第四届青训营 」笔记创作活动的的第18天
今天是大数据专场基础班的第十八次课,主要内容是数据中心建设实践思路与企业实践,主要分为下面四个板块。
一、 企业数据架构
- 企业整体数据架构:基础引擎、数据集成/生产/服务、开发和治理工具
-
关键模块及数据流向
-
数据集成
- 业务数据收集:数据库变更数据收集(CDC)、业务日志收集(业务数据->数据处理系统)
- 大数据系统内传输:基于Flink丰富的connector体系 (数据系统内)
-
数据生产:实时和离线生产pipeline (数据系统内)
-
数据服务:统一数据服务架构(数据系统->业务系统)
-
二、 数据中心案例
1. 房产业务介绍
1.1 房产数据中心-核心数据指标
- 供需(房子全不全?客户多不多? )
- 房源
- 房增(新增房子的录入量)
- 客源
- 客增(新增客户的录入量)
- 房源
- 过程(工作做的怎么样? )
- 通话次数(经纪人和客户电话次数)
- 带看次数(经纪人带客户看房次数)
- 结果(结果好不好? )
- 成交量(成交合同量)
1.2 房产数据中心-数据查询要求
- 数据中心看板查询条件:
- 时间范围:今天前的任意日期范围
- 业务类型:租赁/买卖/全部
- 数据展示:
- 查询条件下的每个经纪人的汇总数据
- 支持下钻明细数据
- 技术要求:
- 300ms内返回结果
- 数据是实时秒级
三、 实时数据生产
1. 数据分析
1.1 数据分析-数据产出目标
- 用户要什么数据?
- 根据日期、业务类型(买卖、租赁)查询经纪人汇总数据
- 目标数据产出粒度:经纪人+业务日期+业务类型
1.2 数据分析-数据生产可行性
2. 计算分析
2.1 计算分析-目标
- 开发效率:较快满足用户的需要
- 资源成本:计算效率高
- 数据质量:准确无误、数据实时
2.2 计算分析-计算架构-Lambda
2.3 计算分析-Lambda架构-数据产出
2.4 计算分析-计算架构-架构选择
2.5 计算总结
- 计算架构:开发效率
- Lambda架构->全量计算:一套开发任务
- 数据源获取:全量能力
- Hybrid Source(逻辑全量表,hive+kafka,成熟存储方案)
- 计算:正确、效率,核心是算子选择+优化
- 正确
- 处理更新/重复:rownumber+retract机制
- 乱序: join reorder
- 效率
- 时效性换效率:Minibatch (聚合、join)
- 质量:稳定性监控、数据监控
3. 实时数仓
- 数据分层:数据复用,减少重复开发
- 数据管理:格式、元数据
四、 数据服务
1. 数据服务架构
1.1 查询快-应用优化
- 原始信息关联
- Local Join:如计算带看量,带看数据和房信息按照house_id分布,无shuffle io开销
- 预关联:直接生产“大宽表”
- 计算复杂度
- 预计算:提前聚合到特定粒度,如带看量聚合到经纪人+天+业务类型
- 提升信息密度:bit化
1.2 稳定-如何解决
- 熔断触发策略:
- 比如错误率每秒超过10%
- 响应时间>5s
- 动作:
- 直接返回失败
- 限流、降级
- 限流:根据查询客户端、接口等配置查询限额
- 降级:主备存储/服务集群,降级预案
引用参考
内容主要参考了孔德振老师在「数据中心建设实践思路与企业实践」课程里所教授的内容,同时也参考了学员手册里第三节的内容,图片来自于老师的PPT,链接如下: