实时数据中心建设思路与企业实践 | 青训营笔记

269 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的第15天

企业数据架构

image.png

数据中心案例

房产数据中心-核心数据指标

  • 供需(房子全不全? 客户多不多?)
    • 房源
      • 房增(新增房子的录入量)
    • 客源
      • 客增(新增客户的录入量)
  • 过程(工作做的怎么样?)
    • 通话次数(经纪人和客户电话次数)
    • 带看次数(经纪人带客户看房次数)
  • 结果(结果好不好?)
    • 成交量(成交合同量)

房产数据中心-数据查询要求

数据中心看板查询条件:

  • 时间范围:今天前的任意日期范围
  • 业务类型:租赁/买卖/全部

数据展示:

  • 直询条件下的每个经纪人的汇总数据
  • 支持下钻明细数据

技术要求:

  • 300ms内返回结果
  • 数据是实时秒级

数据分析-数据产出目标

  • 用户要什么数据?
  • 根据日期、业务类型(买卖、租赁)查询经纪人汇总数据
  • 目标数据产出粒度:经纪人+业务日期+业务类型

image.png

数据分析-数据生产可行性

生产逻辑:

  • select
  • Dk.date,//日期
  • Dk.staff_id,//经纪人
  • House.house_type, //业务类型
  • Count(id) as dk_cnt //指标,带看量
  • from dk left join house On dk.house_id = house.house_id
  • Whereaudit_status - 1(可变更)
  • Group by dk.date, Dk.staff_id, house.house_type

计算分析-目标

  • 开发效率:较快满足用户的需要
  • 资源成本: 计算效率高
  • 数据质量:准确无误、数据实时

计算总结

  • 计算架构:开发效率
    • Lambda架构->全量计算:一套开发任务
  • 数据源获取:全量能力
  • HybridSource(逻辑全量表, hive+kafka,成熟存储方案) 计算: 正确、效率,核心是算子选择+优化 - 正确
    • 处理更新/重复:rownumber+retract机制
    • 乱序: join reorder
  • 效率
    • 时效性换效率:Minibatch (聚合、join)
  • 质量:稳定性监控、数据监控

数据服务架构

image.png

查询快-应用优化

  • 原始信息关联
    • Local Join:如计算带看量,带看数据和房信息按照house_id:分布,无shuffle io开销。
    • 预关联:直接生产”大宽表”
  • 计算复杂度
    • 预计算:提前聚合到特定粒度,如带看量聚合到经纪人+天+业务类型
    • 提升信息密度:bit化