数据仓库 - 系统进程
-
简述
我们有固定数量的操作要应用于操作数据库,我们有明确定义的技术,例如use normalized data, keep table small等。这些技术适用于交付解决方案。但是在决策支持系统的情况下,我们不知道将来需要执行什么查询和操作。因此,应用于操作数据库的技术不适用于数据仓库。在本章中,我们将讨论如何在 Unix 和关系数据库等顶级开放系统技术上构建数据仓库解决方案。 -
数据仓库中的流程
有四个主要过程有助于数据仓库 -- 提取和加载数据。
- 清理和转换数据。
- 备份和归档数据。
- 管理查询并将它们定向到适当的数据源。
-
提取和加载过程
数据提取从源系统中获取数据。数据加载获取提取的数据并将其加载到数据仓库中。注意− 在将数据加载到数据仓库之前,必须重构从外部源提取的信息。控制过程
控制过程涉及确定何时开始数据提取和数据一致性检查。控制过程确保工具、逻辑模块和程序以正确的顺序和正确的时间执行。何时开始提取
数据在提取时需要处于一致状态,即数据仓库应该向用户表示信息的单一、一致版本。例如,在电信部门的客户画像数据仓库中,将客户数据库中周三晚上 8 点的客户列表与截至周二晚上 8 点的客户订阅事件合并是不合逻辑的。这意味着我们正在寻找没有关联订阅的客户。加载数据
提取数据后,它被加载到一个临时数据存储中,在那里它被清理并保持一致。注意− 只有当所有数据源都已加载到临时数据存储中时,才会执行一致性检查。 -
清洁和改造过程
一旦数据被提取并加载到临时数据存储中,就该执行清理和转换了。以下是清洁和改造所涉及的步骤列表 -- 清理加载的数据并将其转换为结构
- 分区数据
- 聚合
清理加载的数据并将其转换为结构
清理和转换加载的数据有助于加快查询速度。可以通过使数据一致来完成 -- 本身内。
- 与同一数据源中的其他数据。
- 与其他源系统中的数据。
- 与仓库中存在的现有数据。
转换涉及将源数据转换为结构。结构化数据可提高查询性能并降低运营成本。必须转换数据仓库中包含的数据以支持性能要求并控制持续的运营成本。分区数据
它将优化硬件性能并简化数据仓库的管理。这里我们将每个事实表划分为多个单独的分区。聚合
需要聚合来加速常见查询。聚合依赖于这样一个事实,即最常见的查询将分析详细数据的子集或聚合。 -
备份和存档数据
为了在数据丢失、软件故障或硬件故障的情况下恢复数据,有必要定期备份。存档涉及以允许在需要时快速恢复的格式从系统中删除旧数据。例如,在零售销售分析数据仓库中,可能要求数据保存 3 年,并在线保存最近 6 个月的数据。在这种情况下,通常需要能够对今年和去年进行月环比比较。在这种情况下,我们需要从存档中恢复一些数据。 -
查询管理流程
这个过程执行以下功能 --
管理查询。
-
有助于加快查询的执行时间。
-
将查询定向到其最有效的数据源。
-
确保以最有效的方式使用所有系统资源。
-
监视实际的查询配置文件。
仓库管理流程使用在此流程中生成的信息来确定要生成哪些聚合。在将信息定期加载到数据仓库期间,此过程通常不会运行。 -