数据仓库基础概述和未来展望

457 阅读8分钟

数据仓库 —— 在当今数据泛滥的情况下,维持一个清晰的数据管理系统变得越来越困难。越来越多的数据源通过不同的软件系统被记录下来。
一个统一的、集中的系统可以促进分析,并确保在一个组织中只存在一个数据真相。

什么是数据仓库系统?

数据仓库系统是通过整合多个异质来源的数据而建立的,除了集中化之外,还执行结构化数据的任务,支持分析报告和结构化决策。
该系统可以进行数据清理以及数据整合和数据合并,不需要交易处理或恢复。

Data Warehousing - The figure shows all other names that the system has.

数据仓库的多种名称

因此,它是一个强大的大数据信息系统,可以集中处理与数据处理有关的一切。

数据仓库的特点

数据仓库提供了几个特点。这样一个信息系统是面向主题的。它不关注当前的操作,因为这些数据是分离的。这意味着,操作数据库的频繁变化不会反映在数据仓库中。因此,重点在于数据的建模和分析。
该系统是时间变量,这意味着所收集的数据是以一定的时间段来确定的,当新的数据被添加时,以前的数据不会被删除。

数据仓库的结构是什么样子的?

这个系统的复杂性随着业务的复杂性而成倍增加。许多与众不同的数据源,即业务流程,提供换算和历史数据。

This figure shows the main principle behind data warehousing simplified.

因此,基本的方法已经被定义,每一个数据仓库系统都应该根据这些方法来结构化。单层、二层和三层。

二层与三层的数据仓库架构

在下文中,我们将阐述三层架构。
这是最常用的结构,通过将应用逻辑转移到中间层,与数据和用户界面完全脱钩。
在两层结构中,应用逻辑要么在客户端的用户界面中,要么在服务器的数据库中。
因此,如果没有中间层,这个系统的可扩展性和灵活性就会降低。其他数据源的整合在这里比较困难。

三层数据仓库架构

三层数据仓库架构是设计的基础,然后在此基础上建立一个具有三层的数据仓库。下图显示了这种结构与常见的组件:

In this schema, the typical three tier data warehouse architecture is presented in a clear and simplified way

然而,各个组件可以有所不同,取决于项目框架。然而,作为一项规则,这些变化并不改变基本结构。

底层

最底层是持久性,它通常位于服务器上。来自各种数据源的数据通过ETL(提取、转换和加载)过程被准备并存储在这里。可以使用工具和其他外部资源来提供数据。
这种持久性可以包括一个关系型数据库系统,但也包括一个多维数据库系统。

将数据加载到仓库

除了不同的组件和架构,数据也可以通过不同的方式传输到信息系统中。

etl elt warehousing 2

如图所示,两个基本流程之间有一个基本的区别。

什么是ELT?

提取、加载和转换,简称ELT,是指从源系统中提取汇总信息并加载到目标方法中。

下图显示了这样一个示例系统。在这种情况下,Hadoop框架处理中央数据管理,而应用程序和分析工具访问未经转换的数据。

warehouse elt 1

数据仓库--提取加载转换

什么是ETL?

在提取、转换和加载(简称ETL)中,数据集首先从源头提取到一个暂存区域,然后通过业务操作对其进行转换或重新格式化,最后才加载到目标或目的数据库或数据仓库。

warehouse etl 1

中间层

一个或多个OLAP(在线分析处理)服务器驻扎在中间数据仓库层。这项技术可以用来创建复杂的预算计划,并以低成本的方式进行分析。因此,在三层数据仓库架构中,作业在顶层产生并被发送到这个中间层。在这里,底层的数据会被访问并进行分析。然后,分析结果被发送到顶层,从而提供给用户,和/或转发到底层,用于存储分析结果的持久性。

什么是OLAP服务器?

基本上,有三种OLAP服务器模型可供区分。
在关系型OLAP(ROLAP)中,对多维数据的操作是基于标准的关系型操作。多维OLAP(MOLAP)直接实现了多维数据的操作。关系型和多维型的混合处理可以由混合型OLAP(HOLAP)来处理。
服务器模型的选择总是取决于最低层的数据组成。

