博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据仓库与OLAP技术概述
阅读量:4039 次
发布时间:2019-05-24

本文共 3286 字,大约阅读时间需要 10 分钟。

总述:这部分主要介绍数据挖掘的实现问题,重点关注数据的组织形式、系统框架、相关的设计和名词介绍。不会涉及到非常具体的应用项目,可以当做基础知识科普。

 

  1. 什么是数据仓库
  2. 联机事务处理系统(OLTP)和联机分析处理系统(OLAP)的区别有哪些
  3. 多维数据模型的建立
  4. 如何设计和构造数据仓库
  5. 三层数据仓库结构的案例
  6. 数据仓库后端工具应该提供的能力要在什么范围内
  7. 元数据存储库是什么
  8. OLAP服务器类型有哪些
  9. 数据仓库实现中的问题
  10. 数据仓库、OLAP、OLAM(OLAP挖掘)的关系

 

1.什么是数据仓库

答:数据仓库是一个面向主题的、集成的、时变的、非易失的数据集合,支持管理部门的决策过程。

 

2.联机事务处理系统(OLTP)和联机分析处理系统(OLAP)的区别有哪些

答:OLTP是面向顾客的,关注企业或部门内部当前数据,采用实体-联系数据模型和面向应用的数据库设计,强调并发控制和恢复机制;OLAP是面向市场的,关注的数据来自不同数据库的不同版本,数据量巨大,采用星形或雪花模型和面向主题的数据库设计,大部分是只读操作。

OLTP和OLAP最好不要共用数据库,因为OLTP强调事务处理面向业务,OLAP强调大数据量查询汇总面向市场,两者共享会互相降低对方的使用体验。

 

3.多维数据模型的建立

答:数据立方体运维从多维对数据建模和观察,由维和事实定义。一般来说,维是关于一个组织想要保存记录的透视图或实体。每个维都有一个表与之关联,称为维表。通常,多维数据模型围绕中心主题组织,主题用事实表示,事实是数值的度量。事实表包括事实的名称或度量,以及每个相关维表的码。

最流行的数据仓库数据模型是多维模型,这种模型可以以星形模型、雪花形模型、事实星座模型的形式存在。星形模型是最常见的模型范例,其数据仓库包括:一个大的包含大批数据并且不含冗余的中心表(事实表);一组小的附属表(维表),每个维一个。雪花形模型是星形模型的变种,其中某些维表是规范化的,数据进一步分解到附加的表中,结果模式图形成类似于雪花的形状。雪花形模型减少了冗余但是需要更多的连接操作,这降低了系统性能,所以不如星形模型流行。在复杂的应用中可能需要多个事实表共享维表,这种模型被看做星形模型的汇集,因此也被称作星系模式或事实星座形模型。

数据仓库和数据集市可以采用两种语言原语定义,一种是立方体定义,一种是维定义。从事实表中获取结果需要用正常的SQL即可。

 

4.如何设计和构造数据仓库

答:数据仓库最大的优点在于面向市场,为了能够解决市场问题,数据仓库的设计必须始终以面向市场为导向,如果最后产生的数据仓库是面向业务的,那么数据仓库就是一个失败品。数据仓库的设计需要从四个不同的视角进行考察:自顶向下视图、数据源视图、数据仓库视图、商务查询视图。自动向下视图可以选择数据仓库需要的信息。数据源视图揭示操作数据库系统收集、存储、管理的信息。数据仓库视图包括事实表和维表。商务查询视图从最终用户的角度透视数据仓库中的数据。建立和使用数据仓库需要商务技巧、技术技巧、计划管理技巧。商务技巧是负责提取有用的数据进入数据仓库中,包括数据提取、数据刷新、数据仓库中数据存储和管理。技术技巧是结合市场背景和数据趋势推定出有用的模式并提出管理建议。计划管理技术涉及人员的沟通和管理问题,包括及时提交结果。

数据仓库可以使用自顶向下、自底向上、两者混合方法建立。自顶向下适合有总体设计和规划,清楚了解要面对的商业问题。自底向上以实验和原型开始,在商务建模和技术开发的早期阶段是有用的。从软件工程的观点看,数据仓库的设计和构造包含的步骤有:规划、需求研究、问题分析、仓库设计、数据集成和测试、部署数据仓库。数据仓库作为一种大型软件,一般选用螺旋式方法进行开发,以便控制风险。数据仓库设计过程包含的步骤有:选取待建模的商务处理;选取上午处理的粒度;选取用于每个事实表记录的维;选取事实表中每条记录的度量。最初数据仓库的实现目标应当是详细的、可实现的和可测量的。

5.三层数据仓库结构的案例

答:通常数据仓库采用三层结构:底层是仓库数据服务器,几乎总是关系数据库系统;中间层是OLAP服务器,其典型是将对多维数据操作映射为标准关系操作的关系OLAP模型或者直接实现多维数据和操作的多维OLAP;顶层是前端客户端,主要做查询和数据结果展现。

