热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

二、数据仓库和数据挖掘的OLAP技术

数据仓库和数据挖掘的OLAP技术引言一、什么是数据仓库二、数据仓库的关键特征2.1、面向主题2.2、数据集成2.3、随时间而变化2.4、数据不易丢失三、数据仓库的构建和使用四、数据


数据仓库和数据挖掘的OLAP技术

  • 引言
  • 一、什么是数据仓库
  • 二、数据仓库的关键特征
    • 2.1、面向主题
    • 2.2、数据集成
    • 2.3、随时间而变化
    • 2.4、数据不易丢失
  • 三、数据仓库的构建和使用
  • 四、数据仓库与操作数据库系统
  • 五、多维数据模型


引言


  • 数据仓库中的数据清理和数据集成,是数据挖掘的重要数据预处理步骤
  • 数据仓库提供OLAP工具,可用于不同粒度的数据分析
  • 很多数据挖掘功能都可以和OLAP操作集成,以提供不同概念层上的知识发现
    • 分类
    • 预测
    • 关联
    • 聚集

一、什么是数据仓库

数据仓库的定义很多,但却很难有一种严格的定义:


  • 它是一个提供决策支持功能的数据库,它与公司的操作数据库分开维护。
  • 为统一的历史数据分析提供坚实的平台,对信息处理提供支持

数据仓库区别于其他数据存储系统:
“数据仓库是一个面向主题的、集成的、随时间而变化的、不容易丢失的数据集合,支持管理部门的决策过程.”—W. H. Inmon


二、数据仓库的关键特征


2.1、面向主题

面向主题,是数据仓库显著区别于关系数据库系统的一个特征


  • 围绕一些主题,如顾客、供应商、产品等
  • 关注决策者的数据建模与分析,而不是集中于组织机构的日常操作和事务处理。
  • 排除对于决策无用的数据,提供特定主题的简明视图。

2.2、数据集成

一个数据仓库是通过集成多个异种数据源来构造的。


  • 关系数据库,一般文件,联机事务处理记录

使用数据清理和数据集成技术。


  • 确保命名约定、编码结构、属性度量等的一致性。
  • 当数据被移到数据仓库时,它们要经过转化。

2.3、随时间而变化

数据仓库是从历史的角度提供信息


  • 数据仓库的时间范围比操作数据库系统要长的多。
    • 操作数据库系统: 主要保存当前数据。
    • 数据仓库:从历史的角度提供信息(比如过去 5-10 年)
  • 数据仓库中的每一个关键结构都隐式或显式地包含时间元素,而操作数据库中的 关键结构可能就不包括时间元素。

2.4、数据不易丢失

尽管数据仓库中的数据来自于操作数据库,但他们却是在物理上分离保存的。


  • 操作数据库的更新操作不会出现在数据仓库环境下。
  • 不需要事务处理,恢复,和并发控制等机制
  • 只需要两种数据访问: 数据的初始转载和数据访问(读操作)

三、数据仓库的构建和使用

数据仓库的构建包括一系列的数据预处理过程


  • 数据清理
  • 数据集成
  • 数据变换

数据仓库的使用热点是商业决策行为,例如:


  • 增加客户聚焦
  • 产品重定位
  • 寻找获利点
  • 客户关系管理

四、数据仓库与操作数据库系统

操作数据库系统的主要任务是联机事务处理OLTP


  • 日常操作: 购买,库存,银行,制造,工资,注册,记帐等

数据仓库的主要任务是联机分析处理OLAP


  • 数据分析和决策支持,支持以不同的形式显示数据以满足不同的用户需要
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    以上三点OLAP与OLTP的区别个人认为写反了,后续订正

为什么需要一个分离的数据仓库?


  • 提高两个系统的性能
    • DBMS是为OLTP而设计的:存储方式,索引, 并发控制, 恢复
    • 数据仓库是为OLAP而设计:复杂的 OLAP查询, 多维视图,汇总
  • 不同的功能和不同的数据:
    • 历史数据: 决策支持需要历史数据,而这些数据在操作数据库中一般不会去维护
    • 数据汇总:决策支持需要将来自异种源的数据统一(如聚集和汇总)
    • 数据质量: 不同的源使用不一致的数据表示、编码和格式,对这些数据进行有效的分析需要将他们转化后进行集成

