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

127 阅读3分钟

这是我参与「第四届青训营」笔记创作活动的的第18天,以下是我的课堂笔记。 本次课程主要分为四个大板块:
1.企业数据架构
2.数据中心案例
3.实时数据生产
4.数据服务

1.企业数据架构

image.png

1.1数据集成-业务数据收集

CDC

image.png 数据流向:业务数据库->数据系统

Log

image.png 数据流向: client/server log->数据系统

系统间同步传输

image.png

1.2数据生产-离线&实时

image.png

1.3数据服务

image.png 数据流向:数据系统->业务系统

2. 数据中心案例

房产业务介绍

image.png

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

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

·结果(结果好不好? )
·成交量(成交合同量)

image.png

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

数据中心看板查询条件:
·时间范围:今天前的任意日期范围。
·业务类型:租赁/买卖/全部 数据展示:
·查询条件下的每个经纪人的汇总数据
·支持下钻明细数据
技术要求:
. 300ms内返回结果
· 数据是实时秒级

3.实时数据生产

3.1数据分析

数据产出目标

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

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
Where audit_status = 1(可变更)
Group by dk.date,Dkstaff_id, house.house_type

image.png

3.2计算分析

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

3.3数仓建设

image.png 数仓建设:数据复用,减少重复开发

4.数据服务

数据服务架构

image.png

4.1查询快-怎么做?

查询逻辑模型(简化)
select
Field1, field2,field3...(目标信息)
From
(
select count,sum,max,avg (计算处理)
from
table1 (left/right/inner join table2...)(原始信息关联)
where field1 > xxx and field2 > xxx(原始信息筛选)
group by group_fields
)
查询优化分析:
·关注目标:不需要的信息不关注,比如只查询带看量
·计算处理:能不能足够快,比如count/sum/avg等聚合函数
·原始信息:单表筛选够不够快、信息关联够不够快

引擎选择

image.png

4.2稳定-解决的问题

image.png 异常节点导致服务雪崩

如何解决:
熔断触发策略:
·比如错误率每秒超过10%
·响应时间>5s
动作:
·直接返回失败
限流、降级
·限流:根据查询客户端、接口等配置查询限额
·降级:主备存储/服务集群,降级预案

image.png Source Hystrix

4.3 查询-数据管理

维度:
·天(date)
·经纪人(staff_id)
·业务类型(biz_type)\

指标 ·带看量(dk_cnt): count(dk_id)
.通话时长(call duratition): sum(duration)
模型表
·经纪人指标表:dwm_staff_biz_day_rt

查询: Select count(dk_id),sum(duration) from
dwm_staff_biz_day_rt
Where date between startDateanddate between{startDate} and date\ between {endDate}
And biz_type = xxx and staff_id in (1,2,3)