随着近些年大数据相关技术的飞速发展,数据的在助力业务的发展方面越发重要;数据仓库为企业的决策提供所有数据类型支持的战略集合。它是单个数据存储,出于分析性报告和决策支持目的而创建。 为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。基于hive的离线数据仓库模型已经发展了很多年,市面的优秀参考实践已比较多,但是数据本身的价值随着时间的流逝逐步减弱,因此在数据发生后必须尽快的达到用户的手中。实时数仓的需求构建的需求也应用而生。
数据仓库模型架构
- 数据仓库的建设主要包括数据的采集、数据的处理、数据归档、数据应用四个方面。
- 当前主要的应用场景包括报表展示、即席查询、BI展示、数据分析、数据挖掘、模型训练等方面。
- 数据仓库的建设是面向主题的、集成性的、不可更新的、时许变化的。
实时VS离线
- 离线数据仓库主要基于sqoop、hive等技术来构建T+1的离线数据,通过定时任务每天拉取增量数据导入到hive表中,然后创建各个业务相关的主题维度数据,对外提供T+1的数据查询接口。
- 实时数仓当前主要是基于数据采集工具,如canal等将原始数据写入到Kafka这样的数据通道中,最后一般都是写入到类似于HBase这样存储系统中,对外提供分钟级别、甚至秒级别的查询方案。
数仓类型|准确性 | 实时性 | 稳定性
----------| ---------| --------
离线数仓|准确度高|时延一般在一天|稳定性好,方便重算
实时数仓|准确度底,数据延迟、数据乱序造成数据准确度低|分钟级延迟|稳定性查,需要考虑数据回溯处理
实时数仓的的实施关键点
- 端到端数据延迟、数据流量的监控
- 故障的快速恢复能力
- 数据的回溯处理,系统支持消费指定时间端内的数据
- 实时数据从实时数仓中查询,T+1数据借助离线通道修正
- 数据地图、数据血缘关系的梳理
- 业务数据质量的实时监控,初期可以根据规则的方式来识别质量状况