五、多维数据模型


推荐阅读
  • Python库在GIS与三维可视化中的应用
    Python库极大地扩展了GIS的能力,使其能够执行复杂的数据科学任务。本文探讨了几个关键的Python库,这些库不仅增强了GIS的核心功能,还推动了地理信息系统向更高层次的应用发展。 ... [详细]
  • 大数据核心技术解析
    本文深入探讨了大数据技术的关键领域,包括数据的收集、预处理、存储管理、以及分析挖掘等方面,旨在提供一个全面的技术框架理解。 ... [详细]
  • 深入解析:主流开源分布式文件系统综述
    本文详细探讨了几款主流的开源分布式文件系统,包括HDFS、MooseFS、Lustre、GlusterFS和CephFS,重点分析了它们的元数据管理和数据一致性机制,旨在为读者提供深入的技术见解。 ... [详细]
  • 数据集成策略:ETL与ELT架构对比及工具选择
    随着企业信息化的深入发展,‘数据孤岛’问题日益突出,阻碍了数据的有效利用与整合。本文探讨了如何通过构建数据仓库解决这一问题,重点分析了ETL与ELT两种数据处理架构的特点及适用场景,为企业选择合适的ETL工具提供了指导。 ... [详细]
  • 解决getallheaders函数导致的500错误及8种服务器性能优化策略
    本文探讨了解决getallheaders函数引起的服务器500错误的方法,并介绍八种有效的服务器性能优化技术,包括内存数据库的应用、Spark RDD的使用、缓存策略的实施、SSD的引入、数据库优化、IO模型的选择、多核处理策略以及分布式部署方案。 ... [详细]
  • 本文旨在分享将Hadoop集群从Windows环境迁移到Linux环境过程中遇到的技术难题及其解决方案,以帮助同行或未来的学习者避免类似问题。 ... [详细]
  • matlab gamma函数_MATLAB做晶体结构图(固体物理)
    写在前面最近在复习考研复试《固体物理》这一门课,去年学的内容已经忘干净了,所以就翻开前几页。突然看到了面心立方和体心立方结构图,想到了去年 ... [详细]
  • MySQL锁机制详解
    本文深入探讨了MySQL中的锁机制,包括表级锁、行级锁以及元数据锁,通过实例详细解释了各种锁的工作原理及其应用场景。同时,文章还介绍了如何通过锁来优化数据库性能,避免常见的并发问题。 ... [详细]
  • 本文探讨了大型服务端开发过程中常见的几个误区,包括异步任务处理不当、日志同步模式使用、网络操作未设置超时、缓存命中率及响应时间未统计、单一缓存模式、分布式缓存加锁不当以及团队管理上的误区,旨在帮助开发者避免这些常见错误。 ... [详细]
  • 本文探讨了如何利用SqlDependency执行复杂的SQL查询,并确保在多线程环境下的安全性与效率。 ... [详细]
  • EasyMock实战指南
    本文介绍了如何使用EasyMock进行单元测试,特别是当测试对象的合作者依赖于外部资源或尚未实现时。通过具体的示例,展示了EasyMock在模拟对象行为方面的强大功能。 ... [详细]
  • 如何处理MySQL命令行中文乱码问题
    本文详细探讨了MySQL命令行中出现中文乱码的原因及解决方案,通过调整配置文件和执行特定SQL命令来确保字符集正确设置,为用户提供了一个有效的解决路径。 ... [详细]
  • 本文详细介绍了在使用Socket进行网络编程时,遇到链接器错误`undefined reference to WSAStartup@8`的解决方案,适用于多种开发环境。 ... [详细]
  • 深入解析Android中的SQLite数据库使用
    本文详细介绍了如何在Android应用中使用SQLite数据库进行数据存储。通过自定义类继承SQLiteOpenHelper,实现数据库的创建与版本管理,并提供了具体的学生信息管理示例代码。 ... [详细]
  • 本文探讨了Web开发与游戏开发之间的主要区别,旨在帮助开发者更好地理解两种开发领域的特性和需求。文章基于作者的实际经验和网络资料整理而成。 ... [详细]
author-avatar
路人不会编程
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有