数据仓库和OLAP技术回顾综述
来源:互联网 发布:淘宝付款方式怎么更改 编辑:程序博客网 时间:2024/05/16 07:26
1. Introduction
宽泛的讲,数据仓库是一种数据库,它与单位的操作数据库分别维护。数据仓库系统允许将各种应用系统集成在一起,为统一的历史数据分析提供坚实的平台,对信息处理提供支持。
Data warehousing is acollection of decision support technologies, aimed at enabling the knowledgeworker(executive, manager, analyst) to make better and faster decisions.
A data warehouse is a “subject-oriented,integrated, time-varying, non-volatile collection of data that is usedprimarily in organizational decision making”(William H. Inmon, 1996)
注意区分data warehouse(数据仓库)和 datawarehousing(构建和使用数据仓库的过程)。
四个关键字,面向主题的,集成的,时变的,非易失的,将数据仓库与其他数据存储系统相区别。
面向主题:数据仓库关注决策者的数据建模与分析;集成的:构造数据仓库是将多个异构数据源继承在一起;时变的:数据存储从历史的角度(如过去的5到10年)提供信息;非易失的:数据仓库总是物理的分离存放数据(它只需要两种数据访问操作:数据的初始化装入和数据访问)
数据仓库支持联机分析处理(on-line analytical processing),这有别于操作数据库所支持的联机事务处理(on-line transaction processing)。
注意区分OLTP与OLAP:
联机操作数据库系统的主要任务是执行联机事务和查询处理。因此OLTP是面向顾客的(如学生查成绩),通常管理当前数据,采用ER模型和面向应用的数据库设计,访问源主要由短的原子事务组成。
OLAP则是面向知识工人的,用于进行数据分析,OLAP系统管理着大量历史数据,提供汇总和聚集机制,通常采用星形和雪花模型和面向主题的数据库设计,对OLAP系统的访问大部分是只读操作。因此,查询吞吐量和响应时间要比事务吞吐量更重要。
为了便于进行复杂的分析与可视化,数据仓库中的数据通常进行多维建模。并且维度是有层次关系的,如时间层次day-month-quarter-year,产品层次product-category-industry。
OLAP operations includerollup (increasing the level of aggregation) and drill-down (decreasing the levelof aggregation or increasing detail) along one or more dimension hierarchies,slice_and_dice (selection and projection), and pivot(re-orienting themultidimensional view of data).
数据仓库可以在标准或扩展的关系型数据库管理系统上进行实现,称为关系型OLAP(ROLAP)服务器。相比,多维OLAP(MOLAP)服务器则使用特殊的数据结构直接存储多维数据。
2.体系结构和端到端的处理
图1:数据仓库体系结构图
图2:一张更易读的数据仓库体系结构图
通常采用三层体系结构:前端工具(顶层)-OLAP服务器(中间层)-数据仓库服务器(底层)。
底层的数据仓库服务器通常是一个关系数据库系统。中间层OLAP服务器,典型实现为ROLAP模型或MOLAP模型。顶层为前端客户端,用于数据分析和挖掘等(如趋势分析、预测)。
3.后端工具和实用程序
后端工具用于进行数据的提取、清理、装入与刷新。数据提取,通常由多个异构的外部数据源收集数据;数据清理,检测数据中的错误,可能是修正它们的作物;数据装入,排序、汇总、合并、计算视图、检查完整性、并建立索引和划分;刷新,传播由数据源到数据仓库的更新。
4.概念模型和前端工具
In a multidimensional datamodel, there is a set of numeric measures that are the objects of analysis.Examples of such measures are sales, budget, revenue, inventory, ROI. Each ofthe numeric measures depends on a set of dimensions, which provide the contextfor the measure. For example, the dimensions associated with a sale amount canbe the city, product name, and the date when the sale was made. Each dimensionis described by a set of attributes.
图3:多维数据模型
5.数据库设计方法
这里我们讨论影响数据多维试图的关系数据库模式的设计。大部分的数据仓库使用星形模式(star schema)来表示多维数据模型。数据库包括一张事实表(fact table),事实表包含着所有的维,每项使用指针指向各个维表。每个维表中不同的列表示着该维的不同属性。
图4:星形模式举例
雪花模式(snowflakeschema)是星形模式的变种,其中某些维表被规范化,因而把数据进一步分解到附加的表中。雪花模式的维表可能是规范化的形式,一遍减少冗余,这种表易于维护,并节省存储空间。
图5:雪花模式举例
复杂的应用可能需要多个事实表共享维表,这种模式可以看作星形模式的汇集,因此称为事实星座(fact constellation)。
6.索引技术
数据仓库可能包含着大量的数据,因此对查询响应的优化是必要的。首先,数据仓库使用冗余结构,如索引和物化视图(materialized views)。另外,可使用并行化进行查询响应时间的优化。可以使用位图索引和连接索引对OLAP数据进行索引。
索引结构
位图索引(bitmapindexing),位图索引时recordid(RID)列表的一种替代表示。连接索引(join indexing)方法的流行源于它在关系数据库查询处理方面的应用。
图6:位图索引举例
物化方法和构造OLAP索引结构的目的是加快数据立方体查询处理的速度。
- 数据仓库和OLAP技术回顾综述
- 数据仓库和OLAP技术回顾综述
- 数据仓库和OLAP技术概述
- 数据仓库和OLAP
- 数据仓库(十):OLAP技术
- 数据挖掘-第三课-数据仓库和数据挖掘的OLAP技术
- 关于数据仓库和OLAP的问题!
- 《数据挖掘概念与技术》学习笔记第2章(2/10)数据仓库和数据挖掘的OLAP技术
- 数据仓库,数据挖掘,OLAP,BI等系统技术深度建设
- 数据仓库、OLAP和数据挖掘的比较分析
- 数据仓库、OLAP和数据挖掘的比较分析
- 数据仓库、OLAP和数据挖掘的比较分析
- 数据仓库与OLAP
- 数据仓库及OLAP分析
- 数据仓库之OLAP
- OLAP OLTP 数据仓库
- OLAP技术
- 【读书笔记-数据挖掘概念与技术】数据仓库与联机分析处理(OLAP)
- SSH 显示中文乱码
- Unix高级编程实例编译方法
- 寒冰王座
- 《史玉柱自序》书摘 谈游戏和营销
- 自己写一个UISwitch
- 数据仓库和OLAP技术回顾综述
- NOVA V3 API Extension Framework分析
- Hat's Fibonacci
- AndroidOOM常见的几种情况及解决办法
- Boost之内存管理学习(一)
- 统计难题
- Android 解析gzip格式数据
- 阿里云添加swap
- 大四下的第1本书《我把一切告诉你》2014/2/10