数据仓库五层架构

1. 数据仓库五层架构规范

1.1 数据仓库为什么要分层

  1. 把复杂问题简单化,每一层只处理简单的任务,方便定位问题;
  2. 减少重复开发,规范数据分层,通过中间层数据能够减少重复计算,且增加计算结果的复用性;
  3. 隔离原始数据,不论是数据的异常还是数据的敏感性,使真实数据与统计数据解耦开。

1.2 DW五层架构的特点

  • 细化DW建模,对DW中各个主题业务建模进行了细分,每个层次具有不同的功能。保留了最细粒度数据,满足了不同维度、不同事实的信息;
  • 满足数据重新生产,不同层次的数据支持数据重新生成,无需备份恢复,解决了由不同故障带来的数据质量问题,消除了重新初始化数据的烦恼;
  • 减少应用对DW的压力,以业务应用驱动为向导建模,避免直接操作基础事实表,降低数据获取时间;
  • 快速适应需求变更和维度变化,明细基础数据层稳定,适应前端应用层业务需求变更,所有前端应用层模型之间不存在依赖,需求变更对DW整个模型影响范围小,能适应短周期内上线下线需求。
    在这里插入图片描述

1.3 ODS(Operational Data Store)原始数据层

数据准备区,也称为贴源层。数据仓库源头系统的数据表通常会原封不动的存储一份,以此减少对业务系统的影响,也是后续数据仓库加工数据的来源。业务DB基本上是直接同步过来,LOG主要做结构化。

1.3.1 ODS层数据的来源方式

业务库
  • 可使用Sqoop来抽取,例如每天定时抽取一次;
  • 实时接入,考虑用canal监听MySQL的binlog;
  • Flume、Sqoop、Kettle等ETL工具导入到HDFS,并映射到HIVE的数据仓库表中。
埋点日志
  • 日志一般以文件的形式保存,可以选择用Flume定时同步;
  • 可以用Spark Streaming或者Flink来实时接入;
  • Kafka。
消息队列
  • 来自ActiveMQ、Kafka的数据等。
  • 7
    点赞
  • 81
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值