`

ETL

    博客分类:
  • java
 
阅读更多

ETL

 

对于数据仓库以及ETL的知识,我基本上是个门外汉。一切都得从头开始,记个笔记,方便自已了解学习进度。
    
    首先,我们来了解最基本的定义:
    嗯,也有人将ETL简单称为数据抽取。至少在未学习之前,领导告诉我的是,你需要做一个数据抽取的工具。
    其实呢,抽取是ETL中的关键环节,顾名思义,也就将数据从不同的数据源中抓取(复制)出来。
    太简单了!
    上面的解释无首无尾,有点象能让你吃饱的第七个烧饼,
    仔细一想,抽取是不可能单独存在,我们需要将与之关联的一些其它环节拿出来。

    于是,得到ETL的定义:
    将数据抽取(Extract)、转换(Transform)、清洗(Cleansing)、装载(Load)的过程。 
    好的,既然到了这一个层次,我们完全会进一步展开联想,引出上面这个抽象事件的前因后果,

    抽取的源在哪里? 
    装载的目的又是什么呢?

    抽取源:大多数情况下,可以认为是关系数据库,专业一点,就是事务处理系统(OLTP)。当然,广义一点,可能会是其它数据库或者是文件系统。
    目的地:OK,我们希望是数据仓库。数据仓库是啥?在学习之前,它对我来说是个抽象的怪物,看过一些简单的资料之后,才了解这个怪物一点都不怪。堆积用来分析的数据的仓库。是了,是用来分析的,于是,它区别于OLTP中的数据存储。

    然后,我们来看看为什么要ETL?
    在我看来,有两个原因。
    一:性能  将需要分析的数据从OLTP中抽离出来,使分析和事务处理不冲突。咦?这不是数据仓库的效果吗?是了,
数据仓库,大多数情况下,也就是通过ETL工具来生成地。
    二:控制  用户可以完全控制从OLTP中抽离出来的数据,拥有了数据,也就拥有了一切。
    嗯,OLAP分析,数据挖掘等等等……。

    最后,总结一下,
    从资料上看,ETL是一门大学问,对于大学问,实在有些怕怕,所以,我觉得应该停下来想一想,下一步我该干点啥?
    嗯,时不我待,我没有办法一切从头开始,
    是了,从应用出发,看看现在工作中,最急需的是什么?

    鸭子要变成一盘菜,并不是举手将之置于油锅之劳。 
    OK,要将生米变为熟饭,鸭子放上大盘,一堆废话之后,我得先看看厨房里都有了一些啥?

 

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


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

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

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

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

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

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

 

来至:http://blog.csdn.net/tiger119/archive/2007/01/14/1482648.aspx

 

// 

分享到:
评论

相关推荐

    很全的ETL学习资料

    BI项目中ETL设计与思考.docx DataStage(ETL)技术总结.docx ETL增量抽取.docx ETL增量抽取方式.docx ETL工具点评.docx ETL常见性能瓶颈.docx ETL构建企业级数据仓库五步法.docx ETL高级教程.docx 三大主流ETL工具选型...

    ETL架构师面试题

    它对ETL项目组的作用是什么? 2.在数据仓库项目中,数据探索阶段的主要目的是什么? 3.如何确定起始来源数据? 架构 4.在ETL过程中四个基本的过程分别是什么? 5.在数据准备区中允许使用的数据结构有哪些?各有...

    1、ETL工程师经典面试题.md

    5. 在 ETL过程中四个基本的过程分别是什么? 6. 从 ERP源系统中抽取数据最好的方法是什么? 7. 简述直接连接数据库和使用 ,ODBC连接数据库进行通讯的优缺点。 8. 什么是代理键?简述代理键替换管道如何工作。 9. ...

    《ETL数据整合与处理(Kettle)》教学教案 —02源数据获取.pdf

    《ETL数据整合与处理(Kettle)》教学教案 —02源数据获取.pdf《ETL数据整合与处理(Kettle)》教学教案 —02源数据获取.pdf《ETL数据整合与处理(Kettle)》教学教案 —02源数据获取.pdf《ETL数据整合与处理(Kettle)》...

    《ETL数据整合与处理(Kettle)》教学教案 —03记录处理.pdf

    《ETL数据整合与处理(Kettle)》教学教案 —03记录处理.pdf《ETL数据整合与处理(Kettle)》教学教案 —03记录处理.pdf《ETL数据整合与处理(Kettle)》教学教案 —03记录处理.pdf《ETL数据整合与处理(Kettle)》教学教案 ...

    支持国产ETL etl-engine 用go写的轻量级etl引擎 方便集成到各企业中

    etl-engine的核心思想是为用户快速搭建ETL产品提供解决方案,让用户低代码乃至零代码将ETL产品集成到自己的项目或产品生态中。该产品由etl-engine引擎和etl-designer云端设计器及etl-crontab调度组成。etl-engine...

    《ETL数据整合与处理(Kettle)》教学教案 —05高级转换.pdf

    《ETL数据整合与处理(Kettle)》教学教案 —05高级转换.pdf《ETL数据整合与处理(Kettle)》教学教案 —05高级转换.pdf《ETL数据整合与处理(Kettle)》教学教案 —05高级转换.pdf《ETL数据整合与处理(Kettle)》教学教案 ...

    The Data WarehouseETL Toolkit: Practical Techniques for

    Delivers real world solutions for the most time and labor intensive portion of data warehousing data staging or the extract transform load ETL process Delineates best practices for extracting data ...

    《ETL数据整合与处理(Kettle)》教学教案 —04字段处理.pdf

    《ETL数据整合与处理(Kettle)》教学教案 —04字段处理.pdf《ETL数据整合与处理(Kettle)》教学教案 —04字段处理.pdf《ETL数据整合与处理(Kettle)》教学教案 —04字段处理.pdf《ETL数据整合与处理(Kettle)》教学教案 ...

    ETL之kettle基础-PPT讲解

    内容概要:ETL之kettle包含26张PPT,kettle安装、使用、如何连接等,使用PDI9.2演示、什么是ETL、什么是Kettle、kettle安装、kettle目录结构、转换和作业、kettle操作、数据库连接、注意事项。 适合人群:具备一定...

    ETL实战ETL实战

    ETL实战ETL实战ETL实战ETL实战

    ETL详解.docx

    1 ETL是什么 3 2 ETL和大数据有什么关联 3 3 ETL有哪些过程,要进行哪些操作 3 3.1 抽取作业 4 3.1.1 手工开发抽取作业时候的常用方法 4 3.1.2 更新数据的时间和数量的问题 5 3.2 转换作业 8 3.2.1 数据清洗 8 3.2.2...

    Java分布式ETL框架

    Java分布式ETL框架

    ETL工具 ,基于Kettle实现的Web版ETL工具

    ETL工具 ,基于Kettle实现的Web版ETL工具,实现简单的数据抓取功能

    BI ETL ELT Kettle 基础知识中文文档汇总

    BI ETL ELT Kettle 基础知识中文文档汇总 BI项目中ETL设计与思考.pdf CTL工具.pdf ETL-开发规范.pdf ETL_--_事实表.pdf ETL_文档.pdf ETL_架构.pdf ETL_调度系统技术方案说明书_V1.0.pdf ETL中的数据清洗...

    SQL Server 2005 ETL 专家系列

    SQL Server 2005 ETL专家系列之一:SQL Server DTS的前世今生 SQL Server 2005 ETL专家系列之二:SQL Server 2005 Integration Service的基本任务 SQL Server 2005 ETL专家系列之三:SQL Server 2005 Integration ...

    传统数据仓库ETL设计报告

    ETL升级一方面采用元数据驱动ETL的方式,通过配置元数据驱动ETL;另一方面,在ETL调度控制方面,采用结合数据质量校验的ETL调度

    ETL 以及 KETTLE 简介

    1. 什么是ETL 2. KETTLE简介 2.1. Chef——工作(job)设计器 2.1.1. Chef中的作业项包括: 2.1.2. 工作流 2.1.3. 存储方式 2.1.4. LogView: 2.2. Kitchen——作业执行器 2.3. Spoon——转换过程设计器 ...

    ETL工具KETTLE实例手册

    开源ETL工具 Kettle ------------------------------------------ 分享到 新浪微博腾讯微博已用 +30 收藏+164 Kettle是一款国外开源的etl工具,纯java编写,绿色无需安装,数据抽取高效稳定(数据迁移工具)。Kettle中...

    数据仓库ETL算法详解

    1. ETL的定义:是数据抽取(Extract)、转换(Transform)、清洗(Cleansing)、装载(Load)的过程。是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据...

Global site tag (gtag.js) - Google Analytics