博文
深入理解ETL(2007-12-28 14:22:00)
摘要:深入理解ETL
ETL是商业智能(BI)的重要组成部分。我们先看一下在WIKI中的定义:
ETL,是英文Extract-Transform-Load的缩写,即填充、更新数据仓库的数据抽取、转换、装载的过程。这是实现商业智能之前的数据采集步骤。这一步骤完成之后,对库中数据的数据挖掘、分析处理才可以进行。
对于ETL而言,”是什么”是很容易理解的,也就是将分散的、不易利用的数据进行整理,变成规则清晰的、易于利用的、(可能同时还是)集中的数据。在ETL过程之外,就可以基于报表分析系统、多维分析系统和数据挖掘系统等,进行进一步的数据分析利用。
这一过程可以通过Hard Codding,即编写程序实现,也可以通过各种ETL工具实现。
对于ETL,实际常见的问题有两个:
1、为什么要做ETL,而不是直接利用数据?
这个原因有多种多样,比如可能原始数据量太大,需要加以提炼;可能业务数据的服务器面临性能压力,不希望分析工作影响性能;可能源数据的异构性和低质量,需要加以规范;还有可能有些数据直接利用起来有困难,例如SAP系统中的数据。
2、不同ETL工具与方法的差异主要是什么?
由于ETL是一个可以用Hard Codding并不大困难就可以实现的过程,因此很容易会问”为什么要用ETL工具”。实际上,Hard Codding也是一种可供选择ETL方法,而各种工具与方法主要的差异在于两点,一是设计与建立ETL过程的复杂度,比如有些工作用工具可以很快建立和修改、调试,而写程序要花很大力气,有些工作则配置ETL工具很费力,还不如直接写一个SQL,不同的工具之间也有很大的差异;二是运行时的效率,有些ETL工作,要经常进行,有些则是初始时进行一次,有些数据量大、时效要求高,有些则反之。这样,在不同情况下,就可能需要根据运行效率的需要选择合适的ETL工具。
从上面两个问题,我们可以理解ETL的必要性与适用性,同时,也可以认识到,ETL是一个概念,应该根据实际的情况与需要,选择(包括不使用)合适的ETL工具或方法。
Technorati : BI, ETL, 商业智能, 数据仓库
相关文章:
OLAP工具就是商业智能BI吗? (0)
商业智能是一种解决方案 (0)
报表分析实现随需而动 (0)
一个轻量级的OLAP (0)
BI......
OLAP工具就是商业智能BI吗?(2007-12-25 10:28:00)
摘要:
OLAP工具就是商业智能BI吗?
企业为了确定经营战略和市场战略所进行的经营活动,在BI项目的分析决策过程中,需要基于多种报告和报表进行分析。理想的市场活动展开,大多需要各个营业点的销售报表,每种商品按季节销售的业绩图表等,这就需
要大量准确的并且易于判断的数据。
然而,对于作为使用者的一般员工或者IT部门员工来说,这是一个很大的工作量负担。因为数据的分析需要先获得必要的数据信息,这就必须预先知道数据采集和数据加工计算的方法。当然,还有必要掌握数据库构成和数据存取语言的一些专门的知识。
因此这些工作以前全都是由IT部门人员用OLAP产品来完成的。信息管理部门要根据用户的要求把报表格式设计好,然后根据用户的目的,开发出应用程序以及建立数据库等来完成这项工作。
OLAP报表工具是指什么?
在报表市场上,有一个奇特的现象:IT部门的技术人员是企业所有部门中最不熟悉使用报表工具的部门人员,但报表的数据来自IT部门。IT部门往往利用OLAP的概念建设数据模型,根据数据模型来制作报表,因此对IT部门而言,报表工具是指OLAP工具中的报表展现部分,比如Crystal Report等等。
而在使用报表操作的业务人员眼里,报表工具是代表报表本身功能(排版、计算、统计、图形等)的产品,它目前只有一个产品来代表了,就是EXCEL。
OLAP报表产品最大的难点在哪里?
目前报表工具最大的难点不在于报表的样式(如斜线等),样式虽较繁琐但并非本质困难。最根本的难点在于业务部门知道报表代表的真正含义,却不知道报表的数据统计模型模型;而IT部门通过理解业务部门的描述,在数据库端进行设置数据统计模型,却对报表本身所代表的价值很难理解。
这样的现状,导致报表工具无法两者兼顾,OLAP报表工具产品一直在数据模型设计层面(OLAP层面)和报表本身功能层面做出平衡。
目前OLAP报表产品制作复杂,报表一般会有什么症状?
首先,由于IT部门创建的数据统计模型不完全适应,导致报表制作经常需要编写代码、准备数据(如几十甚至上百行的SQL或存储过程),而且动辄就要进行繁琐的子表拼接,即使这样仍有许多报表无法完成,需与用户商量改变,运算性能也很差。
其次,由于IT部门根据业务部门进行报表制作时,对报表样式理解不专业,大部分报......
BI售前的临场发挥(转载)(2007-12-13 11:04:00)
摘要:
BI售前的临场发挥(转载)
我觉得做BI的售前,要在两个小时的演讲中让用户能明白(尤其没有实施过相关项目的用户)什么是数据仓库和做这个东东到底有什么用处,实在是件不容易的事情,因此要能够即兴发挥,把生活中的事情与BI联系起来,才能让人对”统计分析”有点感觉。
偏巧38那天去和客户喷段子,面对30个听众,有点发懵,开始正题之前,即兴发挥,说了个引子:
今天是3.8妇女节,首先祝在座的各位女同胞节日快乐!有这个节日我想到最几年来的节假日经济问题,如果不管是中国节、外国节,商家都过得热热闹闹,趁这个机会搞出点明堂来进行促销,从圣诞节到51之间的节假日尤其密集,有圣诞节、元旦、春节、元宵节、情人节、妇女节、劳动节,印象中每个节日各商家都要展开宣传促销大战。情人节有些移动通信公司就大推情侣套餐,时尚的手机、优惠的资费配合温馨的节日气氛,让硝烟弥漫的移动通信战场平添了几分浪漫。
不知道我们东方移动在3.8妇女节的时候是否也针对女同胞推出了什么业务,我在街上转了一圈,很遗憾,感觉以妇女节为题材的促销活动好象并不火爆,这样子让我有点失望,本来嘛,现在各行各业都纷纷抢占女性市场,先是饮料分了男女,叫”他她水”,然后银行推出了女性信用卡,然后手机分了男女,听说现在专为女性设计的手机款式多到了20多种!可是我偏偏就没听说哪家运营商推出女性资费套餐?
有时候我也在考虑其中的道道,为什么没有女性套餐呢?我相信做市场的朋友们肯定也想过这个问题,之所以还没设计出女性套餐来,我想可能还没搞清楚女性的通信消费区别于男性的地方吧。大家都知道女性喜欢青春美丽,所以服装、化妆品等,但女性打电话到底有什么特点呢?让我来猜测一下,如今这世界是男人的战场,从社会交往范围来说,男性交际范围相对较大,联系人较多,女性的联系人相对少一些,我想女同胞打电话单次通话的时间也会长一些,心情好的时候或者心情不好的时候,找个朋友打电话”聊十块钱”的很平常。呵呵,当然这样说是个玩笑话啦,但对于我们整个移动公司用户ARPU值只有60-80元的消费水平来说,如果时不时聊十块钱的,每月聊几回咱移动的ARPU值可就上去啦!其实我发现男同胞,尤其是高端用户,通话消费习惯可是大大的不同,同样是高端用户,当领导的必然是被叫多,主叫少,电话多,平均单次时间短,领导嘛,当然每天事务繁忙,请示汇报多;......
商业智能是一种解决方案(2007-12-04 09:58:00)
摘要:商业智能是一种解决方案
商务智能是20世纪90年代末首先在国外企业界出现的一个术语,其代表为提高企业运营性能而采用的一系列方法、技术和软件。它把先进的信息技术应用到整个企业,不仅为企业提供信息获取能力,而且通过对信息的开发,将其转变为企业的竞争优势,也有人称之为混沌世界中的智能。因此,越来越多的企业提出他们对BI的需求,把BI作为一种帮助企业达到经营目标的一种有效手段。
什么是商业智能
商业智能(Business Intelligence,简称BI)的概念最早是Gartner Group于1996年提出来的。当时将商业智能定义为一类由数据仓库(或数据集市)、查询报表、数据分析、数据挖掘、数据备份和恢复等部分组成的、以帮助企业决策为目的技术及其应用。当时,Gartner Group猜测说:到2000年,信息民主(注:指组织内信息共享的无差别性)将在具有前瞻性思维的企业中浮现。借助商业智能,员工、咨询员、客户、供给商以及公众能够有效地运用信息。其实,商业智能所涉及的技术与应用,在Gartner Group命名之前就有,起初被称为经理信息系统(EIS),在羽化成商业智能之前叫决策支持系统(DSS)。
目前,商业智能通常被理解为将企业中现有的数据转化为知识,帮助企业做出明智的业务经营决策的工具。这里所谈的数据包括来自企业业务系统的订单、库存、交易账目、客户和供给商资料来自企业所处行业和竞争对手的数据以及来自企业所处的其他外部环境中的各种数据。而商业智能能够辅助的业务经营决策,既可以是操作层的,也可以是战术层和战略层的决策。为了将数据转化为知识,需要利用数据仓库、联机分析处理(OLAP)工具和数据挖掘等技术。因此,从技术层面上讲,商业智能不是什么新技术,它只是数据仓库、OLAP和数据挖掘等技术的综合运用。
为此,把商业智能看成是一种解决方案应该比较恰当。BI的要害是从许多来自不同的企业运作系统的数据中,提取出有用的数据,进行清理以保证数据的正确性,然后经过抽取(Extraction)、转换(Transformation)和装载(Load),即ETL过程,合并到一个企业级的数据仓库里,从而得到企业数据的一个全局视图,在此基础上利用合适的查询和分析工具、数据挖掘工具、OLAP工具等对其进行分析和处理(这时信息变为辅助决策的知识),最后将知识呈现给治理者,为治......
由两个实例看元数据管理(2007-11-30 11:07:00)
摘要:由两个实例看元数据管理
设计BI系统,免不了要跟元数据打交道,但有时候人们感觉不到它的存在。比如要了解数据库结构的时候,并不需要从系统表中去查看,可能只需要一个文档、一个命令或者通过数据库治理工具辅助查看即可;但假如要开发一种查询器,以供半业务半技术人员使用,让他们基于业务术语拖拖拽拽拼凑成SQL提交查询,这样的查询器就必然要去访问元数据了。是什么?元数据究竟是什么?用”描述数据的数据”(Data About Data)来定义确实是非常精简的,不过作为一种迭代式的定义,似乎并不够准确。从名称上理解,元数据也是数据,那么描述元数据的数据是什么?元元数据?如此迭代下去,就没完没了了。用打比方的方法来辅助这个定义可能更加清楚一点。将元数据治理想象成是一个客户治理系统。企业为了更好地服务客户(其实是如何从客户身上赚取更多的利润),需要将客户治理起来,搞好客户关系。同样的道理,元数据治理系统也是为了更好地利用数据。客户有生命周期,比如什么时候被企业服务,什么时候脱离企业服务,处于什么状态等等;数据也是如此,什么时间产生,什么时间被什么人使用,状态的变迁等等。在数据仓库中,元数据的概念被强化了,在每个数据仓库项目的总体架构图中,几乎都有”元数据治理”模块来横贯其他模块。显然,这表示它是一种基础模块,可以服务于诸如OLAP、ETL等其他模块。但实际上,却很少见一个完成了的数据仓库项目中有独立的元数据部分。大多项目,元数据都是分散在各种BI工具中。这些分散的元数据是不一致的,例如对一张表的结构定义,可能出现在ER设计工具中,当然也会在数据库的数据字典中,还有可能在ETL工具的源、目标定义中。如此多的重复定义,当然会发生数据不一致现象,却也正好为元数据治理工具留下广阔空间,它们的作用就是集中治理这些分散的元数据,就像数据仓库一样,从不同的源采集数据,有ETL,也有清洗,甚至重新建模。
谁做过?对于一些大型企业来说,尽管有时候还不能确定建立元数据治理系统的作用,但这方面的需求还是有的。例如中国移动就有吉林、湖北两个省公司高调宣传自己的元数据治理项目,这算是一种积极的尝试,也在为整个业界的元数据治理应用起到了推动作用。假如从宣传文字看,都是冠冕堂皇一个味道,没什么意思,但另外一家D省公司和这些先行者一份对比报告,却显得颇为有趣。D省公司其实也有元数据治理的内容,只是尚未形成系......
解读商业智能之二 - 商业智能的组成(2007-11-26 14:56:00)
摘要:解读商业智能之二 - 商业智能的组成
知道了什么是商业智能(商务智能),我们来看一下商业智能/商务智能包括什么,搭建一个商业智能系统需要哪些工具/技术。
一般地讲商业智能包括以下的部分(不同的体系,划分的方法可能有些差别,但本质相同)。
*ETL:即数据的抽取/转换/加载。也就是将原来不同形式、分布在不同地方的数据,转换到一个整理好、统一的存放数据的地方(数据仓库)。
ETL可以通过专门的工具来实现,也可以通过任何编程或类似的技术来实现。
*数据仓库:一个标准的定义是:数据仓库是一个面向主题、集成、时变、非易失的数据集合,是支持管理部门的决策过程。详细可以参见:http://www.ithao123.com/datawarehouse/0003.html。
简单地说,数据仓库就是储存数据的地方。它既可能是原始的业务数据库,也可能是另外生成的。既可能是标准的关系型数据库,也可能是包括了一些特定面向分析特性的专门产品。
*查询:找出所需要的数据。由于需求的多样性和复杂程度的差异,查询可能是最简单的从一张表中找出”所有姓张的人”,到基于非常复杂的条件、对关系非常复杂的数据进行查找和生成复杂的结果。
*报表分析:以预先定义好的或随时定义的形式查看结果和分析数据。将人工或自动查询出来的数据,以所需要的形式(包括进行各种计算、比较,生成各种展现格式,生成各种图表等)展现给用户,甚至让用户可以进一步逐层深入钻取这些数据,乃至灵活地按照各种需求进行新的分析并查看其结果。
在这个领域,报表已经由原来狭义的做好固定报表发展为灵活地按业务要求随时制作各种报表、进行各种分析和数据研究处理。
*OLAP分析:多维数据分析,从多个不同的角度立体地同时对数据进行分析。理解OLAP分析,最简单的例子是Excel中的数据透视表。
需要指出的是,OLAP有广义与狭义之分,广义的OLAP是相对OLTP而言,可以说包括了查询、报表分析、OLAP分析和数据挖掘,但真正大家所讲的实际是狭义的OLAP,即多维数据分析。
OLAP分析一般讲应该是通过建模和建立立方体(CUBE)来实现,但现在也有一些简单的OLAP工具可以不建模即进行小数据量、低复杂度的分析(EXCEL的数据透视表即是一例)。
* 数据挖掘:一种在大型数据库中寻找你感兴趣或是有价值信息的过程。相比于上面几个部分,数......
解读商业智能之一 - 什么是BI(商业智能)(2007-11-21 08:58:00)
摘要:解读商业智能之一 - 什么是BI(商业智能)
随着信息化的发展,商业智能(商务智能)( Busissness Inteligence )越来越多地成为关注的焦点。然而,对于商业智能的理解五花八门。本文试图系统地整理商业智能(商务智能)的概念,解读”什么是商业智能(商务智能)”的问题。
商业智能的定义(引自WIKI)
商业智能的概念最早在1996年提出。当时将商业智能定义为一类由数据仓库(或数据集市)、查询报表、数据分析、数据挖掘、数据备份和恢复等部分组成的、以帮助企业决策为目的技术及其应用。
目前,商业智能通常被理解为将企业中现有的数据转化为知识,帮助企业做出明智的业务经营决策的工具。
这里所谈的数据包括来自企业业务系统的订单、库存、交易账目、客户和供应商资料及来自企业所处行业和竞争对手的数据,以及来自企业所处的其他外部环境中的各种数据。
而商业智能能够辅助的业务经营决策既可以是操作层的,也可以是战术层和战略层的决策。
为了将数据转化为知识,需要利用数据仓库、联机分析处理(OLAP)工具和数据挖掘等技术。
因此,从技术层面上讲,商业智能不是什么新技术,它只是ETL、数据仓库、 OLAP、数据挖掘、数据展现等技术的综合运用。
把商业智能看成是一种解决方案应该比较恰当。
商业智能的关键是从许多来自不同的企业运作系统的数据中提取出有用的数据并进行清理,以保证数据的正确性,然后经过抽取(Extraction)、转换(Transformation)和装载(Load),即ETL过程,合并到一个企业级的数据仓库里,从而得到企业数据的一个全局视图,在此基础上利用合适的查询和分析工具、数据挖掘工具、OLAP工具等对其进行分析和处理(这时信息变为辅助决策的知识),最后将知识呈现给管理者,为管理者的决策过程提供支持。
总结一下上述说法的关键,其要点在于:
- 商业智能是(主要)基于已有数据进行的
- 商业智能主要的作用是辅助企业的业务管理与决策,改进企业运作
- 商业智能主要内涵是对数据进行分析,提供给需要的人
- 商业智能是多种技术的综合体。
引自: http://www.dinosboy.com.cn......
