版权声明:本文为博主原创文章,未经博主同意不得转载。 https://blog.csdn.net/wl101yjx/article/details/31015367

本文简要总结以下两个问题,旨在高速理解“数据仓库”

1、什么是“数据仓库”?

2、“数据仓库”与“数据库”的差别?

以下做详细阐述:

1、什么是“数据仓库”?

“一个数据仓库通常是一个面向主题的集成的与时间相关不可改动的(能够加入)数据集合。它用于对管理决策过程的支持。”

此句话包括几个关键点:面向主题的、集成的、与时间相关的、不可改动的。详细含义欢迎留言交流。

2、数据仓库与数据库的主要差别 

企业的数据处理大致分为两类:

一类是操作型处理。也称为联机事务处理,它是针对详细业务在数据库联机的日常操作,通常对少数记录进行查询、改动。

还有一类是分析型处理,一般针对某些主题的历史数据进行分析,支持管理决策。

 主要差别例如以下:

(1)数据库是面向事务的设计。数据仓库是面向主题设计的。

(2)数据库一般存储在线交易数据,数据仓库存储的通常是历史数据。

(3)数据库设计是尽量避免冗余,一般採用符合范式的规则来设计;数据仓库在设计是有意引入冗余,採用反范式的方式来设计。

(4)数据库是为捕获数据而设计。数据仓库是为分析数据而设计。它的两个主要的元素是维表和事实表。

维是看问题的角度,比方时间,部门。维表放的就是这些东西的定义。事实表里放着要查询的数据。同一时候有维的ID。

        单从概念上讲,有些晦涩。不论什么技术都是为应用服务的。结合应用能够非常easy地理解。以银行业务为例。数据库是事务系统的数据平台。客户在银行做的每笔交易都会写入数据库,被记录下来,这里。能够简单地理解为用数据库记帐。

数据仓库是分析系统的数据平台。它从事务系统获取数据,并做汇总、加工,为决策者提供决策的根据。

比方。某银行某分行一个月发生多少交易,该分行当前存款剩余金额是多少。

假设存款又多。消费交易又多。那么该地区就有必要设立ATM了。

  显然。银行的交易量是巨大的,通常以百万甚至千万次来计算。事务系统是实时的,这就要求时效性。客户存一笔钱须要几十秒是无法忍受的,这就要求数据库仅仅能存储非常短一段时间的数据。

而分析系统是事后的。它要提供关注时间段内全部的有效数据。这些数据是海量的。汇总计算起来也要慢一些,可是,仅仅要能够提供有效的分析数据就达到目的了。

附“数据仓库”示意图例如以下:

简要总结 数据仓库VS数据库的更多相关文章

  1. 数据仓库 VS 数据库

    数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented).集成的(Integrate).相对稳定的(Non-Volatile).反映历史变化(Time Varian ...

  2. 【clickhouse专栏】数据库、数据仓库之间的区别与联系

    从本篇文章开始,笔者打算写一个系列的<clickhouse专栏>,其全称是Click Stream,Data WareHouse,简称ClickHouse.从其全称中的"Data ...

  3. 数据库技术丛书:SQL Server 2016 从入门到实战(视频教学版) PDF

    1:书籍下载方式: SQL Server2016从入门到实战 PDF 下载  链接:https://pan.baidu.com/s/1sWZjdud4RosPyg8sUBaqsQ 密码:8z7w 学习 ...

  4. 对Oracle 、SQL Server、MySQL、PostgreSQL数据库优缺点分析

    对Oracle .SQL Server.MySQL.PostgreSQL数据库优缺点分析 Oracle Database Oracle Database,又名Oracle RDBMS,或简称Oracl ...

  5. Oracle 数据库安装

    下载 www.oracle.com ->Downloads -> Oracle Database 安装: 解压到同一文件夹下 仅安装数据库软件 单实例数据库安装 企业版 oracle基目录 ...

  6. 数据仓库之ETL漫谈

    ETL,Extraction-Transformation-Loading的缩写,中文名称为数据抽取.转换和加载. 大多数据仓库的数据架构可以概括为: 数据源-->ODS(操作型数据存储)--& ...

  7. (转载)MySQL默认INFORMATION_SCHEMA,MySQL,TEST三个数据库用途

    (转载)http://www.45it.com/database/201204/29390.htm 本文简要说明了MySQL数据库安装好后自带的INFORMATION_SCHEMA,MySQL,TES ...

  8. MySQL默认INFORMATION_SCHEMA,MySQL,TEST三个数据库用途

    本文简要说明了MySQL数据库安装好后自带的INFORMATION_SCHEMA,MySQL,TEST三个数据库的用途. 第一个数据库INFORMATION_SCHEMA:提供了访问数据库元数据的方式 ...

  9. WebSphere--用户简要表

     Application Server 含有 com.ibm.servlet.personalization.userprofile 软件包中的类,这些类使维护关于 Web 站点访问者的持久信息和利用 ...

随机推荐

  1. 使用 Python 管理 Azure:基础配置

    Azure 提供了丰富的 Python SDK 来对 Azure 进行开发管理,包括使用 Azure 的开源框架在 Azure 上创建 web 应用程序,对 Azure 的虚拟机,存储等进行管理,本系 ...

  2. [javaEE] 三层架构案例-用户模块(一)

    用户注册登录注销 Servlet+JSP+javaBean+dom4j 分层结构: com.tsh.web com.tsh.service com.tsh.dao com.tsh.domain com ...

  3. 用c+libcurl+PCRE写爬虫2--好用的正则表达式

    写爬虫最重要的就是正则表达式的处理(爬出来的数据的筛选,清洗,过滤等操作). 通过一篇文章 http://blog.csdn.net/quaful/article/details/6460880 来确 ...

  4. mysql case when的使用

    SELECT (CASE payType WHEN 1 THEN '微信' WHEN 2 THEN '支付宝' ELSE '余额' END) as type, count(payType) FROM ...

  5. Luogu3403: 跳楼机

    题面 传送门 Sol 有一个显然的想法 处理出\(y, z\)能凑出的高度 然后这些高度凑一些\(x\)就可以得到其它的高度 那么可以把这些\(y, z\)凑出的高度对\(x\)取模,其它的用\(x\ ...

  6. BZOJ4698: Sdoi2008 Sandy的卡片(后缀数组 二分)

    题意 题目链接 Sol 不要问我为什么发两篇blog,就是为了骗访问量 后缀数组的也比较好想,先把所有位置差分,然后在height数组中二分就行了 数据好水啊 // luogu-judger-enab ...

  7. React Native之React速学教程(上)

    概述 本篇为<React Native之React速学教程>的第一篇.本篇将从React的特点.如何使用React.JSX语法.组件(Component)以及组件的属性,状态等方面进行讲解 ...

  8. jQuery Callback函数的用法

    在动画100%完成后,调用callback函数 语法如下 $(selector).hide(speed, callback); <!-- html部分 --> <button> ...

  9. 统计Redis中各种数据的大小

    如果 MySQL 数据库比较大的话,很容易就能查出是哪些表占用的空间: 不过如果 Redis 内存比较大的话, […]

  10. 【Python】Python3基本语法入门学习

    0.Python概述 1.First Word Game 2.变量与字符串 3.improved game 4.Python数据类型 5.常用操作符 6.分支与循环 7.列表 8.元组 9.字符串内置 ...