1.数仓构建流程
一个完整的关于数仓构建的流程:
- 需求分析
- 逻辑分析
- ODS建模
- 数据仓库建模
- 数据源分析
- 数据获取和整合
- 应用分析
- 数据展现
- 性能调优
- 元数据管理
1.1.需求分析
需求来源/需求调研方式:客户访谈 和 调查问卷
1、对企业领导层:
领导层对数据仓库的期望是什么?
领导层最关心哪几个指标?
领导层希望以何种方式来看这些指标?
领导层希望对这些指标进行哪些方面的比较?
......
2、对中间管理层:
中间管理层对数据仓库的期望是什么?
中间管理层希望以何种方式来看这些指标?
平时领导层通常询问哪些指标?在这些指标中哪几个和此分析主题有关?
中间管理层对下属的工作人员都考核哪些指标?哪几个指标与此分析主题有关?
......
3、对业务人员:
业务人员对数据仓库的期望是什么?
业务人员希望系统能提供哪些分析功能?
业务人员希望以何种方式来看这些指标?
业务人员希望对这些指标进行哪些方面的比较?
......
4、对IT技术人员:
此主题所需要的数据源都取自哪些业务系统?
与本主题有关的现有的业务系统的数据结构怎样?
IT人员对数据仓库的期望是什么?
IT人员在平时的工作中最关心的哪些指标?
......
1.2.逻辑分析
1、处理逻辑分析:
单一主题处理逻辑分析:从业务逻辑入手,分析各指标的组成关系
多主题处理逻辑分析:综合考虑分析主题之间的逻辑关系
2、支撑数据分析
单一主题支撑数据分析:单个主题分析所需要的原始支撑数据分析
多主题支撑数据分析:所有主题统一考虑做需要的支撑数据分析
3、业务元数据建立
使用者的业务术语所表达的数据模型、对象名和属性名;
访问数据的原则和数据来源;
系统所提供的分析方法及公式、报表信息。
1.3.ODS建模
1、逻辑模型:
逻辑结构(完成实体的定义,各实体间的关系等)
存储粒度(与源系统基本保持一致)
存储周期(立即删除、过一段时间删除或者是备份到其它介质上)
2、物理模型:
数据的存储结构
索引策略
数据存放位置(硬盘或磁带等)
存储分配
分区设计
1.4.数据仓库建模
1、数据仓库逻辑模型:
划分粒度层次
确定数据分割策略
确定存储周期
定义关系模式
2、数据仓库物理模型:
数据的存储结构
索引策略
数据存放位置(硬盘或磁带等)
存储分配
分区设计
1.5.数据源分析
1、数据源范围:
包括数据源逻辑范围和物理范围
2、数据源格式:
理解各数据源的格式,确定统一的格式,制定相应的转换规则
3、数据更新频率
4、数据量
5、数据质量
1.6.数据获取和整合
1、直接抽取:主要面向 业务数据库
ETL服务器直接连接到应用系统后台数据库中,直接抽取所需数据。
采用这种抽取方式时,必须注意安全控制和抽取时间窗口两个问题。
2、Web服务和数据收集工具:主要面向 网络流数据
通过WEB服务获取系统需要的数据的抽取方式。
3、文件收集:主要面向日志文件
文件交换是指应用系统将需要抽取的业务数据保存为有格式的文本文件,然后ETL服务器通过读此文件内容来获取业务数据的数据抽取方式。
4、数据的整合:数据的 ETL:抽取,转换,装载
字段映射、代码转换、字段拆分、字段合并、字段运算、字段补充、行列转换、全部覆盖、记录追加、记录更新
1.7.应用分析
1、分析方法:OLAP有多种实现方法,根据存储数据的方式不同可以分为ROLAP、MOLAP、HOLAP
名称 | 描述 | 细节数据存储位置 | 聚合后的数据存储位置 |
---|---|---|---|
ROLAP(Relational OLAP) | 基于关系数据库的OLAP实现 | 关系型数据库 | 关系型数据库 |
MOLAP(Multidimensional OLAP) | 基于多维数据组织的OLAP实现 | 数据立方体 | 数据立方体 |
HOLAP(Hybrid OLAP) | 基于混合数据组织的OLAP实现 | 关系型数据库 | 数据立方体 |
2、预定义报表
1、对单报表可以直接从数据库中取出数据进行分析展现。
2、同一主题的多个报表间有较强的关联,有些数据会在多个报表中以不同方式出现。因此,可以对多个报表进行整合。
3、即席查询
1、基于单个表的即席查询
2、基于多个事实表关联的即席查询
4、数据挖掘
根据数据功能的类型和和数据的特点选择相应的算法,在净化和转换过的数据集上进行数据挖掘。
1.8.数据展现
主要数据展现格式:文字不如表,表不如图,但是不能直接干掉表的存在
1、汇报文案
2、报表
3、图形
最佳形式:提供自定义指标选择和条件筛查并且能下载报表明细数据的统一规范化可视化web平台。
echarts
1.9.性能调优
主要优化目标:
1、优化指标
2、优化步骤
3、优化系统
1.10.元数据管理
在数据处理过程中,涉及到的流程比较多,因此,元数据主要有:
1、数据源元数据
2、ETL元数据
3、数据仓库元数据
4、数据集市元数据
5、前端展示元数据
6、数据挖掘元数据
7、其他元数据
元数据管理
1、元数据模型采用公共仓库元模型(Common Warehouse Metamodel,简称CWM)。CWM的主要目的是在异构环境下,帮助不同的数据中心工具、平台和元数据知识库进行元数据交换。
2、CWM为数据仓库和商业智能(BI)工具之间共享元数据,制定了一整套关于语法和语义的规范。
3、元数据管理涉及到数据仓库构造、运行、维护的整个生命周期,是数据仓库构建过程中十分重要的一环。元数据以数据库存储,集中管理控制。
现在已经有了,专门用来做元数据管理的技术:Atlas