admin管理员组文章数量:1122851
数据仓库
数据仓库-架构
- 基本架构
- 主要数据仓库架构
- 数据集市架构
- 独立数据集市架构
- 另外一种数据集市是从属数据集市
- Inmon企业信息工厂架构
- Kimball数据仓库架构
- 混合型数据仓库架构
- 操作数据存储
- ODS作用
基本架构
架构是什么?
在软件行业普遍接受的架构定义是,指系统的一个或多个结构,包括软件的构建,构建外部可以看到的属性以及他们之间的相互关系。
把数据仓库架构理解成构成数据仓库的组件及其之间的关系。
数据仓库架构
如图
操作型系统由各种形式业务数据组成
这其中可能有关系数据库、TXT、CSV、HTML、XML、还可能有外部系统的数据、网络爬虫等。
数据可能是结构化、半结构化、非结构化的。
这些数据经过抽取、转换、装载(ETL)过程进入数据仓库系统。
抽取过程负责从操作型系统获取数据,该过程一般不做汇总。但是会按照主题进行集成。
物理上是将操作型系统的数据全量或增量复制到数据仓库系统的RDS中。RDS:RAW DATA STORES 原始数据存储。
转换装载过程并将数据进行清洗、过滤、汇总、统一格式化等一系列转换操作,使得数据转为适合查询的格式,然后就将数据装载进入数据仓库系统的TDS中。TDS:TRANSFORMD DATA STORES 转换后的数据存储。
RDS:将原始数据存储到数据仓库中,用户可以查询RDS里的数据而不必影响业务系统的正常运行,起到了操作型数据存储ODS的作用。
TDS:转换后的数据存储,真正的数据仓库中的数据。大量的用户在转换后的数据集上处理他们的日常查询。
在传统数据仓库中,原始数据存储通常是本地文件系统,被组织进相应的目录中,这些目录是基于数据从哪里抽取或何时抽取建立。转换后的数据存储一般是某种关系型数据库。
自动化调度组件的作用是自动定期重复执行ETL过程。
传统的数据仓库一般利用操作系统自带的调度功能,如linux的cron windows的计划任务实现作业自动执行。
数据目录有时也被称为元数据存储,它可以提供一份数据仓库中数据的清单。
查询引擎组件复制实际执行用户查询。传统数据仓库中,它可能是存储转换后数据的查询引擎,还可能是以固定时间间隔向其导入数据的OLAP立方体,如Essbase cube。
用户界面指的是最终用户所使用的接口程序。可能是GUI软件,如BI套件中的客户端软件,也可能就是一个浏览器。
主要数据仓库架构
在数据仓库技术演化过程中,产生几种主要机构方法,包括数据集市架构,Inmon企业信息工厂架构,Kimball数据仓库架构和混合型数据仓库架构。
数据集市架构
数据集市是按照主题域组织的数据集合,用于支持部门级的决策。
用两种类型的数据集市:独立数据集市和从属数据集市。
独立数据集市几种于部门所关心的单一主题域,数据以部门为基础部署。无需考虑企业级别的信息共享与集成。如制造部门、人力资源部门等。一个独立的数据集市的设计既可以使用实体关系模型、又可以使用多维模型。
一个典型的数据集市模型架构如图。
优点:周期短、见效快。
缺点:跨部门分析和不同部门数据存在歧义很难在部门间进行比较。
独立数据集市架构
另外一种数据集市是从属数据集市
如Bill Inmon所说的,从属数据集市的数据来源于数据仓库。
数据仓库里的数据经过整合、重构、汇总后传递给从属数据集市。从属数据集市的架构如图。
建立从属数据集市的好处。
性能:当数据仓库的查询性能出现问题,可以考虑建立几个从属数据集市,将查询从数据仓库移出到数据集市。
安全:每个部门可以控制自己的数据。
数据一致:由于数据均来源于数据仓库,消除了部门间的数据不一致的问题。
Inmon企业信息工厂架构
Inmon企业信息工厂架构如图。
应用系统:用来支撑业务的操作型系统。
为数据仓库提供数据。
ETL过程:从操作系统抽取数据、转换数据、最终装载到数据仓库中。ETL是周期性运行的批处理过程。
企业级数据仓库:是该架构的核心组件。企业级数据仓库是一个细节数据的集成资源库。数据以最低粒度级别被捕获,存储在满足三范式设计的关系数据库中。
部门级数据集市:面向主题数据的部门级视图,数据从企业级数据仓库获取。数据进入部门数据集市可能进行聚合。
数据集市使用多维数据模型设计。用于数据分析。
重要一点,所有的报表工具、BI工具、或其他数据分析应用都是从数据集市查询数据,而不是直接查询企业级数据仓库。
Kimball数据仓库架构
Kimball与Inmon两种架构的主要区别在于核心数据仓库的设计和建立。
kimball的数据仓库包含高粒度的企业数据,使用多维模型设计。
意味着数据仓库有星型模式的维度表和事实表构成。分析系统或报表工具可以直接访问多维数据仓库里的数据。
这里的数据集市是一个逻辑概念,只是多维数据仓库中的一个主题划分,并没有自己的物理存储。也可以说是虚拟的数据集市。
混合型数据仓库架构
联合使用Inmon和Kimball两种架构。
将Inmon方法中的数据集市部分替换成了一个多维数据仓库。而数据集市是多维数据仓库上的逻辑视图。使用这种架构的好处是,既可以利用规范化设计消除数据冗余,保证数据的粒度足够细,有可以利用多维结构更灵活地在企业级实现报表和分析。
操作数据存储
操作数据存储又称为ODS 是Operational Data Store的简写。
定义:面向主题的、集成的、可变的、当前细节的数据集合。
用于支持企业对于即时性、操作性的、集成的全体信息的需求。
操作数据存储在某些方面有类似于数据仓库的特点,在另一些方面有显著不同于数据仓库。
- 像数据仓库一样,面向主题的
- 完全集成的
- 数据是当前的,于数据仓库存储历史数据的性质明显不同。ODS具有最少的历史数据(一般30-60天),而极可能接近实时地展示数据的状态。
- 数据是可更新的,这与静态数据仓库又一个很大的区别。ODS如同一个事务处理系统,当心得数据流进ODS,受其影响的字段被心信息覆盖。
- 数据几乎完全是细节数据,仅有少量动态聚集或汇总数据。通常将ODS设计成包含事务级的数据,即包含该主题域中最低粒度级别的数据。
- 在数据仓库中,几乎没有针对其本身的报表,报表均放到数据集市中完成。与此不同,在ODS中,业务用户频繁地直接访问ODS
ODS作用
- 充当业务系统与数据仓库之间的过渡区。
- 转移部分业务系统细节查询的功能。
- 完成数据仓库中不能完成的一些功能。
本文标签: 数据仓库
版权声明:本文标题:数据仓库 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1687952201a161284.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论