数据仓库一般分为三种:传统数仓、MPP数仓、Hadoop数仓。
一个“好”的数据仓库有哪些特点:
- 稳定:数据产出稳定且有保障;
- 可信:数据清洗干净、数据质量高;
- 丰富:广泛数据业务范围;
- 透明:透明的数据构成体系;
数据仓库建设之根本:
- 功能架构:功能结构清晰;
- 数据架构:数据质量有保障、数据来源、数据去向清晰可追溯等;
- 技术架构:技术选型要结合企业整体规划、包含业务、预算等,且要满足易扩展、易用性等。
数据仓库建设主要步骤示意:
第一步:采集需求、业务调研。
界定系统边界,确定主要的主题域和内容。如决策者感兴趣的是什么问题?这些问题需要什么样的信息?要得到这些信息需要包含原有数据库系统的哪些部分的数据?具体一点如源数据系统调研,需要接入哪些源系统、具体到库、表、字段等。
以及要确定系统所包含的主题域,然后对每个主题域的内容进行较明确的描述等。
第二步:技术架构设计与选型。
包括技术评估、技术环境准备等,此阶段需要产出如技术评估报告、软硬件配置方案、系统(软、硬件)总体设计方案等。具体如数据库的选取、ETL工具的选取等。
第三步:逻辑模型设计。
逻辑模型设计是对每个当前要装载的主题的逻辑实现进行定义,并将相关内容记录在数据仓库的元数据中。如字典表、日历表、依赖关系(mapping)、各业务码表等,主要还有一点就是主题域的分析与确定。
第四步:物理模型设计。
确定数据的存储结构,确定索引策略,确定数据存放位置,确定存储分配。要全面了解所选用的数据库管理系统,特别是存储结构和存取方法。了解数据环境、数据的使用频度、使用方式、数据规模以及响应时间要求等,这些是对时间和空间效率进行平衡和优化的重要依据。了解外部存储设备的特性,如分块原则,块大小的规定,设备的I/O特性等。
第五步:数据仓库的运行(使用)与维护。
开发决策应用系统、报表系统、数据提取分析与实验等。确定需求(所需要的数据)——>编写ETL+sql脚本——>分析数据——>结束需求——>例行化。另外,数据仓库是一个不断开发与完善的过程,不断的理解需求、完善系统,包括日常的运维监控、数据备份归档以及元数据的维护与管理等。
以上仅是数仓建设过程中一些通用之法,实际建设中应具体情况具体分析。数仓他是一个复杂且周期很长的项目,他的建设不仅仅是由一个团队去完成的,他需要多个团队甚至多个部门去做支撑与支持。另附数仓总体逻辑示意简图,仅供参考:





