版权声明:本文为博主原创文章,未经博主同意不得转载。 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. ubuntu安装甲骨文最新jdk7

    1.下载jdk7(我下载的是Java SE Platform(jdk) 7u51): http://www.oracle.com/technetwork/java/javase/downloads/i ...

  2. JavaScript中的异步 macrotask 和 microtask

    看过很多setTimeout.Promise执行顺序的面试题,一直不明白为啥都是异步操作,Promise就牛×些呢?直到了解了macrotask和micromask才恍然大悟... 先来一道面试题助助 ...

  3. IT自由职业者的第一个月(上)——何去何从

         2016年8月11号,我终于走完所有流程,拿到了离职证明,5年的嵌入式驱动开发工程师的职业生涯就此结束.走离职流程期间,陆续有同事和朋友问我,离职后去哪儿,我都是告诉他们:“还没想好,离了再 ...

  4. spring mvc 基本配置

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  5. Lucene学习之四:Lucene的索引文件格式(3)

    本文转载自:http://www.cnblogs.com/forfuture1978/archive/2010/02/02/1661436.html ,略有删改和备注. 四.具体格式 4.2. 反向信 ...

  6. efcore 配置链接sqlserver

    本文将在asp.net core api 项目中使用efcore corefirst模式 简单配置链接sqlserver数据库,以及简单的数据库迁移操作 一 新建项目 1. 首先我们先用vs2017 ...

  7. 五、mybatis集成使用

    1.添加依赖 <!-- mybatis-spring集成--> <dependency> <groupId>org.mybatis.spring.boot</ ...

  8. CentOS7下配置FTP服务

    1.参考教程: 腾讯云开发者实验室:基于 CentOS 搭建 FTP 文件服务 Linux就该这么学>:第11章 使用Vsftpd服务传输文件 (需要自己百度) 2.实验环境: VMware 1 ...

  9. 设置$.getJSON同步执行的笨方法

    $.ajaxSettings.async=false; $.getJSON("action/logon_checkAcc.action", function(json){ aler ...

  10. maven父子项目

    maven搭建父子项目 1.先建立一个父项目,建立项目的时候,选择  Create a simple project 点击 next,填写以下信息 点击finish就可以了. 2.接下来要建立一个子项 ...