ETL学习笔记之二:ETL与BI

简介:

ETL为数据仓库服务,数据仓库用于数据分析,数据分析属于BI系统的要干的事儿。

一般中/小型ERP系统都会有不成熟的BI系统,为啥叫做不成熟?
因为它们或者有报表分析功能,但不具有OLAP(在线分析),或者有OLAP,但却没有数据挖掘和深度分析。或者干脆,来个大集成,直接利用第三方工具来达到相应的目的。
为什么会这样,究其原因,很多情况是因为没有自主的数据仓库,没有数据仓库,其它的做起来也就有些四不象了。而要建立数据仓库,首要的是:ETL。
于是,需求就应运而生了。

对了,BI是什么?OLAP是啥?什么又是数据挖掘?鉴于我只能解释其表面含义,我就不多说了。各位不妨找本数据仓库的书,翻翻前几页,一般就明白了。或者Google一把。

我们捡当下最流行的BI应用:OLAP来说说它与ETL的关系。
了解OLAP的人都知道,它的分析模型由事实表和维表组成。但往往OLTP系统中的数据库是为事务而建,而并不为分析而建,而为了BI去改动OLTP数据库是不现实,并且,很多情况下也基本上是不可能的(当然,有些公司把不可能的任务变成可能的,但这显然是一种很僵硬的做法)。
这时候,ETL的作用就显出来了,它可以为OLAP服务,按业务主题提取分析模型进行数据抽取。

联机分析处理(OLAP)
:联机事务处理OLTP(On-Line Transaction Processing)、联机分析处理OLAP(On-Line Analytical Processing)。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。
  OLAP是使分析人员、管理人员或执行人员能够从多角度对信息进行快速、一致、交互地存取,从而获得对数据的更深入了解的一类软件技术。OLAP的目标是满足决策支持或者满足在多维环境下特定的查询和报表需求,它的技术核心是"维"这个概念。

(OLAP分析需要什么样的数据支持?可以参看一下OLAP的星型模型)。

{天面试有一个问题是:星型模型与雪花模型的比较,何时用星型模型,何时需要用雪花模型

   星型模式:是一种使用关系数据库实现多维分析空间的模式,用星型模型可以通过关系数据库来模拟OLAP模式。 使用关系数据库+星型模型能够优化存储并且保持数据结构的灵活性。
   OLAP多维数据模型对数据做预先计算,建成多维数据立方体,它需要很大的内存以存储所有事实。无论是稠密纬合适稀疏维,无论数据块否包含事实,都必须要预留单元。星型模式的基本思想就是保持立方体的多维功能,同时也增加了小规模数据存储的灵活性。

雪花模式

   有时候,需要对星型模式的维度需要进行规范化,这时,星型模式就演进为雪花模式。

原因是基本的星型模式并不能满足数据挖掘的所有需要。

(1)我们需要更复杂的维度,例如时间。分析员希望根据周、月、季度等识别模式。
(2)维度必须进行规范化。我们不需要冗余的维度表,这只会使数据切片变得更加复杂。这种过程中我们得到的模式被称为雪花模式。
(3)另外一个原因需要把星型模型变成雪花模型:就是当存在多对多的关联时,无法在关系数据库中实现,需要使用雪花模式。雪花模式中可以存在切片,切块。

}

再说说数据挖掘:
这个课题实在太大,相关的书藉有很多很多,我还得花时间慢慢去学习。简单的说,这涉及ERP业务和统计学的知识。现在我暂时还没开始相关学习,但它与ETL的关系却很明显。因为数据挖掘所要求的数据大都是高聚合的已处理的数据,所以,不管从获取难度和效率上来说,都不适合直接从OLTP中获取。
同样,需要ETL来帮忙。

因此,按本人粗浅的理解:
ETL实在是: BI系统 设计开发,项目实施 之必备良药!

有句名言讲得好:成为巨人不如站在巨人的肩膀上。
如果想对ETL有详尽的了解,不妨先了解一下现有流行的ETL工具。 

本文出自seven的测试人生公众号最新内容请见作者的GitHub页:http://qaseven.github.io/

相关实践学习
数据库实验室挑战任务-初级任务
本场景介绍如何开通属于你的免费云数据库,在RDS-MySQL中完成对学生成绩的详情查询,执行指定类型SQL。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
目录
相关文章
|
4月前
|
SQL 搜索推荐 数据挖掘
一文详解报表工具和BI工具的区别
一文详解报表工具和BI工具的区别
|
7月前
|
存储 数据可视化 数据挖掘
【数据可视化和BI技术】数据可视化和BI技术的原理、方法和工具,如Tableau、Power BI
【数据可视化和BI技术】数据可视化和BI技术的原理、方法和工具,如Tableau、Power BI
108 0
|
数据采集 SQL 分布式计算
常用的数据集成ETL工具有哪些?
六种常用的数据集成ETL工具
常用的数据集成ETL工具有哪些?
|
6月前
|
SQL 数据可视化 前端开发
从探索式数据分析到现代 BI 仪表盘:Superset 2.0
从探索式数据分析到现代 BI 仪表盘:Superset 2.0
163 0
|
4月前
|
存储 分布式计算 关系型数据库
|
8月前
|
JSON 数据可视化 关系型数据库
Kettle可视化ETL工具快速入门 2
Kettle可视化ETL工具快速入门
156 0
|
8月前
|
JSON 数据可视化 关系型数据库
Kettle可视化ETL工具快速入门 1
Kettle可视化ETL工具快速入门
276 0
|
数据采集 关系型数据库 数据处理
ETL基本概念
ETL基本概念
|
监控 数据可视化 安全
SaaA 及案例分析-阿里云数据可视化服务 Quick BI|学习笔记
快速学习 SaaA 及案例分析-阿里云数据可视化服务 Quick BI
261 0
SaaA 及案例分析-阿里云数据可视化服务 Quick BI|学习笔记
|
数据采集 OLTP 数据库

热门文章

最新文章