数据中台之数据仓库构建工具简介

数据仓库的建设目的一般是为了进行辅助决策的。决策是个复杂的思维过程,因此需要全面的数据支持。历史数据,聚合数据,复杂查询是数据仓库的典型特性。

数据仓库分层,一般构建数据仓库时分四层进行构建。

1、ODS层(操作数据层)

这一层是数据仓库的原始数据层一般为业务原始数据,但不是绝对的。原始数据有可能也经过ETL、预处理进入这一层。

2、DWD层(明细数据层)

这一层在ODS层的基础上进行进一步的清洗、过滤,建立数据组织形式,建立事实表和维度表。

3、DWS层(数据服务层)

基于DWD层的基础数据,汇总成某一主题域的服务数据,构建成宽表数据。

4、ADS层(应用数据层)

基于具体业务和应用需求,提供报表、分析结果表、数据展示表。

数据仓库按照业务的实效性,选择不同的技术组件进行构建,具体如下:

一、离线型数据仓库构建工具

目前离线数据仓库多选用Hive进行构建。Hive属于Hadoop生态,提供SQL编写能力,对大数据进行统计分析操作,学习门槛较低。

二、准实时型数据仓库构建工具

准实时型数据仓库通过Kylin进行建设。Kylin提供预计算能力。提供Hadoop之上的SQL查询接口及多维分析能力,支持超大规模的数据查询。

三、实时型数据仓库构建工具

实时型数据仓库通过Flink流式计算引擎将处理结果存储到分布式关系数据库TIDB中。一般通过订阅业务数据库日志变更,将变化的日志发送到Kafka中,Flink订阅数据变更日志,完成数据仓库的处理步骤。最后将结果写入TIDB中。Flink提供流式计算能力,TIDB提供性能良好的大数据查询能力。

数据仓库主要提供结构化的数据结果,处理结构化的数据,面向主题域建设。