顶层

顶层是三层数据仓库架构的顶端,即前端客户层。它包含查询和报告工具、分析工具和数据挖掘工具,从而为用户提供接口。在这里,他可以生成分析报告,并看一看数据。

术语

然而,一些经常出现的与这个系统有关的术语需要澄清一下。

当提到元数据时,是指数据仓库的一种路线图。在这里,仓库的对象被定义,它就像一个目录。这意味着,决策支持系统通过元数据找到内容。

元数据被存储在元数据仓库中。一个完整的目录,它同时管理着业务元数据,即数据所有权信息、业务定义和变更策略,以及业务元数据.业务元数据指的是数据的时效性是活动的、归档的还是清理的,以及数据线,也就是数据的历史。这包括用于映射操作环境的数据、源数据库及其内容、数据提取、数据分区、清洗、转换规则、数据刷新和清洗规则,还包括求和的算法、维度算法、颗粒度的数据、聚合、求和等等。

所谓的数据立方体代表了多个维度的数据,而数据集市只包含特定群体的数据。

数据仓库类型及其工作方式

所有的数据仓库系统都遵循相同的基本结构,我们在这篇文章中解释了这一点,但可以由不同的组件组成。相应地,它们被类型化了。

基于主机的大型机仓库

基于主机的主机仓库驻扎在一个大体积的数据库上。
除了这个数据库外,元数据还在一个中央元数据库中管理。在这个元数据中,例如,数据源的文件或数据转换规则的信息被存储。

Data Warehouse types -  The figure shows the main Host-Based mainframe warehouse Principle

一般来说,在这个信息系统中运行三个阶段。
选择和洗刷方法在卸货阶段进行。也就是说,适当的数据类型和数据源在这里被确定,数据随后被纠错。
在接下来的转换阶段,数据被翻译成合适的形式。这里也已经指定了访问和存储的规则。
在最后的加载阶段,预处理过的数据集被移到表中。

基于主机的局域网数据仓库

通过这种类型,信息可以从各种来源中提取。支持多个基于LAN的仓库。数据供应可以是集中的,也可以是来自工作组环境的。其规模取决于平台。

This image has an empty alt attribute; its file name is Host-Based_LAN_data_warehouses-1024x724.jpeg

数据仓库 - 基于主机的局域网数据仓库

多阶段数据仓库

在这里,数据在被加载到数据仓库之前会被多次分阶段,最后分布到部门特定的数据集市。

This image has an empty alt attribute; its file name is Multi-Stage_Data_Warehouses-1024x724.jpeg

固定式数据仓库

在固定仓库类型的情况下,来自源头的数据是不会改变的。因此,客户可以直接访问这些数据。

This image has an empty alt attribute; its file name is Stationary_Data_Warehouse-1024x724.jpeg

分布式数据仓库

在分布式仓库系统中,数据基本上是分布的。由于技术或商业原因,这种分离可以发生在本地和全球仓库中。然后,本地层只在本地站点内整合,但也包含历史数据,因此是绝对自主的。这里是大部分操作处理的地方,而全球部分则处理与整个公司有关的数据。

This image has an empty alt attribute; its file name is Distributed_Data_Warehouses-1-1024x724.jpeg

数据仓库还有希望吗?

如今,数据流被大家挂在嘴边,正是因为有了迭代和高度动态的数据源,大型数据仓库系统达到了极限。通常情况下,不需要完整解决方案的小型工具会更有效率。那么,数据仓库系统毕竟是死了吗?不,绝对不是。除了基本的原则,如追求数据的真实性,这可以适用于任何其他软件系统。不过,在很多情况下,数据仓库系统仍然是一个高性能的整体解决方案,可以与数据流管道系统共存。

通过Apache Hive,你可以获得一个免费的Apache数据仓库软件。有了这个软件,你可以轻松实现性能非常好的大数据系统。这里我们收集了关于Hive最重要的信息。