三层数据仓库架构

数据仓库通常具有三级(层)架构, 其中包括:

  1. 底层(数据仓库服务器)
  2. 中间层(OLAP服务器)
  3. 顶层(前端工具)。
由数据仓库服务器组成的底层, 该服务器几乎始终是RDBMS。它可能包括几个专门的数据集市和一个元数据存储库。
使用称为网关的应用程序接口提取来自运营数据库和外部源的数据(例如外部顾问提供的用户配置文件数据)。底层DBMS提供了一个网关, 该网关允许客户程序生成要在服务器上执行的SQL代码。
网关的示例包括Microsoft提供的ODBC(开放数据库连接)和OLE-DB(数据库的开放链接和嵌入)以及JDBC(Java数据库连接)。
三层数据仓库架构

文章图片
由OLAP服务器组成的中间层, 用于快速查询数据仓库。
OLAP服务器使用以下任一方式实现
(1)关系OLAP(ROLAP)模型, 即扩展的关系DBMS, 它将多维数据上的功能映射到标准关系操作。
(2)多维OLAP(MOLAP)模型, 即直接实现多维信息和操作的特定目的服务器。
顶层, 包含用于显示OLAP提供的结果的前端工具, 以及用于OLAP生成的数据的数据挖掘的其他工具。
整体数据仓库架构如图所示:
三层数据仓库架构

文章图片
元数据存储库存储定义DW对象的信息。它包含有关中层和顶层应用程序的以下参数和信息:
  1. DW结构的描述, 包括仓库架构, 维度, 层次结构, 数据集市位置和内容等。
  2. 操作元数据, 通常描述存储数据的币种级别(即活动, 已归档或清除)以及仓库监控信息(即使用情况统计信息, 错误报告, 审计等)。
  3. 系统性能数据, 包括索引, 用于改善数据访问和检索性能。
  4. 有关来自操作数据库的映射的信息, 该数据库提供了源RDBMS及其内容, 清理和转换规则等。
  5. 汇总算法, 预定义查询和报告业务数据, 其中包括业务术语和定义, 所有权信息等。
数据仓库原理
三层数据仓库架构

文章图片
负载表现
数据仓库要求在狭窄的时间范围内定期增加新数据的加载;加载过程的性能应该以每小时数亿行和千兆字节来衡量, 并且不能人为地限制数据业务量。
负载处理
【三层数据仓库架构】必须采取许多阶段将新数据或更新数据加载到数据仓库中, 包括数据转换, 过滤, 重新格式化, 建立索引和元数据更新。
数据质量管理
基于事实的管理要求最高的数据质量。尽管有“肮脏”的来源和庞大的数据库规模, 该仓库仍可确保本地一致性, 全局一致性和参照完整性。
查询效果
基于事实的管理绝不能因数据仓库RDBMS的性能而减慢;大型, 复杂的查询必须在几秒钟内完成, 而不是几天。
TB级可伸缩性
数据仓库的大小正以惊人的速度增长。如今, 这些数据仓库的大小从几千兆字节到几百兆字节不等。

    推荐阅读