`

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

 

// 

分享到:
评论

相关推荐

    Java分布式ETL框架

    Java分布式ETL(Extract, Transform, Load)框架是用于大数据处理的一种关键技术,它涉及从各种数据源抽取数据,经过转换处理后,加载到目标存储系统的过程。在Java中,实现分布式ETL可以利用多线程、分布式计算以及...

    传统数据仓库ETL设计报告

    ETL平台分为三个主要模块:ETL元数据驱动模块负责根据配置信息生成ETL作业,ETL调度模块配置调度并结合数据质量校验控制执行,而ETL元数据管理模块则用于管理和检索ETL配置信息。 2.1.2.2 ETL平台技术架构 技术...

    ETL Automation 使用手册 Version 2.6.0 中文

    ETL Automation 使用手册 Version 2.6.0 中文 ETL Automation 是一个数据集成平台,旨在提供一个自动化的数据集成解决方案。下面是对 ETL Automation 使用手册 Version 2.6.0 中文的详细知识点解释。 ETL ...

    ETL Automation使用手册

    ETL Automation 使用手册 ETL Automation 是一个自动化的数据集成工具,旨在帮助用户快速高效地完成数据提取、转换和加载(ETL)过程。本手册将详细介绍 ETL Automation 的安装、配置、使用和管理。 ETL ...

    达梦ETL批量流程向导

    ### 达梦ETL批量流程向导:详细解析与应用指南 #### 一、引言 随着企业数据规模的不断增长以及对数据处理效率要求的提高,ETL(Extract, Transform, Load)技术成为了现代数据仓库建设中的核心环节之一。其中,...

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

    ETL(Extract, Transform, Load)是数据仓库和大数据处理中的关键步骤,它涉及从不同来源提取数据,对其进行转换以适应特定需求,然后加载到目标系统。Kettle是一款开源的ETL工具,由Pentaho公司开发,因其强大的...

    ETL工具,开源,使用需要配置

    ETL(Extract, Transform, Load)是数据仓库领域中的关键过程,用于从各种源系统抽取数据,转换数据以满足特定需求,然后加载到目标数据库或数据仓库中。在这个主题中,我们将深入探讨ETL工具的开源特性以及配置使用...

    ETL架构师面试题.docx

    ETL架构师在数据仓库项目中扮演着至关重要的角色,负责设计和实施数据从源系统到数据仓库的高效、准确的转换流程。本篇主要讨论了几个与ETL架构师面试相关的知识点,包括逻辑数据映射、数据探索阶段、起始来源数据的...

    数据仓库ETL算法详解

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

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

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

    面试ETL题总汇

    ### ETL面试题总汇知识点解析 #### 一、逻辑数据映射 **知识点1: 逻辑数据映射定义及作用** 逻辑数据映射(Logical Data Mapping)是一种用于描述源系统数据定义、目标数据仓库模型及其转换过程的技术文档。它是...

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

    【etl-engine】是一款由国内开发者使用Go语言编写的轻量级ETL(Extract, Transform, Load)引擎,旨在帮助用户快速构建ETL解决方案,降低集成到现有项目或产品生态中的技术门槛。它包含了三个主要组件:etl-engine...

    ETL系列专题2 ETL数据结构

    在ETL(抽取、转换、加载)过程中,数据结构的设计尤为重要,因为它直接影响ETL的性能、效率和可靠性。本章节将详细介绍数据结构的概念和在ETL中的应用,尤其是ETL架构设计中Staging Area(暂存区)的原则和常用数据...

    《ETL数据整合和处理》教学大纲.pdf

    《ETL数据整合和处理》课程是一门针对大数据技术类专业的必修课,旨在培养具有实战经验的大数据处理和分析人才。课程总学时为64学时,其中包括30学时的理论教学和34学时的实验操作,总计4.0学分。课程的核心目标是让...

    oracle,etl工程师--面试题锦集

    Oracle和ETL(Extract, Transform, Load)是IT行业中数据处理和数据库管理的两个关键领域。作为一位ETL工程师,你需要对数据的提取、转换和加载过程有深入的理解,并且熟悉Oracle数据库系统。以下是一些关于这两个...

    The Data WarehouseETL Toolkit: Practical Techniques for

    在数据仓库领域,ETL(提取、转换、加载)过程是至关重要的环节。数据在成为信息之前,必须从各种来源中提取出来,经过清洗和整合,最后加载到数据仓库中。Ralph Kimball,作为全球数据仓库权威,与Joe Caserta共同...

    使用ETL把EXCEL导入到MySQL,并处理乱码问题

    ### 使用ETL将Excel导入MySQL并处理乱码问题 在数据处理领域,ETL(Extract, Transform, Load)工具被广泛应用于数据集成过程中,用于从不同的数据源提取数据、转换数据格式以及加载到目标系统中。本文将详细介绍...

    ETL规范.doc

    ETL 规范设计指南 ETL(Extract、Transform、Load)是数据集成的重要步骤,涉及到数据的抽取、转换和加载。为了确保 ETL 过程的高效性和可靠性,需要制定相应的规范和标准。本文档旨在提供一份完整的 ETL 规范设计...

    ETL详解.docx

    ETL 与大数据的关系紧密,因为大数据的处理往往涉及大量、多样化的数据整合,而这正是 ETL 技术的核心应用。随着大数据技术的发展,传统的 ETL 过程已经不能满足实时或近实时的数据处理需求。大数据环境下的 ETL ...

    ETL过程的概念建模

    ### ETL过程的概念建模 #### 概述 在当今数据驱动的世界中,企业需要有效管理海量数据以支持决策制定。数据仓库作为一种重要的数据分析工具,其构建与维护涉及多个复杂步骤,其中最关键的一环就是ETL(Extract-...

Global site tag (gtag.js) - Google Analytics