从结构的角度来看,有三种数据仓库模型:企业仓库、数据集市、虚拟仓库。企业仓库收集了整个组织关于主题的所有信息,可能需要多年的建设,汇聚多个数据源的数据。数据集市包含企业范围数据的一个子集,对于特定的用户群是有用的,范围限于选定主题。数据集市的实现周期一般是以周计。根据数据集市的数据来源不同,数据集市可以分为独立和依赖两类。依赖的数据集市,其数据来自于企业的数据仓库;独立的数据集市,数据来自于一个或多个信息提供者。虚拟仓库是操作数据库视图的集合,不建立真实的数据仓库但是必须在操作数据库服务器有剩余能力的时候才可以斟酌采用。

 

6.数据仓库后端工具应该提供的能力要在什么范围内

答:数据提取、数据清理、数据变换、装入、刷新,还有数据仓库系统管理

 

7.元数据存储库是什么

答:元数据是关于数据的数据。元数据储存库应该包括:数据仓库结构的描述、操作元数据、用于汇总的算法、由操作环境到数据仓库的映射、关于系统性能的数据、商务元数据。在数据仓库中,元数据是定义仓库对象的数据。

 

8.OLAP服务器类型有哪些

答:从逻辑上看,OLAP服务器为商务用户提供来自数据仓库或数据集市的多维数据,不必关系数据如何存放和存放在何处。实际上,OLAP服务器的物理结构和实现必须考虑数据存放问题,所以OLAP服务器的实现类型有ROLAP、MOLAP、HOLAP。

关系OLAP服务器,ROLAP,使用关系的或扩充关系的DBMS存储并管理数据仓库,OLAP中间件支持其余部分。ROLAP服务器包括每个DBMS后端优化,聚集导航逻辑实现,附加工具和服务。ROLAP比MOLAP的数据伸缩性要好。

多维OLAP服务器,MOLAP,通过基于数组的多维存储引擎支持数据的多维视图,将多维视图直接映射到数据立方体数组结构,可以对预计算的汇总数据快速索引。稠密的的数据集使用资源的效率比稀疏的数据集的高,如果遇到稀疏的子立方体,应该采用压缩技术提高利用率。

混合OLAP服务器,HOLAP,结合ROLAP和MOLAP技术,可以获得ROLAP较大的技术可伸缩性和MOLAP的快速计算能力。

特殊SQL服务器,提供高级查询语言和查询处理,在只读模式下对星形和雪花形模式支持SQL查询。

 

9.数据仓库实现中的问题

答:数据立方体预计算的主要挑战是维灾难,特别是数据立方体中的维度非常多并且与维度相关的概念非常非常多的时候。我们假设数据立方体有m个维度,概念分层是n层,那么如果不做限制,最终计算出来的数值是n个m的组合数相乘,这是一种指数级的数量增长。我们称呼这种情况为维灾难。为了解决这个问题,我们在做数据立方体的预计算时,需要选择部分维度的组合进行预计算,这叫做部分物化。部分物化会对数据仓库中数据的装入、刷新、计算等有影响,还要考虑预计算的效率、机器的性能限制等问题。

索引OLAP数据是查询OLAP数据非常重要的一项服务,利用维的概念,使用多维向量的表示方法的位图索引是非常流行的一种方式。连接索引也是非常流行的方式,特事是在关系数据库的查询中,连接有助于关联数据来源。

OLAP查询的有效处理需要确定哪些操作应当在可利用的方体上执行、哪些相关操作应当使用哪些物化的方体。除了这些之外,在实际选用操作和方体的时候,要更具方体的数据聚集程度、适合的操作代价、操作性能要求进行平衡。

 

10.数据仓库、OLAP、OLAM(OLAP挖掘)的关系

答:数据仓库应用主要是信息处理、分析处理、数据挖掘。OLAP是数据汇总和聚集的工具,可以帮助简化数据分析。数据挖掘是自动地发现隐藏在大量数据中隐含模式和有趣知识。OLAM是OLAP和数据挖掘的结合体。

转载地址:http://mmpdi.baihongyu.com/

你可能感兴趣的文章
CocoaPods实践之制作篇
查看>>
[Mac]Mac 操作系统 常见技巧
查看>>
苹果Swift编程语言入门教程【中文版】
查看>>
捕鱼忍者(ninja fishing)之游戏指南+游戏攻略+游戏体验
查看>>
iphone开发基础之objective-c学习
查看>>
iphone开发之SDK研究(待续)
查看>>
计算机网络复习要点
查看>>
Variable property attributes or Modifiers in iOS
查看>>
NSNotificationCenter 用法总结
查看>>
C primer plus 基础总结(一)
查看>>
剑指offer算法题分析与整理(一)
查看>>
剑指offer算法题分析与整理(三)
查看>>
Ubuntu 13.10使用fcitx输入法
查看>>
pidgin-lwqq 安装
查看>>
mint/ubuntu安装搜狗输入法
查看>>
C++动态申请数组和参数传递问题
查看>>
opencv学习——在MFC中读取和显示图像
查看>>
retext出现Could not parse file contents, check if you have the necessary module installed解决方案
查看>>
pyQt不同窗体间的值传递(一)——对话框关闭时返回值给主窗口
查看>>
linux mint下使用外部SMTP(如网易yeah.net)发邮件
查看>>