数据仓库入门经典教程


官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 数据仓库入门教程 II 目录 术语 ............................................................................ 2 数据仓库基础 5 1 相关概念 ..................................................................... 6 1.1 数据仓库 ............................................................. 6 1.2 企业信息工厂 ......................................................... 7 1.3 维 ................................................................... 8 1.4 事实表 .............................................................. 10 1.5 数据集市 ............................................................ 14 1.6 ODS ................................................................. 14 1.7 元数据 .............................................................. 16 1.8 ETL ................................................................. 17 1.9 OLAP ................................................................ 20 2 数据仓库架构 ................................................................ 23 2.1 HWBIS系统架构 ....................................................... 23 3 主流数据仓库产品介绍 ........................................................ 25 3.1 ETL工具 ............................................................. 25 3.2 报表展现工具 ........................................................ 31 3.3 主流数据仓库产品对比分析 ............................................ 41 4 行业案例 .................................................................... 45 4.1 案例1:某通信公司决策分析系统实施案例 ............................... 45 4.2 案例3:大唐电信ODS数据整合案例 ...................................... 49 术语 BI Business Intelligence,即商业智能,也看到有些媒体里写作商务智能综合企业所有沉淀下来 的信息,用科学的分析方法,为企业领导提供科学决策信息的过程。 BOSS 业务运营支撑系统:BusinessOperationsSupportSystems,简称BOSS BPM 企业绩效管理 BPM BUSINESSPERFORMANCEMANAGEMENT(企业绩效管理),是以商业智能(BI)技术、平衡计分卡(BSC) 和个人关键绩效指标(KPIs)等先进信息技术和管理理论为基础的战略管理的工具,在财务、客户、 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 3 内部流程和学习与发展四个维度上进行综合绩效评测,帮助企业从整体上实现对战略实现过程的 贯彻和控制。 BPR 业务流程重整(BusinessProcessReengineering),指利用数据仓库技术,发现并纠正企业业务 流程中的弊端的一项工作。数据仓库的重要作用之一。 CRM CustomerRelationshipManagement 客户关系管理。CRM是选择和管理有价值客户及其关系的一种商业策略,CRM要求以客户为中心的 商业哲学和企业文化来支持有效的市场营销、销售与服务流程。 CUBE 立方体 DM(Datamart) 即数据集市,或者叫做“小数据仓库”。如果说数据仓库是建立在企业级的数据模型之上的话。 那么数据集市就是企业级数据仓库的一个子集,他主要面向部门级业务,并且只面向某个特定的 主题。数据集市可以在一定程度上缓解访问数据仓库的瓶颈。 DM(DataMine). 数据挖掘是一个从大型数据库中提取以前未知的,可理解的,可执行的信息并用它来进行关键的 商业决策的过程。 DSS 决策支持系统(DecisionSupportsystem),相当于基于数据仓库的应用。决策支持就是在收集 所有有关数据和信息,经过加工整理,来为企业决策管理层提供信息,为决策者的决策提供依据。 DW Datawarehouse,本世纪80年代中期,“数据仓库之父”WilliamH.Inmon先生在其《建立数据仓 库》一书中定义了数据仓库的概念,随后又给出了更为精确的定义:数据仓库是在企业管理和决 策中面向主题的、集成的、与时间相关的、不可修改的数据集合。与其他数据库应用不同的是, 数据仓库更像一种过程,对分布在企业内部各处的业务数据的整合、加工和分析的过程。而不是 一种可以购买的产品。 EDM EnterpriseDataModel企业数据模型 ERP Enterprise Resourse Planning企业资源规划。它是一个以管理会计为核心的信息系统,识别和 规划企业资源,从而获取客户订单,完成加工和交付,最后得到客户付款。换言之,ERP将企业 内部所有资源整合在一起,对采购、生产、成本、库存、分销、运输、财务、人力资源进行规划, 从而达到最佳资源组合,取得最佳效益。 ETL 数据抽取(Extract)、转换(Transform)、清洗(Cleansing)、装载(Load)的过程。构建 数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的 数据仓库模型,将数据加载到数据仓库中去。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 4 KDD KDD(Knowledge Discovery in Database)数据库中知识发现。是基于数据库的知识发现,指的 是从大型数据库或数据仓库中提取人们感兴趣的知识,这些知识是隐含的、事先未知的、潜在有 用的、易被理解的模式。 KPI 企业关键业绩指标(KPI:KeyProcessIndication)是通过对组织内部流程的输入端、输出端的关 键参数进行设置、取样、计算、分析,衡量流程绩效的一种目标式量化管理指标,是把企业的战 略目标分解为可操作的工作目标的工具,是企业绩效管理的基础。 LDM 逻辑数据模型 MDD 多维数据库(Multi Dimesional Database,MDD)可以简单地理解为:将数据存放在一个n维数组 中,而不是像关系数据库那样以记录的形式存放。因此它存在大量稀疏矩阵,人们可以通过多维 视图来观察数据。多维数据库增加了一个时间维,与关系数据库相比,它的优势在于可以提高数 据处理速度,加快反应时间,提高查询效率。 Metadata Metadata(元数据),它是“关于数据的数据”在地理空间信息中用于描述地理数据集的内容、质 量、表示方式、空间参考、管理方式以及数据集的其他特征,它是实现地理空间信息共享的核心 标准之一。目前,国际上对空间元数据标准内容进行研究的组织主要有三个,分别是欧洲标准化 委员会(CEN/TC287)、美国联邦地理数据委员会(FGDC)和国际标准化组织地理信息/地球信息技术 委员会(ISO/TC211)。 MOLAP 严格遵照Codd的定义,自行建立了多维数据库,来存放联机分析系统数据的ArborSoftware,开创 了多维数据存储的先河,后来的很多家公司纷纷采用多维数据存储。被人们称为 MuiltDimensionOLAP,简称MOLAP,代表产品有Hyperion(原Arborsoftware)Essbase、 ShowcaseSTRATEGY等。 ODS (Oprational Data Store)操作型数据存储,对于一些准实时的业务数据库当中的数据的暂时存 储,支持一些同时关连到历史数据与实时数据分析的数据暂时存储区域 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 5 数据仓库基础 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 6 1 相关概念 1.1 数据仓库 目前,数据仓库一词尚没有一个统一的定义,著名的数据仓库专家W.H.Inmon在其著作 《Building the Data Warehouse》一书中给予如下描述:数据仓库(Data Warehouse)是一个 面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反 映历史变化(Time Variant)的数据集合,用于支持管理决策。对于数据仓库的概念我们可以从 两个层次予以理解,首先,数据仓库用于支持决策,面向分析型数据处理,它不同于企业现有的 操作型数据库;其次,数据仓库是对多个异构的数据源有效集成,集成后按照主题进行了重组, 并包含历史数据,而且存放在数据仓库中的数据一般不再修改。 根据数据仓库概念的含义,数据仓库拥有以下四个特点: 1) 面向主题。传统数据库主要是为应用程序进行数据处理,未必按照同一主题存储数据; 数据仓库侧重于数据分析工作,是按照主题存储的。这一点,类似于传统农贸市场与超 市的区别—市场里面,白菜、萝卜、香菜会在一个摊位上,如果它们是一个小贩卖的; 而超市里,白菜、萝卜、香菜则各自一块。也就是说,市场里的菜(数据)是按照小贩(应 用程序)归堆(存储)的,超市里面则是按照菜的类型(同主题)归堆的。 2) 集成的。面向事务处理的操作型数据库通常与某些特定的应用相关,数据库之间相互独 立,并且往往是异构的。而数据仓库中的数据是在对原有分散的数据库数据抽取、清理 的基础上经过系统加工、汇总和整理得到的,必须消除源数据中的不一致性,以保证数 据仓库内的信息是关于整个企业的一致的全局信息。 3) 相对稳定的。操作型数据库中的数据通常实时更新,数据根据需要及时发生变化。数据 仓库的数据主要供企业决策分析之用,所涉及的数据操作主要是数据查询,一旦某个数 据进入数据仓库以后,一般情况下将被长期保留,也就是数据仓库中一般有大量的查询 操作,但修改和删除操作很少,通常只需要定期的加载、刷新。 4) 反映历史变化。操作型数据库主要关心当前某一个时间段内的数据,而数据仓库中的数 据通常包含历史信息,系统记录了企业从过去某一时点(如开始应用数据仓库的时点) 到目前的各个阶段的信息,通过这些信息,可以对企业的发展历程和未来趋势做出定量 分析和预测。同样都是累计购买过九车产品的顾客,一位是最近三个月购买九车,一位 是最近一年从未买过,这对于决策者意义是不同的。 企业数据仓库的建设,是以现有企业业务系统和大量业务数据的积累为基础。数据仓库不是 静态的概念,只有把信息及时交给需要这些信息的使用者,供他们做出改善其业务经营的决策, 信息才能发挥作用,信息才有意义。而把信息加以整理归纳和重组,并及时提供给相应的管理决 策人员,是数据仓库的根本任务。因此,从产业界的角度看,数据仓库建设是一个工程,是一个 过程。 下图是一个典型的企业数据仓库系统,通常包含数据源、数据存储与管理、数据的访问三个 部分: 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 7 数据仓库 数据集市 数据集市 元数据库 数据集市 即席查询 数据源 数据存储与管理 数据访问 外部数据源 业务数据系统 文档资料 数据挖掘 数据报表 OLAP ETL 服务 数据源:是指企业操作型数据库中的各种生产运营数据、办公管理数据等内部数据和一些调 查数据、市场信息等来自外环境的数据总称。这些数据是构建数据仓库系统的基础是整个系统的 数据源泉。 数据的存储与管理:数据仓库的存储主要由元数据的存储及数据的存储两部分组成。元数据 是关于数据的数据,其内容主要包括数据仓库的数据字典、数据的定义、数据的抽取规则、数据 的转换规则、数据加载频率等信息。各操作数据库中的数据按照元数据库中定义的规则,经过抽 取、清理、转换、集成,按照主题重新组织,依照相应的存储结构进行存储。也可以面向应用建 立一些数据集市,数据集市可以看作是数据仓库的一个子集,它含有较少的主题域且历史时间更 短数据量更少,一般只能为某个局部范围内的管理人员服务,因此也称之为部门级数据仓库。 数据的访问:由OLAP(联机分析处理)、数据挖掘、统计报表、即席查询等几部分组成。例如 OLAP:针对特定的分析主题,设计多种可能的观察形式,设计相应的分析主题结构(即进行事实 表和维表的设计),使管理决策人员在多维数据模型的基础上进行快速、稳定和交互性的访问, 并进行各种复杂的分析和预测工作。按照存储方式来分,OLAP可以分成MOLAP以及ROLAP等方 式,MOLAP (Multi-Dimension OLAP)将OLAP分析所需的数据存放在多维数据库中。分析主题的数 据可以形成一个或多个多维立方体。ROLAP (Relational OLAP)将OLAP分析所需的数据存放在关 系型数据库中。分析主题的数据以“事实表-维表”的星型模式组织。 1.2 企业信息工厂 企业信息工厂(Corporate Information Factory,简称EIF)是一种构建数据仓库的架构。 企业信息工厂的创始人是数据仓库之父Inmon。 企业信息工厂主要包括集成转换层(I&T)、操作数据存储(ODS)、企业级数据仓库(EDW)、 数据集市(DM)、探索仓库(EW)等部件。这些部件有机的结合在一起,为企业提供信息服务。 集成转换层的目的是将来自操作型源系统的数据集成转换到数据仓库中,它通常由一组程序 组成,而其它部件如数据仓库和数据集市等则主要由数据组成。当业务数据来源多,业务复杂时, 集成转换层会建立一些临时表,为数据处理提供方便。这时,集成转换层包括程序和数据,也称 数据准备区(Data Staging Area)。通常中等规模及以上的数据仓库系统都会建立数据准备区。 操作数据存储(ODS)是建立在数据准备区和数据仓库之间的一个部件。用来满足企业集成的、 综合的操作型处理需要。例如,出尽可能实时的集成的操作报表等需求。一般,也称操作数据存 储是用来满足企业战术决策的需要。操作数据存储是个可选的部件。 企业级数据仓库是企业信息工厂的核心部件,用来保存整个企业的数据。一般,也称数据仓 库,是用来满足企业战略决策的需要。数据仓库的数据来自数据准备区和操作数据存储。 数据集市是为了满足企业特定部门的分析需求而专门建立的数据的集合。数据集市的数据来 源是数据仓库。企业信息工厂中的数据集市一般来说是非规范化的、定制的和汇总的。而多维体 系架构中的数据集市分为两种,分别是原子数据集市和聚集数据集市。一般来说,企业信息工厂 中的数据集市相当于多维体系架构中的聚集数据集市。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 8 探索仓库或数据挖掘仓库的建立主要是为了解决大型查询,提高数据仓库的效率。当有探索 或挖掘需求时,会从数据仓库导出一部分数据提供给他们操作。 企业信息工厂中的数据流向一般是从源系统到数据准备区到操作数据存储到数据仓库到数据 集市。当分析人员在数据仓库或数据集市中得出分析结论后,会有信息的回流。这种信息回流有 可能是物理数据的回流,也可能是直接改变业务部门的策略,总之,要将分析的结果应用起来。 通过这种信息的回流,企业信息工厂的不同部件可以不断的相互调整,最终找到一种平衡。这也 是称为企业信息工厂的原因。 1.3 维 维,是人们观察数据的特定角度,是考虑问题时的一类属性,属性集合构成一个维。 假定某某是个百货零售商,有一些因素会影响他的销售业务,如商品、时间、商店或流通渠 道,更具体一点,如品牌、月份、地区等。对某一给定的商品,也许他想知道该商品在哪个商店 和哪段时间的销售情况。对某一商店,也许他想知道哪个商品在哪段时间的销售情况。在某一时 间,也许他想知道哪个商店哪种产品的销售情况。因此,他需要决策支持来帮助制定销售政策。 这里,商店、时间和产品都是维。各个商店的集合是一个维,时间的集合是一个维,商品的 集合也是一个维。 1.3.1 代理关键字 在数据仓库领域有一个概念叫Surrogate key,中文一般翻译为“代理关键字”。代理关键字 一般是指维度表中使用顺序(序列)分配的整数值作为主键,也称为“代理键”。代理关键字用 于维度表和事实表的连接。 在Kimball的维度建模领域里,是强烈推荐使用代理关键字的。在维度表和事实表的每一个联 接中都应该使用代理关键字,而不应该使用自然关键字或者智能关键字(Smart Keys)。数据仓 库中的主键不应该是智能的,也就是说,要避免通过主键的值就可以了解一些业务信息。当然, 退化维度作为事实表的复合主键之一时例外。 使用代理关键字,有很多优点。 1.使用代理关键字能够使数据仓库环境对操作型环境的变化进行缓冲。也就是说,当数据仓 库需要对来在多个操作型系统的数据进行整合时,这些系统中的数据有可能缺乏一致的关键字编 码,即有可能出现重复,这时代理关键字可以解决这个问题。 2.使用代理关键字可以带来性能上的优势。和自然关键字相比,代理关键字很小,是整型的, 可以减小事实表中记录的长度。这样,同样的IO就可以读取更多的事实表记录。另外,整型字段 作为外键联接的效率也很高。 3.使用代理关键字可以建立一些不存在的维度记录,例如 “日期待定”,“日期不可用” 等维度记录。 4.使用代理关键字可以用来处理缓慢变化维。维度表数据的历史变化信息的保存是数据仓库 设计的实施中非常重要的一部分。Kimball的缓慢变化维处理策略的核心就是使用代理关键字。 当然,使用代理关键字也有它的缺点,代理关键字的使用使数据加载变得非常复杂。 1.3.2 缓慢变化维 维度建模的数据仓库中,有一个概念叫Slowly Changing Dimensions,中文一般翻译成“缓 慢变化维”,经常被简写为SCD。缓慢变化维的提出是因为在现实世界中,维度的属性并不是静 态的,它会随着时间的流失发生缓慢的变化。这种随时间发生变化的维度我们一般称之为缓慢变 化维,并且把处理维度表的历史变化信息的问题称为处理缓慢变化维的问题,有时也简称为处理 SCD的问题。 处理缓慢变化维的方法通常有三种方式: 第一种方式是直接覆盖原值。这样处理,最容易实现,但是没有保留历史数据,无法分析历 史变化信息。第一种方式通常简称为“TYPE 1”。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 9 第二种方式是添加维度行。这样处理,需要代理键的支持。实现方式是当有维度属性发生变 化时,生成一条新的维度记录,主键是新分配的代理键,通过自然键可以和原维度记录保持关联。 第二种方式通常简称为“TYPE 2”。 第三种方式是添加属性列。这种处理的实现方式是对于需要分析历史信息的属性添加一列, 来记录该属性变化前的值,而本属性字段使用TYPE 1来直接覆盖。这种方式的优点是可以同时分 析当前及前一次变化的属性值,缺点是只保留了最后一次变化信息。第三种方式通常简称为“TYPE 3”。 在实际建模中,我们可以联合使用三种方式,也可以对一个维度表中的不同属性使用不同的 方式,这些,都需要根据实际情况来决定,但目的都是一样的,就是能够支持方便的分析历史变 化情况。 1.3.3 退化维度 在维度建模的数据仓库中,有一种维度叫Degenerate Dimension,中文一般翻译为“退化维 度”。这种退化维度一般都是事务的编号,如订单编号、发票编号等。这类编号需要保存到事实 表中,但是不需要对应的维度表,所以称为退化维度。 退化维度经常会和其他一些维度一起组合成事实表的主键。在Kimball提出的维度建模中,事 实表应该保存最细粒度的数据。所以对于象销售单这样的事实表来说,需要销售单编号和产品来 共同作为主键,而不能用销售日期、商场、产品等用来分析的维度共同作为主键。 退化维度在分析中可以用来做分组使用。它可以将同一个事务中销售的产品集中在一起。 1.3.4 微型维度 维度建模的数据仓库中,有一种维度叫minidimension,中文一般翻译成“微型维度”。微型 维度的提出主要是为了解决快变超大维度(rapidly changing monster dimension)。 以客户维度举例来说,如果维度表中有数百万行记录或者还要多,而且这些记录中的字段又 经常变化,这样的维度表一般称之为快变超大维度。对于快变超大维度,设计人员一般不会使用 TYPE 2的缓慢变化维处理方法,因为大家都不愿意向本来就有几百万行的维度表中添加更多的行。 这时,有一项技术可以解决这个问题。解决的方法是,将分析频率比较高或者变化频率比较 大的字段提取出来,建立一个单独的维度表。这个单独的维度表就是微型维度表。 微型维度表有自己的关键字,这个关键字和原客户维度表的关键字一起进入事实表。有时为 了分析的方便,可以把微型维度的关键字的最新值作为外关键字进入客户维度表。这时一定要注 意,这个外关键字必须做TYPE 1型处理。 在微型维度表中如果有像收入这样分布范围较广的属性时,应该将它分段处理。比如,存储 ¥31257.98这样过于分散的数值就不如存储¥30000-¥34999这样的范围。这样可以极大的减少 微型维度中的记录数目,也给分析带来方便。 1.3.5 一致性维度 维度建模的数据仓库中,有一个概念叫Conformed Dimension,中文一般翻译为“一致性维度”。 一致性维度是Kimball的多维体系结构(MD)中的三个关键性概念之一,另两个是总线架构(Bus Architecture)和一致性事实(Conformed Fact)。 在多维体系结构中,没有物理上的数据仓库,由物理上的数据集市组合成逻辑上的数据仓库。 而且数据集市的建立是可以逐步完成的,最终组合在一起,成为一个数据仓库。如果分步建立数 据集市的过程出现了问题,数据集市就会变成孤立的集市,不能组合成数据仓库,而一致性维度 的提出正式为了解决这个问题。 一致性维度的范围是总线架构中的维度,即可能会在多个数据集市中都存在的维度,这个范 围的选取需要架构师来决定。一致性维度的内容和普通维度并没有本质上区别,都是经过数据清 洗和整合后的结果。 一致性维度建立的地点是多维体系结构的后台(Back Room),即数据准备区。在多维体系结 构的数据仓库项目组内需要有专门的维度设计师,他的职责就是建立维度和维护维度的一致性。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 10 在后台建立好的维度同步复制到各个数据集市。这样所有数据集市的这部分维度都是完全相同 的。建立新的数据集市时,需要在后台进行一致性维度处理,根据情况来决定是否新增和修改一 致性维度,然后同步复制到各个数据集市。这是不同数据集市维度保持一致的要点。 在同一个集市内,一致性维度的意思是两个维度如果有关系,要么就是完全一样的,要么就 是一个维度在数学意义上是另一个维度的子集。例如,如果建立月维度话,月维度的各种描述必 须与日期维度中的完全一致,最常用的做法就是在日期维度上建立视图生成月维度。这样月维度 就可以是日期维度的子集,在后续钻取等操作时可以保持一致。如果维度表中的数据量较大,出 于效率的考虑,应该建立物化视图或者实际的物理表。 这样,维度保持一致后,事实就可以保存在各个数据集市中。虽然在物理上是独立的,但在 逻辑上由一致性维度使所有的数据集市是联系在一起,随时可以进行交叉探察等操作,也就组成 了数据仓库。 1.3.6 杂项维度 在维度建模的数据仓库中,有一种维度叫Junk Dimension,中文一般翻译为“杂项维度”。 杂项维度是由操作系统中的指示符或者标志字段组合而成,一般不在一致性维度之列。 在操作系统中,我们定义好各种维度后,通常还会剩下一些在小范围内取离散值的指示符或 者标志字段。例如:支付类型字段,包括现金和信用卡两种类型,在源系统中它们可能是维护在 类型表中,也可能直接保存在交易表中。 一张事实表中可能会存在好几个类似的字段,如果作为事实存放在事实表中,会导致事实表 占用空间过大;如果单独建立维度表,外键关联到事实表,会出现维度过多的情况;如果将这些 字段删除,会有人不同意。 这时,我们通常的解决方案就是建立杂项维度,将这些字段建立到一个维度表中,在事实表 中只需保存一个外键。几个字段的不同取值组成一条记录,生成代理键,存入维度表,并将该代 理键保存入相应的事实表字段。建议不要直接使用所有的组合生成完整的杂项维度表,在抽取时 遇到新的组合时生成相应记录即可。杂项维度的ETL过程比一般的维度略为复杂。 1.4 事实表 在维度建模的数据仓库中,事实表是指其中保存了大量业务度量数据的表。事实表中的度量 值一般称为事实。在事实表中最有用的事实就是数字类型的事实和可加类型的事实。事实表的粒 度决定了数据仓库中数据的详细程度。 一般来说,以粒度作为化分依据,主要有三种事实表,分别是事务粒度事实表(Transaction Grain Fact Table),周期快照粒度事实表(Periodic Snapshot Grain Fact Table)和累积快 照粒度事实表(Accumulating Snapshot Grain Fact Table);从用途的不同来说,事实表可以 分为三类,分别是原子事实表,聚集事实表和合并事实表。 1.4.1 事务粒度事实表 事务事实表(Transaction fact table)记录的事务层面的事实,保存的是最原子的数据, 也称“原子事实表”。事务事实表中的数据在事务事件发生后产生,数据的粒度通常是每个事务 一条记录。一旦事务被提交,事实表数据被插入,数据就不再进行更改,其更新方式为增量更新。 事务事实表的日期维度记录的是事务发生的日期,它记录的事实是事务活动的内容。用户可 以通过事务事实表对事务行为进行特别详细的分析。 1.4.2 周期快照粒度事实表 周期快照事实表(Periodic snapshot fact table)以具有规律性的、可预见的时间间隔来 记录事实,时间间隔如每天、每月、每年等等。典型的例子如销售日快照表、库存日快照表等。 周期快照事实表的粒度是每个时间段一条记录,通常比事务事实表的粒度要粗,是在事务事 实表之上建立的聚集表。周期快照事实表的维度个数比事务事实表要少,但是记录的事实要比事 务事实表多。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 11 周期快照事实表的日期维度通常是记录时间段的终止日,记录的事实是这个时间段内一些聚 集事实值。事实表的数据一旦插入即不能更改,其更新方式为增量更新。 1.4.3 累积快照事实表 累积快照事实表(Accumulating snapshot fact table)和周期快照事实表有些相似之处, 它们存储的都是事务数据的快照信息。但是它们之间也有着很大的不同,周期快照事实表记录的 确定的周期的数据,而累积快照事实表记录的不确定的周期的数据。 累积快照事实表代表的是完全覆盖一个事务或产品的生命周期的时间跨度,它通常具有多个 日期字段,用来记录整个生命周期中的关键时间点。另外,它还会有一个用于指示最后更新日期 的附加日期字段。由于事实表中许多日期在首次加载时是不知道的,所以必须使用代理关键字来 处理未定义的日期,而且这类事实表在数据加载完后,是可以对它进行更新的,来补充随后知道 的日期信息。 举例来说: 订货日期 预定交货日期 实际发货日期 实际交货日期 数量 金额 运费 在这个累积快照事实表中,记录的是购买货物的整个生命周期的数据,记录第一次产生时, 实际发货日期和实际交货日期是不确定的,需要用表示未知的代理关键字来代替。等实际发货后, 需要对数据仓库中的这条记录进行更新操作,将实际发货日期补上。 1.4.4 原子事实表 原子事实表(Atom Fact Table)是保存最细粒度数据的事实表,也是数据仓库中保存原子信 息的场所。 1.4.5 聚集事实表 聚集事实表(Aggregated Fact Table)是原子事实表上的汇总数据,也称为汇总事实表。即 新建立一个事实表,它的维度表是比原维度表要少,或者某些维度表是原维度表的子集,如用月 份维度表代替日期维度表;事实数据是相应事实的汇总,即求和或求平均值等。在做数据迁移时, 当相关的维度数据和事实数据发生变化时,聚集事实表需要做相应的刷新。物化视图是实现聚集 事实表的一种有效方式,可以设定刷新方式,具体功能由DBMS来实现。 1.4.6 合并事实表 合并事实表(Consolidated Fact Table)是指将位于不同事实表中处于相同粒度的事实进行 组合建模而成的一种事实表。即新建立一个事实表,它的维度是两个或多个事实表的相同维度的 集合;事实是几个事实表中感兴趣的事实。在Kimball的总线架构中,由合并事实表为主组成的 合并数据集市称为二级数据集市。合并事实表的粒度可以是原子粒度也可以是聚集粒度。在做数 据迁移时,当相关的原子事实表的数据有改变时,合并事实表的数据需要重新刷新。合并事实表 和交叉探察是两个互补的操作。 聚集事实表和合并事实表的主要差别是合并事实表一般是从多个事实表合并而来。但是它们 的差别不是绝对的,一个事实表既是聚集事实表又是合并事实表是很有可能的。因为一般合并事 实表需要按相同的维度合并,所以很可能在做合并的同时需要进行聚集,即粒度变粗。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 12 1.4.7 旋转事实表 旋转事实表(pivoted fact table)是将一条记录中的多个事实字段转化为多条记录,其中 每条记录保存一个事实字段的一种建模方法。或者反过来,也可以由多条记录转化为一条记录。 旋转事实表建模方法的使用通常是为了简化前端数据展现的查询。它通过改变后端的事实记 录存储方式,使相应的查询需求的性能得到的极大的提高。如果在SQL或者查询工具中进行这种 转换会非常麻烦,效率也很差。 和合并事实表类似,有时当基础表中没有记录时,旋转事实表也要存储一些零值在里面。 1.4.8 预连接聚集表 预连接聚集表(pre-joined aggregagte table)是通过对事实表和维度表的联合查询而生成 的一类汇总表。在预连接聚集表中,保存有维度表中的描述信息和事实表的事实值。 通过预连接,可以避免在用户查询时RDBMS的连接操作,所以预连接聚集表的查询效率要高很 多。 典型的预连接聚集表如下例所示的销售事实表: 产品名称 商标名称 年份 月份 销售人员名称 销售量 销售金额 在这个销售事实表,前五个字段都来自于维度表的描述字段,后两个字段来自于事实表的事 实字段。这样在用户提交查询后,RDBMS就不需要连接维度表和事实表了,只需直接在该表中查 询即可。 预连接聚集表有一个很大的缺点,它需要占用大量的存储空间。预连接事实表的记录和事实 表一样多,每条记录的长度和维度表一样长,所以对存储空间的需求是非常大的。除非情况特殊, 或者该表是高度汇总的,否则不建议建立预连接聚集表。在建立预连接聚集表时需要平衡效率和 存储空间的矛盾。 预连接聚集表的生成方式较为简单,直接使用SQL查询即可生成。 如果聚集导航器的功能很强大的话,也可以处理预连接聚集表。否则,需要用户理解预连接 聚集表,并在SQL中直接使用该表。 预连接聚集表在数据仓库领域有着很重要的作用,是汇总表的一种。它的优点和缺点都很明 显,在使用时需要综合考虑。 1.4.9 非事实型事实表 在非事实型事实表(Factless Fact Table),通常会保存十个左右的维度外键和多个度量事 实,度量事实是事实表的关键所在。在非事实型事实表中没有这些度量事实,只有多个维度外键。 非事实型事实表通常用来跟踪一些事件或者说明某些活动的范围。下面举例来进行说明。 第一类非事实型事实表是用来跟踪事件的事实表。例如:学生注册事件,学校需要对学生按 学期进行跟踪。维度表包括学期维度、课程维度、系维度、学生维度、注册专业维度和取得学分 维度,而事实表是由这些维度的主键组成,事实只有注册数,并且恒为1。这样的事实表可以回 答大量关于大学开课注册方面的问题,主要是回答各种情况下的注册数。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 13 第二类非事实型事实表是用来说明某些活动范围的事实表。例如:促销范围事实表。通常销 售事实表可以回答如促销商品的销售情况,但是对于那些没有销售出去的促销商品没法回答。这 时,通过建立促销范围事实表,将商场需要促销的商品单独建立事实表保存。然后,通过这个促 销范围事实表和销售事实表即可得出哪些促销商品没有销售出去。这样的促销范围事实表只是用 来说明促销活动的范围,其中没有任何事实度量。 1.4.10 切片事实表 切片事实表(sliced fact table)中的字段结构和相应的基础表完全相同,差别在于存储的 记录的范围。切片事实表中保存记录的是相应基础表中记录的子集,记录数通常与某个维度记录 数相同。 这种建模方法一般用来满足特殊需要,如需要分析某些特殊问题时,可以将与之相关的数据 切片出来。相反,这种方法也常用于合并存储在不同地区的数据,即各个地区都保存自己地区的 数据,总部和所有地区的表结构都相同,然后总部将所有地区的数据合并在一起。 切片事实表的结构与相对应的基础表相同,数据来源于相对应的基础表。切片事实表由于缩 小了表中数据的记录数,所以查询的效率得到了很大的提高。 1.4.11 蜈蚣事实表 蜈蚣事实表(Centipede fact table)是指那些一张事实表中有太多维度的事实表。连接在 事实表两边的维度表过多,看起来就像蜈蚣一样,所以称为“蜈蚣事实表”。 通常来说,蜈蚣事实表的出现是由于建模师对事实表和维度表逆规范化过了头。例如,不单 将产品主键放入事实表中,对于产品层级结构中的每一层的主键都放入事实表中,这样事实表中 与产品相关的就会有产品ID、商标ID、子类ID、类别ID等多个外键。同样,也有建模师将日期相 关的日期ID、月ID、年ID都放入事实表中。这些都将产生蜈蚣事实表,使自己落入维度过多的陷 阱。 蜈蚣事实表虽然使查询效率有所提高,但是伴之而来的是存储空间的大量增长。在维度建模 的数据仓库中,维度表的字段个数可以尽可能的增加,但是事实表的字段要尽量减少,因为相比 而言,事实表的记录数要远远大于维度表的记录数。 一般来说,事实表相关的维度在15个以下为正常,如果维度个数超过25个,就出现了维度过 多的蜈蚣事实表。这时,需要做的事情是自己核查,将相关的维度进行合并,减少维度的个数。 1.4.12 一致性事实 一致性事实(Conformed Fact)是Kimball的多维体系结构(MD)中的三个关键性概念之一, 另两个是总线架构(Bus Architecture)和一致性维度(Conformed Dimension)。 在建立多个数据集市时,完成一致性维度的工作就已经完成了一致性的80%-90%的工作量。 余下的工作就是建立一致性事实。 一致性事实和一致性维度有些不同,一致性维度是由专人维护在后台(Back Room),发生修 改时同步复制到每个数据集市,而事实表一般不会在多个数据集市间复制。需要查询多个数据集 市中的事实时,一般通过交叉探查(drill across)来实现。 为了能在多个数据集市间进行交叉探查,一致性事实主要需要保证两点。第一个是KPI的定义 及计算方法要一致,第二个是事实的单位要一致性。如果业务要求或事实上就不能保持一致的话, 建议不同单位的事实分开建立字段保存。 这样,一致性维度将多个数据集市结合在一起,一致性事实保证不同数据集市间的事实数据 可以交叉探查,一个分布式的数据仓库就建成了。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 14 1.5 数据集市 数据集市(Data mart)也叫做“小数据仓库”。如果说数据仓库是建立在企业级的数据模型 之上的话,那么数据集市就是企业级数据仓库的一个子集,他主要面向部门级业务,并且只面向 某个特定的主题。数据集市可以在一定程度上缓解访问数据仓库的瓶颈。 1.5.1 即席查询 即席查询(Ad hoc queries)是指那些用户在使用系统时,根据自己当时的需求定义的查询。 即席查询生成的方式很多,最常见的就是使用即席查询工具。一般的数据展现工具都会提供 即席查询的功能。通常的方式是,将数据仓库中的维度表和事实表映射到语义层,用户可以通过 语义层选择表,建立表间的关联,最终生成SQL语句。 即席查询与通常查询从SQL语句上来说,并没有本质的差别。它们之间的差别在于,通常的查 询在系统设计和实施时是已知的,所有我们可以在系统实施时通过建立索引、分区等技术来优化 这些查询,使这些查询的效率很高。而即席查询是用户在使用时临时生产的,系统无法预先优化 这些查询,所以即席查询也是评估数据仓库的一个重要指标。 即席查询的位置通常是在关系型的数据仓库中,即在EDW或者ROLAP中。多维数据库有自己的 存储方式,对即席查询和通常查询没有区别。 在一个数据仓库系统中,即席查询使用的越多,对数据仓库的要求就越高,对数据模型的对 称性的要求也越高。对称性的数据模型对所有的查询都是相同的,这也是维度建模的一个优点。 1.6 ODS 在数据仓库架构中有一种部件叫Operational Data Store(ODS),中文一般翻译为“操作数 据存储”。操作数据存储在通常的数据仓库架构中都是一个可选的部件,它和数据仓库起到互相 补充的作用。 最早给ODS下定义的是数据仓库之父Inmon。他的定义是,操作数据存储(ODS)是面向主题的、 集成的、可变的、反映当前数据值的和详细的数据的集合,用来满足企业综合的、集成的以及操 作型的处理需求。 Inmon的这个定义与他对数据仓库的定义很像。其中前两个特性和数据仓库是一样的,即都是 面向主题的和集成的,而后三个特性和数据仓库相差较大。 ODS中的数据是可以变化的:这一点是Inmon相对与他的CIF(企业信息工厂)中的数据仓库来 说的,在CIF中,数据仓库中的数据是不进行更新的,对于错误的处理通常是采用新的快照来进 行保存。而ODS是可以按常规方法进行更新的。 ODS反映当前数据值:这一点是指ODS中不会长期的保留数据,通常ODS保留的数据的时限最长 到一个月或三个月。而数据仓库可以保留五年、十年或更长的数据。 ODS中保留详细数据:这一点是说ODS中只保留原子数据,而不保留汇总数据。而在数据仓库 中原子数据和汇总数据都会进行保留。这和ODS可更新的特性相关,因为随时可能将操作型系统 的数据变化更新到ODS中,并且数据的迁移时间间隔会很短,这都使汇总数据在ODS中的意义不大。 1.6.1 ODS分类 Inmon在给ODS下了定义之后,进一步把ODS分成了四类。根据数据到达ODS的时间间隔,即数 据从操作型系统生成开始到数据到达ODS为止的时间长短,ODS分为Class I、Class II、Class III 和Class IV四类。 Class I的ODS:指时间间隔为秒级,即对用户来说,ODS是个透明的部件,操作型系统业务发 生后,数据立刻就可以在ODS中看到。这类ODS事实上是很难实现的。秒级的数据迁移间隔,我们 没有时间进行数据的整合。对于此类ODS,从技术和成本上来说,都是不合算的。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 15 Class II的ODS:指时间间隔为小时级,即操作型系统业务发生后,数据要经个几个小时才能 出现在ODS部件中。 Class III的ODS:指时间间隔为天级,即我们常见到的数据仓库的迁移频率,如每天晚上进 行一次数据迁移。 Class IV的ODS:指时间间隔更长,可能为月级、甚至年级。Class IV和其他类尤为不同的一 点是,Class IV的数据源经常是数据仓库。 Class I的ODS是实时数据仓库的一种实现方式。Class II和Class III的ODS是比较通常的ODS 实现方式。Class IV的ODS非常有用的一类ODS实现方式。 在Class IV的ODS中,最为常见的记录就是从数据仓库中总结出来的概况数据(Profile Record)。概况数据是数据情况的大纲。以客户为例,可以总结的概况数据如下:每月买衣服的 件数,每周的销售量,每年会看两次眼科医生等等。ODS中的概况数据是从大量的详细数据中总 结出来的,大部分是统计和挖掘处理的结果,它们存放到ODS中,供操作人员了解客户的情况。 需要说明的一点是,虽然ODS从概念上分成这样的四类,但是在进行数据仓库的架构时,我们 不必过于刻板,四类ODS同时使用也应该是很正常的选择。例如,对于非常敏感的个别数据,我 们可以选择Class I,而对于一般的数据,选择Class II或者Class III。个人感觉,Class IV 是Inmon尤为推荐的一类。 由于ODS仍然存储在普通的关系数据库中,出于性能、存储和备份恢复等数据库的角度以及对 源数据库的性能影响角度,个人不建议ODS保存相当长周期的数据,同样ODS中的数据也尽量不做 转换,而是原封不动地与业务数据库保持一致。即ODS只是业务数据库的一个备份或者映像,目 的是为了使数据仓库的处理和决策支持要求与OLTP系统相隔离,减少决策支持要求对OLTP系统的 影响。 1.6.2 ODS的作用 为什么需要有一个ODS呢?一般在带有ODS的系统体系结构中,ODS都具备如下几个作用: 1)在业务系统和数据仓库之间形成一个隔离层 一般的数据仓库应用系统都具有非常复杂的数据来源,这些数据存放在不同的地理位置、不 同的数据库、不同的应用之中,从这些业务系统对数据进行抽取并不是一件容易的事。因此,ODS 用于存放从业务系统直接抽取出来的数据,这些数据从数据结构、数据之间的逻辑关系上都与业 务系统基本保持一致,因此在抽取过程中极大降低了数据转化的复杂性,而主要关注数据抽取的 接口、数据量大小、抽取方式等方面的问题。 2)转移一部分业务系统细节查询的功能 在数据仓库建立之前,大量的报表、分析是由业务系统直接支持的,在一些比较复杂的报表 生成过程中,对业务系统的运行产生相当大的压力。ODS的数据从粒度、组织方式等各个方面都 保持了与业务系统的一致,那么原来由业务系统产生的报表、细节数据的查询自然能够从ODS中 进行,从而降低业务系统的查询压力。 3)完成数据仓库中不能完成的一些功能 一般来说,带有ODS的数据仓库体系结构中,DW层所存储的数据都是进行汇总过的数据和运营 指标,并不存储每笔交易产生的细节数据,但是在某些特殊的应用中,可能需要对交易细节数据 进行查询,这时就需要把细节数据查询的功能转移到ODS来完成,而且ODS的数据模型按照面向主 题的方式进行存储,可以方便地支持多维分析等查询功能。即数据仓库从宏观角度满足企业的决 策支持要求,而ODS层则从微观角度反映细节交易数据或者低粒度的数据查询要求。 在一个没有ODS层的数据仓库应用系统体系结构中,数据仓库中存储的数据粒度是根据需要而 确定的,但一般来说,最为细节的业务数据也是需要保留的,实际上也就相当于ODS,但与ODS所 不同的是,这时的细节数据不是“当前、不断变化的”数据,而是“历史的,不再变化的”数据。 这样的数据仓库的存储压力和性能压力都是比较大的,因此对数据仓库的物理设计和逻辑设计提 出了更高的要求。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 16 1.7 元数据 正如其他种类的仓库都要保留一个库存清单一样,数据仓库也要也要保留一个‘库存’清单, 以跟踪那些数据仓库中保存的数据的结构、定义以及这些数据的‘来历’等等。这个‘库存’清 单实质上就是我们现在所说的元数据。不过元数据对于数据仓库的意义比‘库存’对于实际意义 上的仓库大得多。 随着数据仓库(DW)技术的不断成熟,企业的数据逐渐变成了决策的主要依据。数据仓库中 的数据是从许多业务处理系统中抽取、转换而来,对于这样一个复杂的企业数据环境,如何以安 全、高效的方式来对它们进行管理和访问就变得尤为重要。解决这一问题的关键就是建立数据仓 库元数据库,并对这个元数据库进行有效的管理。从某种意义上来说,能否建立并管理好元数据, 将决定着数据仓库项目的成败。 按照传统的定义,元数据(Metadata)是关于数据的数据。我们可以把它理解为比一般意义 的数据范畴更加广泛的数据。它不再仅仅表示数据的类型、名称、值等信息,它进一步描述了数 据的上下文描述信息,比如数据所属的区域、取值范围、数据间的关系、业务规则、甚至ETL规 则、甚至数据的来源信息等。 元数据可以看作是数据仓库系统的‘数据字典’,但这个数据字典比传统意义上数据库的数 据字典功能要强大的多。它可以帮助数据仓库管理员和数据仓库的开发人员非常方便地找到他们 所关心的数据;并可以回答最终用户数据仓库中有哪些数据,这些数据从哪里来等重要的问题。 可将其按用途的不同分为两类:技术元数据(Technical Metadata)和业务/商业元数据 (Business Metadata)。 1.7.1 技术元数据 技术元数据是存储关于数据仓库系统技术细节的数据,是用于开发和管理数据仓库使用的数 据,它主要包括以下信息: 1)数据仓库结构的描述,包括仓库模式、视图、维、层次结构和导出数据的定义,以及数据 集市的位置和内容; 2)业务系统、数据仓库和数据集市的体系结构和模式; 3)汇总用的算法,包括度量和维定义算法,数据粒度、主题领域、聚集、汇总、预定义的查 询与报告; 4)由操作环境到数据仓库环境的映射,包括源数据和它们的内容、数据分割、数据提取、清 理、转换规则和数据刷新规则、安全(用户授权和存取控制)。 1.7.2 业务/商业元数据 业务/商业元数据从业务角度描述了数据仓库中的数据,它提供了介于使用者和实际系统之间 的语义层,使得不懂计算机技术的业务人员也能够“读懂”数据仓库中的数据。业务/商业元数 据主要包括以下信息:使用者的业务术语所表达的数据模型、对象名和属性名;访问数据的原则 和数据的来源;系统所提供的分析方法以及公式和报表的信息;具体包括以下信息: 1)企业概念/逻辑模型:这是业务/商业元数据所应提供的重要的信息,它表示企业数据模型 的高层信息、整个企业的业务概念和相互关系。以这个企业模型为基础,不懂数据库技术和SQL 语句的业务人员对数据仓库中的数据也能做到心中有数。 2)多维数据模型:这是企业概念模型的重要组成部分,它告诉业务分析人员在数据集市当中 有哪些维、维的类别、数据立方体以及数据集市中的聚合规则。这里的数据立方体表示某主题领 域业务事实表和维表的多维组织形式。 3)业务概念模型和物理数据之间的映射、依赖:以上提到的业务/商业元数据只是表示出了 数据的业务视图,这些业务视图与实际的数据仓库或数据库、多维数据库中的表、字段、维、层 次等之间的对应关系也应该在元数据知识库中有所体现。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 17 1.8 ETL ETL是将业务系统的数据经过抽取(Extract)、清洗转换(Transform)之后加载(Load)到 数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策 提供分析依据。ETL是BI项目重要的一个环节。通常情况下,在BI项目中ETL会花掉整个项目的1/3 的时间,ETL设计的好坏直接关接到BI项目的成败。 ETL的设计分三部分:数据抽取、数据的清洗转换、数据的加载。在设计ETL的时候我们也是 从这三部分出发。数据的抽取是从各个不同的数据源抽取到ODS(OperationalDataStore,操作型 数据存储)中——这个过程也可以做一些数据的清洗和转换),在抽取的过程中需要挑选不同的抽 取方法,尽可能的提高ETL的运行效率。ETL三个部分中,花费时间最长的是“T”(Transform, 清洗、转换)的部分,一般情况下这部分工作量是整个ETL的2/3。数据的加载一般在数据清洗完 了之后直接写入DW(DataWarehousing,数据仓库)中去。 ETL的实现有多种方法,常用的有三种。一种是借助ETL工具实现,一种是SQL方式实现,另外 一种是ETL工具和SQL相结合。前两种方法各有各的优缺点,借助工具可以快速的建立起ETL工程, 屏蔽了复杂的编码任务,提高了速度,降低了难度,但是缺少灵活性。SQL的方法优点是灵活, 提高ETL运行效率,但是编码复杂,对技术要求比较高。第三种是综合了前面二种的优点,会极 大地提高ETL的开发速度和效率。 现在有很多成熟的工具提供ETL功能,例如PowerCenter、DataStage、Oracle OWB、 SQLServer2000的DTS等,且不说他们的好坏。从应用角度来说,ETL的过程其实不是非常复杂, 这些工具给数据仓库工程带来和很大的便利性,特别是开发的便利和维护的便利。这些工具为我 们提供图形化界面,让我们将主要的精力放在规则上,以期提高开发效率。 1.8.1 数据的抽取 这一部分需要在调研阶段做大量的工作,首先要搞清楚数据是从哪几个业务系统中来,各个业 务系统的数据库服务器运行什么DBMS,是否存在手工数据,手工数据量有多大,是否存在非结构 化的数据等等,当收集完这些信息之后才可以进行数据抽取的设计。 1)对于与存放DW的数据库系统相同的数据源处理方法 这一类数据源在设计上比较容易。一般情况下,DBMS(SQLServer、Oracle)都会提供数据库链 接功能,在DW数据库服务器和原业务系统之间建立直接的链接关系就可以写select语句直接访 问。 2)对于与DW数据库系统不同的数据源的处理方法 对于这一类数据源,一般情况下也可以通过ODBC的方式建立数据库链接——如SQLServer和 Oracle之间。如果不能建立数据库链接,可以有两种方式完成,一种是通过工具将源数据导出 成.txt或者是.xls文件,然后再将这些源系统文件导入到ODS中。另外一种方法是通过程序接口 来完成。 3)对于文件类型数据源(.txt,.xls),可以培训业务人员利用数据库工具将这些数据导入到 指定的数据库,然后从指定的数据库中抽取。或者还可以借助工具实现,如PowerCenter、 DataStage的平面数据源和平面目标等组件导入ODS中去。 4)增量更新的问题 对于数据量大的系统,必须考虑增量抽取。一般情况下,业务系统会记录业务发生的时间, 我们可以用来做增量的标志,每次抽取之前首先判断ODS中记录最大的时间,然后根据这个时间去 业务系统取大于这个时间所有的记录。 1.8.2 数据的清洗转换 一般情况下,数据仓库分为ODS、DW两部分。通常的做法是从业务系统到ODS做清洗,将脏数 据和不完整数据过滤掉,在从ODS到DW的过程中转换,进行一些业务规则的计算和聚合。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 18 数据清洗 数据清洗的任务是过滤那些不符合要求的数据,将过滤的结果交给业务主管部门,确认是否 过滤掉还是由业务单位修正之后再进行抽取。不符合要求的数据主要是有不完整的数据、错误的 数据、重复的数据三大类。 (1)不完整的数据:这一类数据主要是一些应该有的信息缺失,如供应商的名称、分公司的名 称、客户的区域信息缺失、业务系统中主表与明细表不能匹配等。对于这一类数据过滤出来,按 缺失的内容分别向客户提交,要求在规定的时间内补全。补全后才写入数据仓库。 (2)错误的数据:这一类错误产生的原因是业务系统不够健全,在接收输入后没有进行判断直 接写入后台数据库造成的,比如数值数据输成全角数字字符、字符串数据后面有一个回车操作、 日期格式不正确、日期越界等。这一类数据也要分类,对于类似于全角字符、数据前后有不可见 字符的问题,只能通过写SQL语句的方式找出来,然后要求客户在业务系统修正之后抽取。日期 格式不正确的或者是日期越界的这一类错误会导致ETL运行失败,这一类错误需要去业务系统数 据库用SQL的方式挑出来,交给业务主管部门要求限期修正,修正之后再抽取。 (3)重复的数据:对于这一类数据——特别是维表中会出现这种情况——将重复数据记录的所 有字段导出来,让客户确认并整理。 数据清洗是一个反复的过程,不可能在几天内完成,只有不断的发现问题,解决问题。对于 是否过滤,是否修正一般要求客户确认,对于过滤掉的数据写入数据表,在ETL开发的初期可以 每天向业务单位发送过滤数据的邮件,促使他们尽快地修正错误,同时也可以做为将来验证数据 的依据。数据清洗需要注意的是不要将有用的数据过滤掉,对于每个过滤规则认真进行验证,并 要用户确认。 数据转换 数据转换的任务主要进行不一致的数据转换、数据粒度的转换,以及一些商务规则的计算。 (1)不一致数据转换:这个过程是一个整合的过程,将不同业务系统的相同类型的数据统一, 比如同一个供应商在结算系统的编码是XX0001,而在CRM中编码是YY0001,这样在抽取过来之后统 一转换成一个编码。 (2)数据粒度的转换:业务系统一般存储非常明细的数据,而数据仓库中数据是用来分析的, 不需要非常明细的数据。一般情况下,会将业务系统数据按照数据仓库粒度进行聚合。 (3)商务规则的计算:不同的企业有不同的业务规则、不同的数据指标,这些指标有的时候不 是简单的加加减减就能完成,这个时候需要在ETL中将这些数据指标计算好了之后存储在数据仓 库中,以供分析使用。 1.8.3 ETL日志、警告发送 ETL日志 ETL日志分为三类。一类是执行过程日志,这一部分日志是在ETL执行过程中每执行一步的记 录,记录每次运行每一步骤的起始时间,影响了多少行数据,流水账形式。一类是错误日志,当 某个模块出错的时候写错误日志,记录每次出错的时间、出错的模块以及出错的信息等。第三类 日志是总体日志,只记录ETL开始时间、结束时间是否成功信息。如果使用ETL工具,ETL工具会自 动产生一些日志,这一类日志也可以作为ETL日志的一部分。记录日志的目的是随时可以知道ETL 运行情况,如果出错了,可以知道哪里出错。 警告发送 如果ETL出错了,不仅要形成ETL出错日志,而且要向系统管理员发送警告。发送警告的方式 多种,一般常用的就是给系统管理员发送邮件,并附上出错的信息,方便管理员排查错误。 1.8.4 ETL数据加载策略 下面提到的数据加载策略以OLTP系统作为源系统,并进行ETL数据加载到数据仓库系统中所采 用的一般数据加载策略。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 19 根据该方式的特定性,此时ETL数据加载一般存在以下四种方案: 1)、时戳方式 需要在OLTP系统中业务表中统一添加时间字段作为时戳(如表中已有相应的时间字段,可以 不必添加),每当OLTP系统中更新修改业务数据时,同时修改时戳字段值。当作ETL加载时,通 过系统时间与时戳字段的比较来决定进行何种数据抽取。 优点:ETL系统设计清晰,源数据抽取相对清楚简单,速度快。可以实现数据的递增加载。 缺点:时戳维护需要由OLTP系统完成,需要修改原OLTP系统中业务表结构;且所有添加时戳 的表,在业务系统中,数据发生变化时,同时更新时戳字段,需要对原OLTP系统业务操作程序作 修改,工作量大,改动面大,风险大。 2)、日志表方式 在OLTP系统中添加系统日志表,当业务数据发生变化时,更新维护日志表内容,当作ETL加载 时,通过读日志表数据决定加载那些数据及如何加载。 优点:不需要修改OLTP表结构,源数据抽取清楚,速度较快。可以实现数据的递增加载。 缺点:日志表维护需要由OLTP系统完成,需要对OLTP系统业务操作程序作修改,记录日志信 息。日志表维护较为麻烦,对原有系统有较大影响。工作量较大,改动较大。有一定风险。 3)、全表比对方式 在ETL过程中,抽取所有源数据,并进行相应规则转换,完成后先不插入目标,而对每条数据 进行目标表比对。根据主键值进行插入与更新的判定,目标表已存在该主键值的,表示该记录已 有,并进行其余字段比对,如有不同,进行Update操作,如目标表没有存在该主键值,表示该记 录还没有,即进行Insert操作。 优点:对已有系统表结构不产生影响,不需要修改业务操作程序,所有抽取规则由ETL完成, 管理维护统一,可以实现数据的递增加载。没有风险。 缺点:ETL比对较复杂,设计较为复杂,速度较慢 4)、全表删除插入方式 每次ETL操作均删除目标表数据,由ETL全新加载数据。 优点:ETL加载规则简单,速度快 缺点:对于维表加代理键不适应,当OLTP系统产生删除数据操作时,OLAP层将不会记录到所 删除的历史数据。不可以实现数据的递增加载。 当作系统数据加载策略方案时,基于以上所列方法,及现有系统考虑: 1)、如果所集成OLTP系统为其他产商产品,则应尽量的降低因ETL而对现有系统产生的影响, 及系统风险性。而性能的影响则可以通过两方面解决,一部分由硬件的升级进行解决,因为ETL 除读表及写表操作外,所有转换均由ETL服务器在内存中完成,故高配置服务器将大大提升ETL运 行速度;一部分由加载时机进行控制,加载时机采取在系统较为空闲时加载,同时并行多个加载 等,可以降低对运行系统的影响。所以可以使用全表比对递增加载数据的方式作为此类系统的ETL 数据加载规则。 2)、如果原OLTP系统为自己开发产品,此次所作OLAP系统为在原系统上的系统,则可以考虑 使用时辍或日志表方式,区别仅为对原系统的影响大小。 3)、当数据实现递增加载时,OLAP系统中的聚合表,可由OLAP中的事实表数据二次ETL产生, 此时由于OLAP数据的完整性与准确性,可以使用全表删除插入方式。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 20 1.8.5 流行的ETL工具 Informatica PowerCenter IBM DataStage Oracle OWB Business Object DI 1.9 OLAP 60年代,关系数据库之父E.F.Cdd提出了关系模型,促进了联机事务处理(OLTP)的发展(数据 以表格的形式而非文件方式存储)。1993年,E.F.Cdd提出了OLAP概念,认为OLTP已不能满足终端 用户对数据库查询分析的需要,SQL对大型数据库进行的简单查询也不能满足终端用户分析的要 求。用户的决策分析需要对关系数据库进行大量计算才能得到结果,而查询的结果并不能满足决 策者提出的需求。因此,E.F.Cdd提出了多维数据库和多维分析的概念,即OLAP。 OLAP(联机分析处理,On-Line Analytical Processing) :是使分析人员、管理人员或执行 人员能够从多种角度对从原始数据中转化出来的、能够真正为用户所理解的、并真实反映企业维 特性的信息进行快速、一致、交互地存取,从而获得对数据的更深入了解的一类软件技术。 OLAP的目标:是满足决策支持或多维环境特定的查询和报表需求,它的技术核心是“维”这 个概念,因此OLAP也可以说是多维数据分析工具的集合。 OLTP与OLAP的不同点: OLTP数据 OLAP数据 原始数据 导出数据 细节性数据 综合性和提炼性数据 当前值数据 历史数据 可更新 不可更新,但周期性刷新 一次处理的数据量小 一次处理的数据量大 面向应用,事务驱动 面向分析,分析驱动 面向操作人员,支持日常操作 面向决策人员,支持管理需要 1.9.1 OLAP相关基本概念 维:是人们观察数据的特定角度,是考虑问题时的一类属性,属性集合构成一个维(时间维、 地理维等)。 维的层次:人们观察数据的某个特定角度(即某个维)还可以存在细节程度不同的各个描述方 面(时间维:日期、月份、季度、年)。 维的成员:维的一个取值。是数据项在某维中位置的描述。(“某年某月某日”是在时间维上 位置的描述) 多维数组:维和变量的组合表示。一个多维数组可以表示为:(维1,维2,„,维n,变量)。 (时间,地区,产品,销售额) 数据单元(单元格):多维数组的取值。(2000年1月,上海,笔记本电脑,$100000) 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 21 1.9.2 OLAP的特性 快速性:用户对OLAP的快速反应能力有很高的要求。系统应能在5秒内对用户的大部分分析要 求做出反应。如果终端用户在30秒内没有得到系统响应就会变得不耐烦,因而可能失去分析主线 索,影响分析质量。对于大量的数据分析要达到这个速度并不容,因此就更需要一些技术上的支 持,如专门的数据存储格式、大量的事先运算、特别的硬件设计等。 可分析性:OLAP系统应能处理与应用有关的任何逻辑分析和统计分析。尽管系统需要事先编 程,但并不意味着系统已定义好了所有的应用。用户无需编程就可以定义新的专门计算,将其作 为分析的一部分,并以用户理想的方式给出报告。用户可以在OLAP平台上进行数据分析,也可以 连接到其他外部分析工具上,如时间序列分析工具、成本分配工具、意外报警、数据开采等。 多维性:多维性是OLAP的关键属性。系统必须提供对数据的多维视图和分析,包括对层次维和 多重层次维的完全支持。 信息性:不论数据量有多大,也不管数据存储在何处,OLAP系统应能及时获得信息,并且管 理大容量信息。这里有许多因素需要考虑,如数据的可复制性、可利用的磁盘空间、OLAP产品的 性能及与数据仓库的结合度等。 1.9.3 OLAP多维数据结构 超立方结构(Hyper cube) :超立方结构指用三维或更多的维数来描述一个对象,每个维彼此 垂直。数据的测量值发生在维的交叉点上,数据空间的各个部分都有相同的维属性。(超立方结构 有一种变形,即收缩超立方结构。这种结构的数据密度更大,数据的维数更少,并可加入额外的分 析维)。 多立方结构(Multi cube):即将超立方结构变为子立方结构。面向某一特定应用对维进行分 割, 它具有很强的灵活性,提高了数据(特别是稀疏数据)的分析效率。 一般来说,多立方结构灵活性较大,但超立方结构更易于理解。终端用户更容易接近超立方 结构,它可以提供高水平的报告和多维视图。但具有多维分析经验的MIS专家更喜欢多立方结构, 因为它具有良好的视图翻转性和灵活性。多立方结构是存储稀疏矩阵的一个更有效方法,并能减 少计算量。因此,复杂的系统及预先建立的通用应用倾向于使用多立方结构,以使数据结构能更 好地得到调整,满足常用的应用需求。 许多产品结合了上述两种结构,它们的数据物理结构是多立方结构,但却利用超立方结构来 进行计算,结合了超立方结构的简化性和多立方结构的旋转存储特性。 1.9.4 OLAP多维数据分析 切片和切块(Slice and Dice):多维数据结构中, 在一部分维上选定值后,关心度量数据在 剩余维上的分布,如果剩余的维只有两个,则是切片;如果有三个,则是切块。如在“城市、产 品、时间”三维立方体中进行切块和切片,可得到各城市、各产品的销售情况。 钻取(Drill) :它是改变维的层次,变换分析的粒度。钻取包含向下钻取(Drill-down)和向 上钻取(Drill-up)/上卷(Roll-up)操作,roll up是在某一维上将低层次的细节数据概括到高层 次的汇总数据,或者减少维数;而drill down则相反,它从汇总数据深入到细节数据进行观察或 增加新维。 旋转(Rotate)/转轴(Pivot):旋转是变换维的方向,即在表格中重新安排维的放置(例如行 列互换)。通过旋转可以得到不同视角的数据。 1.9.5 OLAP的多种实现方法 OLAP的实现方法,根据存储数据的方式不同可以分为ROLAP、MOLAP、HOLAP: ROLAP表示基于关系数据库的OLAP实现(Relational OLAP)。以关系数据库为核心,以关系型 结构进行多维数据的表示和存储。ROLAP将多维数据库的多维结构划分为两类表:一类是事实表, 用来存储数据和维关键字;另一类是维表,即对每个维至少使用一个表来存放维的层次、成员类 别等维的描述信息。维表和事实表通过主关键字和外关键字联系在一起,形成了“星型模型”。 对于层次复杂的维,为避免冗余数据占用过大的存储空间,可以使用多个表来描述,这种星型模型 的扩展称为“雪花模型”。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 22 MOLAP表示基于多维数据组织的OLAP实现(Multidimensional OLAP)。以多维数据组织方式 为核心,也就是说,MOLAP使用多维数组存储数据。多维数据在存储中将形成“立方块(Cube)” 的结构,在MOLAP中对立方块的“旋转”、“切块”、“切片”是产生多维数据报表的主要技术。 HOLAP表示基于混合数据组织的OLAP实现(Hybrid OLAP)。如低层是关系型的,高层是多维 矩阵型的。这种方式具有更好的灵活性。 还有其他的一些实现OLAP的方法,如提供一个专用的SQL Server,对某些存储模式(如星型、 雪片型)提供对SQL查询的特殊支持。 1.9.6 多维数据库 多维数据库(Multi Dimesional Database,MDD)可以简单地理解为:将数据存放在一个n维 数组中,而不是像关系数据库那样以记录的形式存放。因此它存在大量稀疏矩阵,人们可以通过 多维视图来观察数据。多维数据库增加了一个时间维,与关系数据库相比,它的优势在于可以提 高数据处理速度,加快反应时间,提高查询效率。 目前有两种MDD 的OLAP产品:基于多维数据库的MOLAP和基于关系数据库的ROLAP。ROLAP建立 了一种新的体系,即星型结构。 MDD并没有公认的多维模型,也没有像关系模型那样标准地取得数据的方法(如SQL、API等)。 基于MDD的OLAP产品,依据决策支持的内容使用范围也有很大的不同。 在低端,用户使用基于单用户或小型LAN的工具来观察多维数据。这些工具的功能性和实用性 可能相当不错,但由于受到规模的限制,它们不具备OLAP的所有特性。这些工具使用超立方结构, 将模型限制在n维形态。当模型足够大且稀疏数据没有控制好时,这种模型将会不堪一击。这些 工具使用数据库的大小是以MB来计量的,而不是以GB计量的,因此只能进行只读操作,且具备有 限的复杂计算。 在高端,OLAP工具用4GL提供了完善的开发环境、统计分析、时间序列分析、财政报告、用户 接口、多层体系结构、图表等许多其他功能。尽管不同的OLAP工具都使用了它们自己的多维数据 库,但它们在不同程度上也利用了关系数据库作为存储媒体。因为关系数据库和OLAP工具同时在 高端服务器上处理,所以速度和效率仍然很快。 纯多维数据库引擎也被开发出来。尽管这些工具缺乏4GL及充分的开发环境,但却有比高端MDD 工具所使用的数据库更为复杂的数据库。这些工具也具有统计分析、财务分析和时间序列分析等 功能,并有自己的API,允许其对前端的开发环境开放。 MDD能提供优良的查询性能。存储在MDD中的信息比在关系数据库中的信息具有更详细的索引, 可以常驻在内存中。MDD的信息是以数组形式存放的,所以它可以在不影响索引的情况下更新数 据。因此MDD非常适合于读写应用。 1.9.7 流行的OLAP工具 Hyperion Essbase Oracle Express IBM DB2 OLAP Server Microsoft analysis services Brio Cognos Business Object MicroStrategy 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 23 2 数据仓库架构 目前来说,数据仓库架构比较成熟并已经形成理论的主要有两个,一个是Corporate Information Factory,简称CIF,中文一般翻译为企业信息工厂,代表人物是Bill Inmon。另一 个是Mutildimensional Architecture,简称MD,中文一般翻译为多维体系结构,代表人物是Ralph Kimball。 企业信息工厂主要包括集成转换层(Integrated and Transformation Layer)、操作数据存 储( Operational Data Store)、数据仓库(Enterprise Data Warehouse)、数据集市(Data Mart)、 探索仓库(Exploration Warehouse)等部件。 多维体系结构分为后台(Back Room)和前台(Front Room)两部分。后台主要负责数据准备 工作,称为数据准备区(Staging Area),前台主要负责数据展示工作,称为数据集市(Data Mart)。 而数据仓库是一个虚拟的部件,它指的是全部数据集市的集合。 两个数据仓库架构各有优缺点,一种比较流行的做法是合用两种架构,即建立CIF的数据仓库 和MD的数据集市。 2.1 HWBIS系统架构 华为BIS系统采用的就是合用CIF数据仓库和MD数据集市的架构。 2.1.1 技术架构 三层架构模型将传统操作业务切分成几个层次,每个层次提供不同的相关服务,如DB服务、 应用服务、Web服务等。三层架构为系统提供了复杂应用操作,同时提供对现有应用集成及今后 应用扩展强有力的支持,增强了安全机制,提高了性能,并提供对LDAP目录服务的支持。 三层架构包括数据库层,应用服务器层,用户终端层。其中数据库层,采用Unix平台上的Oracle 9i系统作为数据库服务器。Oracle作为最先进的数据库产品,具有性能优越,工作稳定可靠,适 合数据仓库系统要求的海量数据存储的需要。应用服务器层运行包括ETL服务(抽取,转换,加 载),元数据服务,Reporting服务,Portal服务,OLAP服务等五种应用。用户终端层只需通过 浏览器,访问华为业务智能系统各应用。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 24 ETL服务器采用CA的ADT EME Server,它可以同时连接多达64个不同的数据源。对华为来说, 这些数据源包括Notes,SQL Server,Oracle,Text file等。这些数据通过ADT Server进行加工 转换后,进入到数据仓库中。 OLAP分析主要采用MS OLAP 与BO相结合的方式。BO作为前端可以进行钻取,切片,旋转等多 维分析操作,而MS OLAP则存放CUBE。这种方式可以将运算操作集中于Cube服务器,而Client端 无需将Cube下载到本地,节约了空间,减少了网络负载,同时提高了数据展现的效率。通过BO的 Universe方式,还可以进行灵活的查询,生成固定格式的报表。 由于有不少的数据来源于纸面或某些数据需要调整,所以需要一个补录系统来输入这些数据, 并可以维护这些数据。补录系统采用JSP方式或Java方式进行开发,遵循J2EE架构,可以采用的 应用服务器包括Oracle FormServer,WebLogic,Websphere。 以上的前端应用均可实现Web方式的访问,只不过还需配置BO Web Server和Web Server。 整个过程中产生的模型通过模型管理工具Erwin和ModelMart进行管理。 元数据由Repository进行管理。通过DataShopper,最终用户可以方便地浏览元数据。通过 Repository Client,管理人员可以方便地对元数据进行管理和维护。 2.1.2 数据架构 从5个层次来设计华为数据仓库环境的数据架构,数据储存、模式、各主题的数据概念模型、 逻辑模型和物理模型,各主题的数据概念模型、逻辑模型和物理模型在数据架构设计中实现。 整个数据仓库环境分为4个数据区,即数据源区,数据仓库区,OLAP区和元数据区。数据仓库 从物理上分又为4个区:数据准备区(Staging Area),当前数据和历史数据区(ODS),细节数 据(BaseLine),数据集市(DataMart)。 ERP SAP Flat Files 数据源 数据准备 当前/历史数据 细节数据 OLAP数据 DMS APS 元数据 HWBIS 数据仓库环境的数据储存架构 OLAPBaselineODSStaging Area - - = -- -- == - - = -- -- == - - = -- -- == - - = -- -- == - - = -- -- == - - = -- -- == Data Mart 数据集市 数据仓库区 OLAP区 Staging区:对存储空间的要求是临时的,且是暂时存放每天从OLTP系统抽取的变更的数据。 ODS区,存放两部分数据,一部分是当前变更的数据,一部分是存放从OLTP抽取的历史数据。 BaseLine区,该区存放经过转换后的细节数据。 DataMart区,该区存放汇总数据。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 25 3 主流数据仓库产品介绍 3.1 ETL工具 3.1.1 Informatica PowerCenter Informatica PowerCenter 是Informatica公司开发的世界级的企业数据集成平台,也是业界 领先的ETL工具。Informatica PowerCenter使用户能够方便地从异构的已有系统和数据源中抽取 数据,用来建立、部署、管理企业的数据仓库,从而帮助企业做出快速、正确的决策。此产品为 满足企业级要求而设计,可以提供企业部门的数据和电子商务数据源之间的集成,如XML,网站 日志,关系型数据,主机和遗留系统等数据源。此平台性能可以满足企业分析最严格的要求。 产品体系结构和工具原理: 产品功能模块描述 1)1个(或多个)Repository PowerCenter数据整合引擎是基于元数据驱动的,提供了基于元数据驱动的元数据知识库 (Repository),该元数据知识库可以在主流的关系型数据库中部署。该元数据库中存储所有的 ETL元数据,包括:源、目标表的物理和逻辑元数据,ETL转换规则,知识库用户权限,ETL任务 运行历史信息等元数据。 2)2个Server: Informatica Repository Server:资料库Server,用来管理所有对资料库中元数据的请求和 操作。 Informatica Server:实际的ETL引擎 3)5个Client: PowerCenter Designer:设计开发环境,定义源及目标数据结构;设计转换规则,生 成ETL映射。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 26 Workflow Manager:对Workflow,Session等ETL任务作设计,同时提供了对任务执行 的调度和管理功能。 Workflow Monitor:监控Workflow和Session运行情况,生成日志和报告。 Repository Manager:元数据维护和安全操作,如:元数据查找,用户、组、权限管 理等。下图是RepositoryManager的操作界面。 Repository Server Administrator Console:对知识库的操作,如:知识库的创建、备份、 恢复等。 PowerCenter基本工作原理 Informatica是基于元数据驱动的,所有的元数据都保存在Repository(知识库)中,该知识库可 以创建在所有主流数据库当中,充分体现了它元数据的开放性。 Repository Server用来管理所有客户端以及Informatica Server跟Repository的交互, 并且一 个Repository Server可以管理多个Repository,而Repository Server可为每个Repository分 配一个Repository Agent来处理所对有元数据操作的响应。 Informatica Server是实际处理ETL任务的后台服务,它是基于内存运行、高效的ETL服务,不需 要产生任何的代码,每次执行任务之前都会从Repository中读取最新的ETL规则。 Informatica的客户端提供了无编码、完全图形化的设计和管理调度界面,可实现快速开发和部 署。 一个基本的ETL任务设计和部署的大致步骤如下: A) 使用Designer客户端,获取源数据表的元数据。 B) 使用Designer客户端,获取目标数据表的元数据。 C) 使用Designer客户端,设计一个Mapping,其中就是源->目标的ETL规则。 D) 使用Workflow Manager客户端,针对上面实现的Mapping,实例化为一个Session,为其指定 实际的数据源、目标连接,以及其他属性。 E) 使用Workflow Manager客户端,创建一个Workflow,其中包含上述的Session以及其他的Task, 在Workflow中可实现复杂的流程控制。 F) 运行上述Workflow,使用Workflow Monitor客户端,监测最终的任务运行结果。 附件 Informatica公司介 绍及产品手册.pdf 3.1.2 IBM DataStage DataStage是原Ascential Software公司所有企业整合系列产品中关键产品。它支持大容量数 据的收集、整合和转换,数据从简单结构到很复杂的结构。基于高可扩展性的软件架购,它使得 企业能够通过高性能来解决大部分业务问题,并行处理大容量数据。强大的企业元数据管理能力 使得可以在数据整合生命周期中在所有工具中共享和使用工具。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 27 DataStage发布了四个核心功能来成功实施企业数据整合:先进的开发和简单化的维护;企业 级别的开发、监测和管理;在吞吐量和性能方面提供了无限制的高扩展的体系架构;端对端的企 业级元数据管理。 DataStage提供了全面的功能去最优化用户在建立、升级和管理数据整合架构时的速度、灵活 性和效率。DataStage增强的功能减少了学习的周期、简单化了管理和优化了开发资源的使用, 减少了数据整合应用的开发和维护周期。结果,DataStage使得企业能够花更少的时间开发他们 的整合应用,更多的时间是不断的从中受益。 DataStage使用了Client-server架构,如下所示。 图一、DataState Client-Server架构 DataStage产品的功能特点 拥有了DataStage产品系列,管理者和开发者就可以灵活的做到以下方面: 保证开展精确的商务分析所需数据的质量与可靠性 从多样化的,有时有些模糊的数据来源采集、集成和转换复杂数据与简单数据用于建立和维 护数据集成信息基础设施而不会使现有的资源负担过重 集成整个数据环境内的元数据,这对于维护前后一致的分析解释 利用大型机的运算能力采集、加载保留数据,将网络性能提升到最高 为开发者提供强大的运算能力只是方程的一部分。Ascential软件公司长期以来都支持开发者 为满足最后期限,达到客户需求,促进环境最佳化所做的努力。DataStage可以提供这样一个开 发环境: 直观化的操作,避免了在学习中走弯路,实现开发资源的最佳化 通过提供数百种预先预制的转换和鼓励利用API重复使用代码缩短开发周期 使用内建的调试器帮助开发者验证代码,从而提高应用程序的可靠生,缩短开发者修正错误 解决故障所花费的时间 通过支持单字节字符集和多字节编码允许开发者迅速实现集成应用的全球化 为开发者提供更大的灵活性,开发者可以在某一平台上开发数据集成应用程序,然后将程序 打包并运用到环境中任何需要的地方 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 28 遵守工业标准,采用经过验证的应用程序界面,从而提高了开发者的工作效率 用户通过各个客户端工具访问DataStage的开发、配置和维护功能。这些工具包括: Designer:用来建立和编辑DataStage作业和表的定义。Designer中的“Job Sequencer”控制作业的执行,其他作业成功完成(或失败,等)的条件。 Administrator:用来执行管理任务,如建立DataStage用户、建立和删除工程 并且建立清洗标准。 Manager:用来编辑管理用户工程的DataStage资料库。 Director:用来验证、时序安排、运行和监测企业版作业。 附件 DataStage技术白皮 书.pdf 3.1.3 主流ETL工具对比分析 大项 小项 Informatica IBM datastage 市场 市场占有率 和 IBM DataStage 处于业界前两位, 市场份额超过12% 市场占有率第一, 拥有较大的市场份 额 是否有电信行业的实施经验 有,在中国移动有 较多的应用案例, 在中国电信也有应 用(上海、江苏、 贵州) 有,在中国移动多 省 已 有 实 际 的 应 用,在中国电信也 有应用(福建、重 庆、安徽、贵州、 四川、海南) 服务 国内服务人员 有一支41人的工程 师队伍 50名全球认证工程 师 国内是否有原厂商技术支持 是 是 服务响应水平 通常由代理商提供 服务 原厂商工程师直接 处理客户问题,暂 无800支持 平台支持 支持主流的平台,包括:SUN Solaris, HP-UX, IBM AIX, 支持Windows(32 位和64位) 支持所列的所有主 流平台 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 29 AS/400, OS/390, Sco Unix, Linux, Windows HP Unix(32位和64 位) IBM AIX(32位和64 位) Sun Solaris(32 位和64位) 平台间的可移植性(包含不同平台 间移植以及从相同平台开发环境到 生产环境间的移植) 支持,有较好的可 移植性 支持,需要一些相 关配置文件的修改 支持 数据源及目 标数据库 广泛的数据源和目标数据库支持: 如DB2, Informix, Oracle, Sybase, SQLServer, Teredata, OleDB, SAS, Text, Excel, SAP, Peoplesoft, IMS, VSAM, QSAM on 390, FTP, XML, MessageQueue, Weblog 支持所列的所有数 据源和目标数据库 支持所列的所有数 据源和目标数据库 是否支持多种字符集(GBK、 Unicode、UTF-8)数据源 支持所列的3种字 符集 支持所列的3种字 符集 数据抽取、 转换、装载 功能 对抽取到的数据能进行灵活的计 算、合并、拆分等转换操作。 支持计算、合并、 拆分等转换操作 支持计算、合并、 拆分等转换操作 支持字段映射; 支持,图形化工具 实现 支持 映射的自动匹配; 支持 支持 字段的拆分; 支持 支持 多字段的混合运算; 支持 支持,运算规则灵 活配置 跨异构数据库的关联; 支持 支持 多数据类型支持; 支持所有数据类型 支持 复杂条件过滤; 支持 支持,过滤条件灵 活配置 支持脏读; 支持 支持 数据的批量装载; 支持 支持 时间类型的转换; 支持目前所有的时 间类型的相互转换 支持 对各种码表的支持; 支持 支持 环境变量是否可以动态修改; 是 是 去重复记录; 支持 支持 抽取断点; 支持,包括一台机 器DOWN掉重起后的 断点续传,也包括 一台机器DOWN掉, 另一台备机能断点 续传 支持 记录间合并或计算; 支持 支持 记录拆分; 支持 支持 抽取的字段是否可以动态修改; 支持 支持 行、列变换; 支持 支持横表、纵表转 换 排序; 支持多种规则排序 支持 统计; 支持多种维度统计 支持 度量衡等常用的转换函数; 支持,工具自带 支持,工具内嵌, 可以自己配置 抽取远程数据; 支持 支持 增量抽取的处理方式; 支持 支持 在转换过程中是否支持数据比较的 功能; 支持 支持 数据预览; 支持 支持 数据清洗及标准化; 支持,能够标准化 数据,合并数据 支持,能够自动标 准化数据,查重 按行,按列的分组聚合; 支持 支持 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 30 是否有良好的参数处理机制等 支持 支持 管理和调度 功能 抽取过程的备份与恢复; 支持自动备份和手 动备份,支持自动 恢复与手动恢复, 有较好的断点恢复 功能 支持自动和手动备 份与恢复 ETL工具升级,版本管理; 方便的升级,工具 具 有 版 本 管 理 功 能,自带数据库保 存版本 工具提供的管理平 台具有版本管理的 功能 开发和发布支持统一以及自定义的 管理平台; 提供统一的管理平 台,实现快速的开 发和部署;也可以 兼容自定义的管理 平台,实现部署 工具提供统一的管 理平台,在平台上 实现开发和部署, 部署也可以通过自 定义的管理平台实 现 支持用户对计算机资源的管理和分 配; 支持对主机CPU、内 存等资源的管理和 分配 支持 调度过程中能否执行其他任务等 支持,在执行一个 ETL任务时能启动 执 行另外的ETL任 务,实现并发性 支持,ETL进程能够 并行执行 是否支持数据依赖的建立 支持,通过工作流 来建立前置和后置 环节的依赖关系 ETL工具内嵌的功 能能够自动收集各 个实体之间的依赖 关系,外界通过查 询某个实体就可以 知道它的前后依赖 关系 是否有较好的冲突分析机制 有冲突分析机制 有较好的冲突分析 机 制,如一个ETL 流 程 涉 及 多 个 实 体,当对某个实体 作变动时,会给出 提示 是否具有权限控制功能 支持 支持 是否有性能监控; 支持,全程监控ETL 过程各个环节的性 能 支持,提供监控界 面 数据审计功能(任务运行情况的分 析与监控,各个数据处理模块的数 据处理情况分析) 支持,能够监视数 据的执行和调度的 情况.包括各个任 务 的 运 行 情 况 视 图,运行日志等 支持,能够监控任 务执行情况,生成 详细的工作日志及 统计报告,有较好 的作业日志支持 调度的可视性;完善的任务管理能 力,能够灵活地制定数据抽取任务 的执行策略; 可实现基于时间、事 件和指示文件的作业调度机制 支持 支持 是否支持作业的异常处理机制(包 含业务数据错误以及系统数据错 误) 支持,有数据错误 就生成报表,不影 响作业的正常执行 支持,生成异常数 据报告,作业执行 不受影响或异常到 达一定程度后停止 作业 性能 高效性,应具有较高的执行效率。 当然对于特殊的大数据量的处理可 能会采用人工开发的方式,以获取 最好的效率 有较为智能的并行 处理技术 支持。并行技术的 采用使得对于特殊 的大数据量的处理 无须采用人工开发 的方式,即可获取 最好的效率;开放 并行性能架构 均衡负载 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 31 支持网格计算 的、面向服务架构 (SOA),具有较好 的可扩展性,能够 保持性能的线性增 长 实时和批处理数据整合 可扩展性 开发 可以轻松实现对分布在各处的数 据加载。并将数据按不同主题存储 支持所列的功能, 较容易上手,但深 入使用须较长时间 的积累 支持所列的功能。 但对开发人员素质 要求较高。 统一的图形界面开发 统一的元数据管理 和面向开发的冲突 分析由元数据管理 工具MetaStage提 供。 易于使用,拖曳界面 内带数据预览,结构分析,清洗 和调试 图形化工作流 调试功能; 内带数据质量交互式调试 强大的面向开发的冲突分析 中央知识库 中央管理 可以定义源及目标数据结构,设 计转换规则,生成 ETL映射 开发周期的长短 工具的易用程度 是否支持程序的版本比较功能 集成和开放 性 与OLAP 集成 支持所列的所有功 能 支持 与前端工具集成 对元数据管理部分 支持出色,能够动 态地与元数据管理 工具建立关联,能 够做到与元数据管 理版本一致 与建模工具集成 开放的 API 可将产品集成到统一 界面 是否能调用各种外部应用,包括 存储过程、各种流行语言开发的应 用程序等 是否支持客户化定制的转换过程 是否支持与统计分析工具的集成 能否和元数据工具较好地集成 3.2 报表展现工具 3.2.1 Business Objects Business Objects 是全球BI领域最优秀的前端展现工具。 Business Objects 帮助企业更好 地跟踪,理解和管理自身绩效, Business Objects 的解决方案充分利用了企业数据库、企业资 源规划( ERP )以及客户关系管理( CRM )等一系列系统中存储的信息。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 32 Web Intelligence BO包括Web端产品Web Intelligence,在Web上实现等同于BO的强大功能。利用 WebIntelligence,可以令BI系统获得强有力的Web支持。 Web Intelligence可以让您的用户实现自助信息访问和交互,同时还提供: 强大的、基于Web的即席查询 适用于所有用户集成的、可靠的分析 建立在经过验证的、市场领先的商务智能(BI)平台之上的一种工具 Dashboad BusinessObjects™ Dashboard Manager提供了指标、告警和仪表盘等管理功能,可帮助企业 监控和了解企业的业务活动。 仪表盘能够充分利用企业现有的商务智能(BI)基础设施,易于构建,用户界面友好,并提 供深入的分析功能。管理仪表盘使得企业能够跟踪指标,通过基本分析来获得深入了解,当条件 发生变化时能基于一定的业务规则发出告警。利用高级告警功能和指标引擎,Dashboard Manager 使整个企业的用户能够获得一致、最新的关键业务信息,从而有效地对企业进行监控。 Dashboard Manager可方便地在整个企业内提供仪表盘,帮助企业实现以下功能: 监控业务绩效 了解业务驱动因素 部署个性化的仪表盘 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 33 3.2.2 Cognos Cognos 产品构成 系统物理结构共分为四层: 1)数据源层:包括业务数据库,数据集市,数据仓库,多维立方体以及其他来源的非关系型数据, 作为查询统计分析的数据来源。 2)模型定义层:模型定义层可以分为两部份,一部分通过Cognos BI Modeling 将数据库在应用 层定义为数据查询模型,定义的内容包括,数据库中的表 字段在模型层被重新命名,重新组织, 使其符合业务人员的逻辑;表及字段被赋予应用级安全性,保证恰当的人可以看到恰当的数据。 第二部分是将通过Cognos BI OLAP Modeling统计汇总数据按照业务逻辑生成多维立方体,将数 据按照多维信息重新进行组织并且在应用层设置权限,使用户进行统计分析时得到较好的性能和 灵活的查询组合方式。 3)应用服务器层:应用服务器层的Cognos BI Server for Reporting和Cognos BI Server for Analysis将在模型定义层中定义的模型和多维立方体通过Web Server进行发布展示。需要注意的 是,查询模型和多维立方体是可以通过”穿透钻取”有效的连接起来,使得分析—然后—查询的 Cognos 分析模式得到很好的体现。 4)浏览器层:企业用户可以通过浏览器无需任何插件来进行查询、统计分析,得到正确的信息。 对系统进行管理。 在整个系统中,Cognos主要如下产品: Cognos BI OLAP Modeling Cognos BI Server for Analysis Cognos BI Modeling Cognos BI Server for Reporting (1) BI OLAP Modeling BI OLAP Modeling是Cognos提供的企业级OLAP 模型设计工具,它将从各类数据源(数据库、数 据仓库、平面文件)中筛选出来的数据创建成多维数据立方体。立方体是按探察业务的OLAP多维 因素分析模型的设计创建,通过对多维数据立方体的OLAP分析,用户可以辨明趋势、跟踪业务运 作、创建高效的统计汇总报表。 Cognos BI OLAP Modeling具有极高的存储效率和响应速度,完全脱离了关系型数据库在性能和 存储空间效率上的羁绊,保证用户在访问数据时达到秒级的响应速度。 (2) Cognos BI Modeling Cognos BI Modeling是Cognos的元数据模型设计工具,它可以连接多个数据源,对数据结构进行 描述,为Cognos的多维分析,即席查询,报表等各种应用提供统一一致的数据视图,降低对企业 数据访问的复杂性,同时提供对各种应用使用的结构的统一的管理。 (3)Cognos BI Server for Analysis Cognos BI Server for Analysis是业界领先的OLAP展现工具。它不仅能够让企业中的每一位员 工都能够轻松自如地访问企业重要数据,从而更有效地管理其业务;还能对企业数据进行多维分 析和统计汇总报表制作,从而展现整个企业发展的趋势、控制业务运作。 Cognos BI Server for Analysis具有强大的定制分析制作能力,而这一切仅需用户通过鼠标托 拽操作来完成,Cognos BI Server for Analysis的易用性使得用户仅需要少量培训即可投入使 用。 Cognos BI Server for Analysis以提供零客户端的纯Web访问方式,具有易用性出色的使用界 面,同时又使得部署成本降到最低。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 34 (4)Cognos BI Server for Reporting COGNOS BI SERVER FOR REPORTING是基于Web的即席查询报表制作/展现工具,用来从企业的关系 型数据库中直接取出数据进行查询和报表展现,或者定时生成固定报表,满足用户对底层数据深 入探查的需求。COGNOS BI SERVER FOR REPORTING展现的报表基于BI Modeling定制的数据结构, 用户可以在浏览器中自定义报表,格式灵活,元素丰富,而且可以通过COGNOS BI SERVER FOR REPORTING进行完全即席的开放式查询。COGNOS BI SERVER FOR REPORTING可以接受来自Cognos BI Server for Analysis的穿透钻取,使用户在分析汇总数据的同时能够深入到自己感兴趣的细节 数据中,以便更全面地了解情况,做出正确决策。COGNOS BI SERVER FOR REPORTING强大的报表 制作和展示功能能够制作/展示任何形式的细节报表,其纯粹的Web界面使用方式又使得部署成本 和管理成本降到最低。COGNOS BI SERVER FOR REPORTING还提供了HTML、PDF甚至是XML等多种输 出格式,提供给用户最全面的数据查询和即席报表展现功能。 Cognos产品特性简介 1)平台独立性 Cognos支持主流的UNIX和Windows,在各个平台上的功能没有任何区别。Cognos的数据探查,分析, 报表功能不依赖于任何第三方的支持,都能提供同样强大的功能和出色的表现。 2)安全认证 Cognos具有统一的安全性认证机制,在Web方式下提供了完善的安全性认证,安全性能控制到报 表单元格级别的访问。同时Cognos的安全性还是一个开放的安全性系统,能够嵌入操作系统、网 络域等多种企业现有的安全性方案中。Cognos严密有效的安全性机制能有效保证企业数据的安 全,为真正的企业级应用打下良好的基础。 3)元数据管理 cognos具有一致,统一的元数据管理,同时在元数据层具有完备的安全性控制。能够为整个企业 提供一致的数据视图。由管理员或高级用户定义元数据模型,管理种类繁多的字段、表连接、视 图等等对象,并且元数据可以贯穿整个Cognos应用始终,便于最终用户探查细节数据。能够平滑 的适应从简单到复杂的应用环境。 4)开放的数据访问 用户可以访问各种数据源,基于这些数据源制作报表,分析,这些数据源包括 关系型数据库 (IBM, Oracle, SQL, Teradata, Sybase, ODBC, etc.) Cognos Cube:Cognos PowerCubes, Cognos Planning Contributor Cubes, and Cognos Finance Cubes OLAP (Microsoft SQL Server Analysis Services, IBM DB2/OLAP, Hyperion Essbase 其它:XML, JDBC, LDAP, WSDL 对于关系型数据库的内容,也可以定义维度等内容,使用户能够像操作Cube一样对关系型数据库 中数据进行分析。 同时ReportNet的强大报表功能也扩展到了OLAP数据源。可直接通过Query Studio, Report Studio对OLAP数据源进行访问,生成查询和报表。 5)报表制作 纯浏览器方式: cognos采用的是纯浏览器方式,整个系统中最终用户的使用界面为真正的零安装、零维护。 多数据源: 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 35 cognos 可以同时连接多数据源,甚至异构数据源,一个报表中可以分页设计,每页都可以进行 多查询,每个查询可以连接多个数据源。从而使系统能够很好的应用在复杂环境中。 存储过程: Cognos 对各种数据库的存储过程都能友好的支持。可直接将存储过程返回的结果集字段以表的 形式展现,还可以做存储过程和存储过程以及存储过程与数据库表之间的连接。减少了开发人员 的工作量,增加了最终用户使用的友好性。 报表制作的方便性: Cognos 在纯浏览器界面中,提供了基于鼠标拖拽的强大的格式定义能力,其优异的XML可视化报 表定义方式,可以使用户非常方便的控制报表中内容的精确布局,也可以很方便的制作中国特色 的非平衡报表。只需要做简单的操作就可以完成穿透钻取,级联提示等功能。使得最终用户可以 自己制作个性化的报表,IT部门从烦杂重复劳动中解脱出来,将精力集中在如何利用数据。 报表内容: Cognos 可以将包括声音,视频,图形,表格,文字,关系行数据库内容,OLAP等任何有用的信 息集成在报表中,同时这些内容还可以和查询相关联,使报表的内容声色并茂,内容饱满,充实。 可直接访问OLAP和关系型数据源制作报表 支持在图形等内容上进行钻取 支持在报表制作过程中使用MDX 可直接制作非平衡报表,比如将不同维度或字段的内容在同一行或列展现 在报表制作过程中进行查询的连接,交并补关系设置更为方便 支持仪表盘功能 支持地图报表,并提供例子 可在图形中添加基本线,标注等,比如表达式的结果,平均,最大最小,标准偏差等 增加了图形的种类,包括:gauge charts• horizontal progress charts• combination charts involving stacked charts (100% or absolute)• metric target charts• bipolar-axis combination charts• 3D-point charts等 穿透钻取: Cognos的各个模块能够紧密集成,能够迅速有效地传递数据流和安全性信息,用户可以从一个主 题钻取到另一个主题,其独特的分析后的查询,使用户能够通过OLAP分析再穿透钻取到相关的明 细数据,适应了用户的分析和使用习惯,从而能从业务上层次上跟踪发生了什么问题和为什么发 生了这样的问题。 高级报表功能: Cognos可以很方便的制作KPI,平衡记分卡,仪表盘等各种高级报表。 6)报表发布 Cognos中,所有数据立方体、报表、图表、分析,查询等等对象都可以发布到统一的信息门户中, 做到信息集中,为使用者的访问增加便捷。 7)强大的基于Web的分析功能 模块Analysis Studio,提供纯浏览器的高级分析功能。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 36 Analysis Studio不仅可以像以前的PowerPlay那样访问OLAP数据源,还可以像PowerPlay那样方 式访问通过多维建模的关系型数据源 8)开放API Cognos作为一个企业级的端对端的解决方案,产品本身已经提供了全面完备的功能。同时Cognos 也完全开放API供企业内部不同应用系统的集成和根据用户需求所作的二次开发 9)负载均横 Cognos产品是为企业级应用精心设计的,具有良好的可扩展性能,其服务器本身就具有智能的负 载均衡功能,能根据实际使用情况对各个的模块进行负载,满足企业级大用户数并发访问的要求, 需要加入一台新的服务器,通过简单的注册就能加入到整个扩展环境中参与负载;并且支持NT和 UNIX混和环境的负载均衡,能最大限度的利用现有资源保护已有投资。 10)对资源的利用 cognos 采用的无状态连接,服务器只有在用户进行动态操作时才会使用,能更有效的使用系统 资源,支持更多用户并发。 Cognos采用的是多线程机制,每个用户请求对系统资源的占用少,能最大化资源的利用和用户并 发,即使某个用户请求出了问题,不会影响其他请求,系统还能照常运行。 11)事件生命周期管理 event studio,通过他可以在影响业务的事件发生时对用户进行自动的提醒,你可以通过Agent 对事件的条件进行定义,设置处理事件的任务。从而为系统提供全面的监控,对用户进行及时提 醒。 12)Cognos BI BUS Cognos的BI BUS为Cognos的产品提供了统一的接口和标准,使得系统的升级和融合变得非常容易。 3.2.3 主流报表工具对比分析 大项 小项 Business Objects Cognos 市场 销售额 12亿美元(2006年) Cognos 年销售额:9亿8 千万美金 市场占有率 14.3%(IDC2006 年数 据,排名第一) Cognos的市场占有率处 在同业在领先地位 服务 国 内 是 否 有 售 后 服 务 中 心,研发中心,人员配置 共约100人,分销售、 售前、专业服务、售后 服务等部门 总公司位于北京。上海, 广州等地设有办事处。公 司有50余人; 国内是否有原厂商技术支 持 是,专业BI工具产品唯 一一家原厂商 优信佳为国内独家代理, 大部分问题由代理商解 决,部分问题由原厂商解 决。 是否有电信行业的实施经 验 有,在国内电信行业案 例众多,在中国电信也 有较多的应用(上海、 浙江、陕西、甘肃、云 南、广东、江西、北京) 具有大量的通信业行业 实施经验。 在中国电信也有较多的 应用(新疆、福建、安徽、 湖北、广西、贵州、江苏、 四川、海南、宁夏、青海、 北方) 报表功能 支持主流浏览器 支持,包括 支持包括IE, Netscape, 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 37 (IE/Firefox等) IE/Firefox/Safari等 Firefox等各种主流的浏 览器。 易用性:报表制作过程简 单,用户可自主完成数据 获 取 报 表 格 式 调 整 等 操 作,无须编写代码 易用,用户可以自主完 成数据获取、报表格式 调整等,无须编写代码 易用。报表制作过程简 单,用户不需要编写代 码,无需理解数据库逻辑 和计算机语言,通过将报 表数据元素和报表格式 拖放到一个空白页面,就 可以自主完成数据获取 报表格式调整等操作 本地无须第三方软件支 持,用户自主选择DHTML或 是JavaApplet方式进行高 效快速的报表制作 支持,可由用户自主选 择 DHTML 或者Java Applet方 式 进 行 高效 快速的报表制作 支持最终用户本地不需 第三方软件,用户直接在 纯浏览器中通过鼠标拖 拽就可以方便的进行高 效的报表制作。 系 统 提 供 一 定 的 门 户 功 能,可嵌入到企业级的门 户中 支持Portal集成, 提 供Portalet,可以将内 容集成到标准Portal 中,支持WebLogic、 Websphere 、 Sharepoint 等标准 Portal软件 提供了Portal,产品采用 Portlet技术,能够和各 种门户,网站,网页实现 双向集成。 能够任意制作适合国内用 户习惯的中国式报表(多 重表头/非对称/多数据源 汇总);行列冻结;双坐标 轴图表 支持,BO前端报表工具 能够实现各种复杂格 式的中国式报表 能够实现任何中国式报 表,在中国电信已应用的 省市有体现, 支持行列冻结 能够实现行列冻结。 支持坐标轴图表 能够实现坐标轴图表 基本功能:查询,过滤, 自定义计算行,列,异常数 据突出显示,支持自定义 函数对数据进行计算和加 工,支持数据的分页显示; 报表精确打印:所见即所 得,用户可以随意调整报 表中元素位置; 支持所列的所有功能 能够实现所列的所有功 能,具有强大的功能,能 够支持所见即所得的打 印,能够将报表输出为 HTML,EXCEL,PDF,CSV,X ML等各种文件 允许用户自定义报表 钻取:可轻易实现任意格 式报表数据的业务间相关 钻取;上钻,下钻,交叉 钻取,切片,切块,旋转 支持,简单易用的钻取 功能让用户能够观察 从宏观到微观的数据, 并且可以自由设置钻 取路径,通过钻取和报 表链接功能,可以实现 任意报表数据的业务 间相关钻取 能够支持任意格式报表 数据的业务间进行钻取, 只需要通过简单的配置, 不需要编写代码。支持用 户在图形,报表标题,表 头,数据等各个位置进行 钻取,甚至非平衡交叉表 中都能够上下钻取。并支 持不同主题之间的钻取, 主题多维立方体和数据 库之间的钻取,MOLAP和 ROLAP之间的钻取 丰富的图表显示 支持,BO前端展现产品 提供柱图、线图、饼图, 还提供雷达图、散点 图、速度计、漏斗图等 多种图表 支持包括柱图,条形图, 渐进图,排列图,折线图, 堆积图,饼图,圆环图, 面积图,组合图,散点图, 泡形图,点状突,雷达图, 极坐标图,仪表板,肚量 标准范围图等二维,三维 的几十种图形。 可以采用第三方的图表格 式,支持用户的任意定制 支持,用户可在报表中 嵌入第三方对象 可以采用第三方图表格 式,支持用户的任意定 制。通过二次开发能够将 第三方图表格式集成在 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 38 报表中。 和主流GIS 系统( 如 Mapinfo)无缝集成 支持,提供和主流GIS 系统(Map Info)的无 缝集成 已经内置了Mapinfo,用 户可以直接在报表中插 入地图对象,通过鼠标拖 拽就能将地图信息和数 据关联在一起,地图能够 根据颜色动态渲染。整个 过程不需要编写程序。 支 持 创 建 关 键 性 能 指 标 (KPI)/仪表盘等格式的报 表 支持,可以直接创建 KPI指标/仪表盘格式 的报表 支持,通过鼠标拖拽等简 易的方式创建包括关键 指标,仪表盘、地图报表, 多媒体报表在内的各种 格式报表。 报表输出: 支持:报表展现支持直 接打印、多种格式文件 输出(包括 Word/Excel/TXT/CSV/ PDF等),在C/S和B/S 方式下均提供Office 格式文档导出,同时具 有与源报表只见的超 链接;支持TXT文件 HTML,PDF格式导出; 提供表格和图形的 Excel无损格式输出, 并提供到Word格式的 无损格式输出,保证所 有图表均可以进行脱 机的格式调整 用户可以直接在没有插 件的纯浏览器中通过点 击按钮等简易的方式就 可以完成EXCEL,CSV, PDF,XML等各种格式。支 持文本,HTML格式,支持 将表格,图形无格式损失 的导出为EXCEL文件。导 成EXCEL之后还能够进行 脱机的格式调整。同时能 够和Office产品紧密集 成,使用户直接在EXCEL, Word,PowerPoint产品中 就可以打开Cognos报表, 进行修改,发布,实现和 其他用户的信息共享 支持C/S和B/S方式下均支 持 MS Office 文档格式 (Word/Excel/CSV) 导出, 同时具有与源报表之间的 超链接;支持TEXT,HTML, PDF格式导出;提供独有的 表格图形的Excel无损格 式输出(所有图表均可以 进行脱机的格式调整) 实现信息的主动分发,将 信息分发到邮件、手机、 传真等平台,支持报表订 阅机制,用户主动订阅报 表信息。 支持信息多种的主动 分发方式,包括邮件、 手机、传真等,支持用 户主动订阅 完全支持所列的功能要 求 各类应用统一在WEB上实 现系统管理;可对用户信 息和元数据进行统一管理 工具提供统一的WEB管 理平台实现系统管理, 能够实现用户信息和 元数据的统一管理 采 用 统 一 的 元 数 据 , Cognos元数据采用CWM标 准,能够和各种标准工具 进行元数据交换 特色功能 提供分析报告管理,文 档讨论功能,分析协作 统一产品,跨数据源,统 一元数据,统一安全性, 统一服务,统一门户;可 在所有层次进行扩展 权限安全 支持NT认证及LDAP安全机 制 支持多种方式的权限 集成,包括LDAP集成、 Windows NT 域集成、 Windows AD集成,或者 BOE认证登录 提供了API 的方法使 COGNOS和企业已有的安 全性集成,以工业标准 LDAP目录服务的方式进 行用户安全性管理,能与 其他安全性产品和应用 集成使用。 提供集中管理的安全控制 机制和权限继承机制,使 得不同用户根据角色的不 同对信息拥有不同的访问 权限 支持用户、角色的权限 管理,提供集中的权限 管理,权限实现继承 具有很好的安全开放性, 能够连接各种标准安全 控制机制,同时通过通用 接口能够和各种非标准 安全性集成,以及和其他 系统实现权限集成。能够 实现用户的统一管理,权 限的统一管理。 数据权限的行列控制 支持,支持行级权限控 制和列级权限控制 能够对用户,用户类,用 户角色进行权限的设置 和管理。支持从门户项目 的访问控制,一直细化到 对数据库表访问的控制, 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 39 对行、列甚至单元格的访 问控制, 支持单点登录 支持 支持单点登录。支持包括 LDAP,AD,NTLM,SAP 等各 种标准安全性控制机制, 能直接连接到各种国际 标准的安全控制。同时还 开放了安全性控制接口, 可以和各种非标准的安 全性实现集成,既可以将 第三方安全性机制通过 引入Cognos技术方案中, 也可以利用Cognos的安 全性机制控制第三方系 统的安全性,实现系统间 安全性的集成和单点登 录。 审计功能(登录日志、报 表审计) 支持,提供完整的审计 报告,包括用户登录, 报表访问等 支持将用户的访问情况、 所有业务操作记录在数 据库中,是否记录以及记 录的详细程度可以根据 需要进行灵活选择.如访 问的时间、频度等,高级 别的审计可以记录用户 所做的每一步操作。同时 可以通过系统的报表,分 析等功能,对用户的操作 进行查询,分析和统计。 架构 平台支持: 支持Unicode,支持简 体中文、繁体中文以及 多 种 语 言 ; 支 持 Windows全线产品,包 括 Windows98/NT/2000/2 003;支持主流Unix操 作系统,包括AIX、HP UX/Solaris ;支持 Linux(Red Hat/Susie) 支持UNICODE,支持简体 中文,支持包括Windows 2000 , Windows XP, Windows 2003等在内的 Windows 版本,支持包括 HP/UX,AIX,Solaris在 内的主流的UNIX平台,支 持Linux操作系统;同时 Cognos具有很好的跨平 台性,能够支持各种操作 系统之间应用的负载均 衡和容错保护 支持Unicode,简体中文; 支持Windows 全线产品 (Windows98/NT/2000/200 3) ; 支 持 主 流 Unix平台 (AIX/HP-UX/Solaris);支 持Linux 中间件的支持: IIS,Tomcat, WebSphere,WebLogic, Otheres 支持主流中间件平台: 支持包括WebSphere, Weblogic, JBOSS, Oracle Application Server, SAP NetWeaver, Tomcat, IIS等各种中间 件。 IIS,Tomcat,Webshper e,WebLogic,Oracle App Server,SAP WAS 等 部署的复杂度 容易部署,提供安装向 导 产品采用统一构架,统一 服务,通过图形化界面安 装,配置,能够方便的进 行部署,部署复杂度低。 数据访问 可通过COM数据驱动访问 定制化的数据,并通过 JavaBean/JDBC获取更为 灵活的数据连接性 支持,提供COM的数据 访 问 , 以 及 JavaBean/JDBC访问数 据 产品为各种数据提供了 完善的访问方式,除了通 过各种数据库自身的驱 动以及ODBC外,Cognos 支持Composite的连接方 式,可以轻松访问包括 JDBC,LDAP在内的各种数 据源。 支持所有关系型数据库 (IBM DB2 /ORACLE/Sybase/Informi x/MS SQL Server/NCR 支持,包括 Oracle/Sybase ASE/Sybase IQ/Informix/IBM 产品支持包括IBM DB2 , ORACLE , Sybase , Informix,MS SQL,Tera Data等在内的各种主流 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 40 Teradata等) DB2/MS SQL Server/NCR Teradata 等 数据库,数据仓库产品。 数据访问接口丰富,数据 传输性能高(同时支持原 生接口或是ODBC/OLE DB) 支持,使用Native Driver访问数据库,也 可以使用ODBC或OLE DB 访问) 产品支持丰富的数据访 问接口,能够支持数据库 原生接口,OLE DB以及 ODBC等接口,数据传输性 能高 支持手写SQL脚本 支持 产品支持手写SQL脚本 支持在同一张报表中获取 任意多个异构数据源的数 据,并将其无缝集成在一 起 支持,在同一张报表中 可以集成来自不通数 据源的数据,并将其无 缝集成在一起 支持,能够在同一张报表 中获取任意多个异构数 据源的数据,并将其无缝 集成在一起 支 持 文 件 数 据 源 (Excel,FlatFile,CSV,XM L) 支持 产 品 支 持 包 括 Excel, FlatFile,CSV,XML等各 种文件数据源。 支持多维数据库 (Oracle OLAP/MS OLAP/Hyprion Essbase/ DB2 OLAP Server/SAP BW) 支持,包括: Hyperion Essbase/DB2 OLAP Server/SAP BW/ MS OLAP,同时支持Oracle OLAP/DB2 Cubeviews 产品具有很好的兼容性, 支持包括MS OLAP,Hyperion Essbase, DB2 OLAP Server, SAP BW等在内的 各种主流多维数据库。 二次开发 资料完整性:完整的开发 文档 支持,提供JAVA SDK,.NET和COM 开发 接口,并提供完整的开 发文档、二次开发技术 支持、二次开发知识 库,以及各种示例代码 具有完整的API和资料 多平台支持(OS 支持,提供完备的SDK, 支持多平台,支持 Windows,UNIX, 及开发平台):提供完备 的Java®, .NET和COM SDK, 用户可采用任何一种开发 平台来创建应用,并控制 最终用户对报表的查看、 交互和修改 通过二次开发可以实 现用户对报表的查看、 交互和修改,以及用户 和权限的管理; Linux 等 主 流 的 操 作 系 统,支持各种开发平台, 支持J2EE和.Net构架,能 够 使 用 包 括 JAVA,.NET,VB,等在内的 各种语言和开发平台进 行开发应用。通过SDK能 够访问Cognos的各种功 能,能够方便的实现对报 表的查看,交互和修改。 WEB 访问端可以通过 JSP/ASP/.NET 编 程 实 现客户界面的灵活定 制和扩展 Cognos的API能够涵盖从 元数据到应用到门户的 各个层次。 性能 执行效率; 高,提供多种系统优化 机制 Cognos产品具有很高的 性能,能够支持大用户 数,大数据量下用户请求 的秒级响应。在国内外大 量的电信,金融等大数据 量用户中得到了广泛的 使用。 稳定性 高,大量企业级应用稳 定运行,在Windows 2003 Server上达到 99.999%可用性 具有很好的稳定性。 Cognos采用线程机制,即 使某个用户的请求出现 问题,也不会影响其他用 户的请求的处理,也不会 导致系统崩溃的情况,同 时Cognos具有自我恢复 功能当服务非正常停止, Cognos会将服务自动恢 复,从而保证系统的高效 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 41 和可靠性。能够确保系统 7*24小时为用户提供全 天候的服务。 集群和负载均衡 支持 具有智能的负载均衡和 容错保护功能,且不依赖 于硬件,操作系统以及应 用服务器,能够实现真正 的硬件平台,操作系统平 台,应用系统平台的负载 均衡和容错保护。 3.3 主流数据仓库产品对比分析 3.3.1 介绍 目前主要的数据仓库产品供应商包括Oracle、IBM、Microsoft、SAS、Teradata、Sybase、 Business Objects(已被SAP收购)等。Oracle公司的数据仓库解决方案包含了业界领先的数据库 平台、开发工具和应用系统,能够提供一系列的数据仓库工具集和服务,具有多用户数据仓库管 理能力,多种分区方式,较强的与OLAP工具的交互能力,及快速和便捷的数据移动机制等特性;IBM 公司的数据仓库产品称为DB2 Data Warehouse Edition,它结合了DB2数据服务器的长处和IBM 的商业智能基础设施,集成了用于仓库管理、数据转换、数据挖掘以及OLAP分析和报告的核心组 件,提供了一套基于可视数据仓库的商业智能解决方案;微软的SQL Server提供了三大服务和一 个工具来实现数据仓库系统的整合,为用户提供了可用于构建典型和创新的分析应用程序所需的 各种特性、工具和功能,可以实现建模、ETL、建立查询分析或图表、定制KPI、建立报表和构造 数据挖掘应用及发布等功能;SAS公司的数据仓库解决方案是一个由30多个专用模块构成的架构 体系,适应于对企业级的数据进行重新整合,支持多维、快速查询,提供服务于OLAP操作和决策 支持的数据采集、管理、处理和展现功能;Teradata公司提出了可扩展数据仓库基本架构,包括 数据装载、数据管理和信息访问几个部分,是高端数据仓库市场最有力竞争者,主要运行在基于 Unix操作系统平台的NCR硬件设备上;Sybase提供了称为Warehouse Studio的一整套覆盖整个数 据仓库建立周期的产品包,包括数据仓库的建模、数据集成和转换、数据存储和管理、元数据管 理和数据可视化分析等产品;Business Objects是集查询、报表和OLAP技术为一身的智能决策支 持系统,具有较好的查询和报表功能,提供多维分析技术,支持多种数据库,同时它还支持基于 Web浏览器的查询、报表和分析决策。 根据IDC发布的2006年数据仓库市场分析报告,上述公司占据了全球近90%的市场份额,提供 的数据仓库产品的功能特性已经成为市场的主流。这些公司在推出各自的数据仓库产品的同时也 提供了相应的数据仓库解决方案。本文后续内容将针对这些数据仓库产品和解决方案的主要支撑 技术进行比较,并结合IDC和ChinaBI相关报告给出相应的市场情况分析。 3.3.2 支撑技术 在数据仓库系列技术中,主要的支撑技术包括数据库技术、ETL技术、OLAP技术、报表技术、 数据挖掘技术。 数据库技术 数据库技术是支撑数据仓库技术的基础技术。尽管在数据仓库技术存储模型方面,基于数据 库技术而发展的关系模式的理念已经被颠覆,取而代之是各种各样的数据仓库数据模型,如星型 模型,雪花模型等。然而,在已有的数据仓库实践中,关系数据库仍然是实质的数据库存储工具, 只是将数据库表改称为了事实表和维表,将属性域之间的关系重新定义为维度,量度,层次,粒 度等。 成熟的数据仓库后台数据库包括Oracle、DB2、SQL Server、Teradata和Sybase IQ。在查询 效率方面,Sybase IQ由于采用了列存储技术,查询效率比较高;在兼容性方面,Teradata从软件 到硬件都必须是专用的,因而兼容性最差;在管理平台和海量数据管理方面,Oracle、DB2和SQL Server都提供了一系列完整的工具,相对于其它产品有着明显的优势;在磁盘空间利用方面, Sybase IQ的压缩比是所有数据库中最好的,而Teradata最为浪费。 另外,SAS公司和BO公司也拥有自己的数据管理能力,但对于大型数据仓库的数据管理,仍然 需要使用上述数据库产品,SAS和BO都提供了与这些数据库进行连接的专门接口。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 42 ETL技术 数据仓库系统是集成的、与时间相关的数据集合,ETL作为数据仓库的核心,负责将分布的、 异构数据源中的数据进行抽取、清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联 机分析处理、数据挖掘的基础。ETL能够按照统一的规则集成并提高数据的价值,是负责完成数 据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。要实现数据仓库中数据的 自动更新运转,ETL技术是必不可少的关键技术之一。 主流数据仓库产品供应商都拥有各自的ETL能力。IBM的ETL工具称为IBM WebSphere DataStage,它为整个ETL过程提供了一个图形化的开发环境,支持对多种操作数据源的数据抽取、 转换和维护,并将其输入数据集或数据仓库;Teradata的ETL工具称为ETL Automation,它利用 Teradata数据库本身的并行处理能力,通过SQL语句实现数据的转换,提供对ETL流程的支持,包 括前后依赖、执行和监控等;SAS的ETL工具称为ETL Studio,提供管理ETL流程和建立数据仓库、 数据集市和OLAP结构的单控制点。其他几家公司则将其工具融合在大的数据仓库组件中,如 Oracle的Oracle Warehouse Builder (OWB)、SQL Server的Integration Services、Sybase的 Data Integration Suite、BO的可扩展数据整合平台Data Integrator。 上述各公司提供的ETL相关工具功能相近,在易用性、效率、价格等方面各有千秋,但就工具 的二次开发、集成和开放性而言,与专业的数据集成平台,如Informatica公司的PowerCenter, 相比还是存在一定的差距。 OLAP技术 联机分析处理(OLAP)是针对特定问题的联机数据访问和分析,通过对信息进行快速、稳定、 一致和交互式的存取,对数据进行多层次、多阶段的分析处理,以获得高度归纳的分析结果。联 机事务处理(OLTP)已不能满足终端用户对数据库查询分析的需要,SQL对大数据库进行的简单查 询也不能满足用户分析的需求。用户的决策分析需要对关系数据库进行大量计算才能得到结果, 而查询的结果并不能满足决策者提出的需求,由此出现了多维数据库和多维分析的概念。 目前主流的OLAP产品有Oracle Express/Discoverer、SQL Server Analysis Services、DB2 OLAP Server、SAS OLAP Server等,这些产品都可以生成多维数据立方体,提供多维数据的快速 分析,支持所有主流关系型数据库如DB2,Oracle,SQL Server,Sybase等,同时可读取关系数 据库中细节数据,实现混合在线分析(HOLAP)或关系型在线分析(ROLAP)。并且,各厂商的OLAP Sever对自己的数据库产品的支持均好于其它数据库,各自的分析工具也都基于开放的OLE DB标 准,可以访问支持OLE DB标准的数据立方体。 BO公司和Sybase公司则分别提供了各自的OLAP分析工具OLAP Intelligence和Power Dimension,支持标准OLAP API,如OLEDB for OLAP,能够对Microsoft、IBM等OLAP数据进行划 分、钻取等处理,兼容第三方报表和展现工具。Teradata尽管不提供独立的OLAP工具,但提供了 相关技术,用于提升运行于Teradata数据库上的OLAP应用系统的性能。 报表技术 报表技术主要是将集成在数据模型里的数据,按照复杂的格式、指定行列统计项,计算形成 的特殊表格。一般的简单报表可以使用通用的前台展现技术实现,而复杂的报表则需要使用特定 的报表技术。主流的报表技术都可以灵活的制定各种报表模版库和指标库,并根据每个区块或单 元格的需要引用指标,实现一系列复杂的符合要求的报表的自动生成。 主流数据仓库厂商的报表工具中较为有影响包括IBM的Cognos ReportNet、BO的Crystal Reports、Oracle的Oracle Reports。IBM通过收购Cognos公司获得了完整的报表产品Cognos ReportNet,覆盖了各种报表需求,包括管理报表、商业报表、账单和发票等;BO公司提供了一个 完整的企业报表解决方案Crystal Reports Server,支持通过Web快速便捷的创建、管理和交付 报表;Oracle Reports工具提供了自由的数据格式方式,可以自动生成个性化字母或矩阵风格的 布局,包括动态、数据驱动的图表;SQL Server的报表功能包含在Reporting Services (SSRS) 中,包括处理组件、一整套可用于创建和管理报表的工具、在自定义应用程序中集成和扩展数据 和报表处理的API。与上述产品相比,Sybase的InfoMaker、Teradata的BTEQ和SAS的Report Studio 等报表产品在功能、性能、二次开发等方面都还存在着一定的差距。 总的来说,这些产品在大部分通用软件领域相对国产软件都要优秀,但在有中国特色的报表 领域内却是例外,在处理能力存在一定的不适应性。另外这些产品的数学模型都是基于SQL/OLAP 理论设计的,在技术上也不能满足国内复杂报表的制作需求。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 43 数据挖掘技术 当数据积累到一定数量时,某些潜在联系、分类、推导结果和待发现价值隐藏在其中,可以 使用数据发掘工具帮助发现这些有价值的数据。数据挖掘就是从海量数据中,提取隐含在其中的、 人们事先不知道的但又可能有用的信息和知识的过程。通过数据挖掘能找出数据库中隐藏的信 息,实现用模型来拟合数据、探索型数据分析,数据驱动型的发现,演绎型学习等功能。 目前,IBM公司的IBM Intelligent Miner支持典型数据集自动生成、关联发现、序列规律发 现、概念性分类和可视化呈现,可以自动实现数据选择、数据转换、数据发掘和结果呈现这一整 套数据发掘操作;Oracle公司提供的数据挖掘平台称为Oracle Data Miner,它提供了的一个图形 用户界面,通过简单易用的向导来指导完成数据准备、数据挖掘、模型评估和模型评价过程,根 据需要自动生成将数据挖掘步骤转换成一个集成的数据挖掘/BI应用程序所需的代码;SAS公司的 SAS Enterprise Miner将数据挖掘过程简单流程化,支持关联、聚类、决策树、神经元网络和经 典的统计回归技术;Teradata公司的挖掘工具称为Teradata Warehouse Miner,它通过将数据挖 掘技术整合到数据仓库来简化数据挖掘流程,该工具还可实现将多家厂商的数据挖掘技术嵌入 Teradata企业级数据仓库环境中运行;Microsoft数据挖掘平台不同于传统数据挖掘应用程序,它 支持组织中数据的整个开发生命周期,允许第三方添加自定义算法以支持特定的挖掘需求,支持 实时根据挖掘的数据集进行数据验证。对比于上述公司,Sybase和BO公司并没有推出专门的数据 挖掘平台或工具。 和前几项支撑技术相比,数据挖掘技术的专业性更强,与应用领域的特殊背景结合得更加紧 密。上述产品除了在性能、通用性、数据展示、二次开发上有一定差异外,没有一个能够占据绝 对技术和市场优势,反而是一些专门领域内的专业挖掘工具更具竞争性,如Fair Isaac公司占据 了全球信用卡积分市场近7成的份额。 3.3.3 市场分析 国际权威市场分析机构IDC将数据仓库平台工具市场细分为数据仓库生成(Data Warehouse Generation)工具市场和数据仓库管理(Data Warehouse Management)工具市场两个部分,前者涵 盖数据仓库的设计和ETL过程的各种工具,后者指数据仓库后台数据库的管理工具,如DBMS。根 据IDC发布的《全球数据仓库平台工具2006年度供应商市场份额》分析报告,2006年该市场增长 率为12.5%,规模达到57亿美元,其中数据仓库生成工具和数据仓库管理工具两个市场的比重分 别为23.3%和76.7%,相对于数据仓库管理工具市场,数据仓库生成工具市场的增长进一步放缓。 可以预见,整个数据仓库市场将进一步向拥有强大后台数据库系统的传统厂商倾斜。从供应商看, Oracle公司继续占据数据仓库管理领域的领先供应商地位,并且与其主要竞争者IBM之间的这种 领先优势正逐渐扩大。Microsoft紧追IBM之后,与其之间的差距则在逐渐缩小。 在国内,商业智能已经成为企业信息化中最重要的组成部分,而数据仓库相关技术在其中扮 演着无可替代的重要角色。据ChinaBI统计,2007年中国大陆地区的BI市场份额约为20亿元人民 币,同比2006年增长35%,其中BI产品许可证约为9亿元人民币,BI系统集成约为11亿元人民币。 现有BI厂商包括产品提供商、集成商、分销商、服务商等有近500家,在未来几年内商业智能市 场需求旺盛,市场规模增长迅速。从国内数据仓库实践看,根据ChinaBI评选的2007年中国十大 数据仓库的初步结果,传统数据库厂商占据7个,分别是IBM 3个、Oracle 3个、SQL Server 1 个,其余3个属于NCR/Teradata公司;从数据仓库规模来看,传统数据库厂商更占有巨大优势,总 数据量为536.3T,Teradata则为54T。涉及的行业包括通信、邮政、税务、证券和保险等。 在数据仓库市场快速发展的同时,市场竞争也日趋激烈,其中尤其以Oracle收购Hyperion、 SAP收购BO、IBM收购Cognos具有代表意义。截至2007年底,混乱的市场已经基本明朗化,三个层 次逐渐浮现出来。Oracle,IBM,Microsoft和SAP位居第一层次,能够提供全面的解决方案;第二 层次是NCR Teradata和SAS等产品相对独立的供应商,可以提供解决方案中的部分应用;第三层次 是只专注于单一领域的专业厂商,但其在并购的硝烟中日趋难以存活。 3.3.4 附录 附录1:各主流数据仓库产品对比 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 44 附录2:IDC 2006年度数据仓库平台工具主要供应商市场份额 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 45 4 行业案例 4.1 案例1:某通信公司决策分析系统实施案例 4.1.1 业务需求 某家位列国内五大电信运营商之列的通信公司(以下简称“通信公司”)在多年的运营过程 中,积累了大量的业务数据,分散在各个运营系统中(计费系统、九七工程、网管系统等)。这 些系统主要是面向公司的日常运行和维护,虽拥有最全面详细的内容,但是却无法满足公司如市 场分析、客户分析的需求。也就是说,这些数据库系统像一个个孤岛,很难得到综合利用。而这 些数据分析对于公司的发展来说却是至关重要的。 互联网技术的发展,为电信的企业信息、客户信息、服务信息在企业内部、企业和客户间畅 通传递奠定了技术基础。在数据库应用系统领域,也提出了数据仓库的概念。数据仓库系统就是 通过集成企业多种新旧业务的数据,建立完备的数据信息库,并对其进行深度统计分析挖掘,以 针对不同的用户群,进行精确市场营销、销售,改进服务、创造新的业务模式,最大程度满足客 户个性化需求,并把客户的满意度转化为企业的核心价值。因此,该通信公司急需一套可以对历 史数据进行有效整合并根据需求进行展现的综合报表和决策分析系统。 为了终结该电信公司系统内部的信息孤岛,利用先进的工具实现信息的共享和传递,使丰富 的历史数据可以为决策做出强有力的支持,我方的技术人员与该通信公司的相关部门人员进行了 深入沟通,掌握了通信公司的现有系统特点和客户的需求。着眼于未来发展的趋势,提出了系统 目标如下: 4.1.2 系统目标 利用数据仓库技术和OLAP技术,对电信业务的实际计费数据进行分析,了解和掌握通信公司 的业务特点,将通信公司内部各系统的有用数据(尤其是计费数据)进行抽取、转换、整合,根 据各个部门的实际需求进行展现,以支持企业进行分析和决策。为企业级的数据仓库的建立奠定 良好的基础。 这套综合报表和决策分析系统以计费系统为主,其他运行系统为辅,提供市场经营部的业务 需求,在系统构架建成之后,可以满足公司各经营、维护部门、各种人员的全部需要。 对于一个电信公司来说,计费系统的重要性不言而喻,但计费系统的开发角度决定了无法灵 活的对各种计费数据信息进行综合的、灵活的分析。而我们的综合报表和决策分析系统这些分析 报表却正好可以弥补这个遗憾,能更充分、直观的了解公司的经营现状,以及更好的帮助领导进 行决策和分析。 4.1.3 解决方案 该套综合报表和决策分析的数据仓库应用系统是在现有的九七、计费等系统的基础上,结合 一些外部数据和文档资料,对数据进行抽取、转换、集成,按照主题进行重组,并装载到数据仓 库中。同时针对分析需求对数据仓库中的数据建立有效存储和高效索引机制,从而提高系统分析、 统计的效率。在此基础上,对电信业务的各个指标多角度、多层次的分析,完成电信业务分析系 统的功能,最终支持辅助决策。 一个典型的企业数据仓库系统通常包含数据源、数据存储与管理、OLAP服务器以及前端工具 与应用四个部分。如图: 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 46 数据源 此部分是数据仓库系统的基础,是整个系统的数据源泉。通常包括企业内部信息和外部信息。 内部信息包括存放于企业操作型数据库中(通常存放在RDBMS中)的各种业务、运营数据和办公 自动化(OA)系统包含的各类文档数据。外部信息包括各类法律法规、市场信息、竞争对手的信 息以及各类外部统计数据及各类文档等。对于通信公司的实际情况,数据源包括:九七、计费、 网管等现有业务系统及其它外部数据源。 数据存储与管理 此部分是整个数据仓库系统的核心。在现有各业务系统的基础上,对数据进行抽取、清理, 并有效集成,按照主题进行重新组织,最终确定数据仓库的物理存储结构,同时组织存储数据仓 库元数据(具体包括数据仓库的数据字典、记录系统定义、数据转换规则、数据加载频率以及业 务规则等信息)。按照数据的覆盖范围,数据仓库存储可以分为企业级数据仓库和部门级数据仓 库(通常称为“数据集市”,Data Mart)。数据仓库的管理包括数据的安全、归档、备份、维 护、恢复等工作。这些功能与目前的DBMS基本一致。 OLAP服务器 对分析需要的数据按照多维数据模型进行再次重组,以支持用户多角度、多层次的分析,发 现数据趋势。其具体实现可以分为:ROLAP、MOLAP和HOLAP。ROLAP基本数据和聚合数据均存放在 RDBMS之中;MOLAP基本数据和聚合数据均存放于多维数据库中;而HOLAP是ROLAP与MOLAP的综合, 基本数据存放于RDBMS之中,聚合数据存放于多维数据库中。 前端工具与应用 前端工具主要包括各种数据分析工具、报表工具、查询工具、数据挖掘工具以及各种基于数 据仓库或数据集市开发的应用。其中数据分析工具主要针对OLAP服务器,报表工具、数据挖掘工 具既针对数据仓库,同时也针对OLAP服务器。此部分由MIS提供。 4.1.4 结构特点 根据通信公司的实际需求,本系统的实际结构如下图: 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 47 灵活的体系设计 ·Browser/Server体系结构,零客户端,支持移动办公,满足决策支持的随机性和及时性 ·支持与各种主流数据库平台、多维分析引擎、数据挖掘引擎和前端展示工具的无缝集成, 便于扩展 ·采用动态维等特有的设计技术,适应需求的灵活变化,可以随时根据实际需求进行功能的 灵活扩充。 完善的业务分析功能 ·完善而丰富的业务分析模型,更好地实现更具个性化的决策支持应用 ·积极参加行业内相关系统规范的制定,对业务需求了解深刻 ·全面的主题分析及专题分析 ·快速构造企业商业智能信息门户,为各类用户提供丰富多彩的决策支持信息服务,如信息 广播、告警预警等 ·采用数据挖掘技术建立分析模型 完整的具有前瞻性的系列解决方案 ·本解决方案,面向电信企业,具有很强的扩充性,各个方面的建设都以构建企业级的数据 仓库为目标。适应电信行业市场竞争的需要 ·支持与业务支撑系统(OSS/BSS)的互动,经营分析结果反馈到业务运营系统中,形成闭环系 统(Close-Loop) ·与操作型CRM的实现无缝集成 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 48 4.1.5 实施方案 综合报表和决策分析系统主要以计费系统为主要数据源,针对市场经营部的业务需要而建设 的。 通信公司计费系统为Oracle数据库。Oracle公司作为世界上最大的数据库厂家之一,凭借其 在技术、资源和经验上的优势,一直致力于为企业提供最能满足企业竞争需要的数据仓库解决方 案。因此,我公司为本系统设计也是以此为核心的。 实施的全过程共分成5个阶段,依次完成并通过验收。 第一阶段-需求调研 分为两个部分:业务需求调研和技术需求调研。 对于业务需求调研,主要是指对进一步了解通信公司市场经营部业务需求,熟悉计费业务的 产品结构和工作流程,此部分是整个项目的基础。 对于技术需求的调研,主要是完成对目前系统状况的分析,确定数据库类型,操作系统类型, 接口与接口程序语言等等。 第二阶段-概要设计 分为两个部分:数据层设计和应用层设计。 第一步为数据层设计,主要是指根据需求调研,制定本系统的数据结构。如数据仓库的建立 方式、表空间的划分、用户组的制定、以及一期报表对应的数据流程、数据结构的设计等。 第二步为应用层设计,此部分包括数据抽取应用的结构设计、模块划分以及针对一期报表的 数据提取计划的设计。 第三阶段-详细设计 分为两部分:数据抽取系统的设计和报表部分的设计。 对于数据抽取系统的设计,主要包括抽取系统后台参数表结构的设计以及前台具体应用模块 具体实现细节的设计。如系统应用流程、编码规范、系统的过程与函数的划分、接口的设置以及 存储过程的调用方式等等。 对于报表部分的设计,主要包括后台数据的具体存储方式、前段展现方式的设计,如:数据 表结构的设计、表分区的划分,报表展现的样式、风格、钻取方式等。 第四阶段-编码 分为两个部分:编码和系统整合、测试。 编码分为对应数据抽取系统的开发和针对报表的数据整理定制开发与编码两个部分。 对于抽取系统的开发,开发的技术难点主要是抽取系统的配置的灵活性、扩展性和灵活性方 面,所以此部分需要时间较长。 对于报表的后台数据整合开发与编码,此部分主要是工作是编写用于抽取系统触发、调用的 后台存储过程,以便根据展现的需要对数据进行处理。 对一期报表的前段展现的开发与编码,主要是根据经营部的需要通过展现工具制作OLAP立方 体,建立多维数据库,并最终生成报表。 对于内部整合、测试,主要工作就是将抽取系统与针对一期报表编写的用于后台数据处理的 存储过程连接、调用并测试提取速度和数据准确性。需要在以上三部分全部完成后统一进行。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 49 第五阶段-实施及用户级测试 对于系统实施阶段,主要是指应用系统软、硬件环境的搭建,以及相关数据结构的建立。 而对于具体报表的实施,则是采取串行方式提交,根据编码进度逐个提交。 对于用户级测试阶段,主要是指指导、配合用户对系统进行测试,以便系统能够真正为用户 所用。 4.2 案例3:大唐电信ODS数据整合案例 各电信运营商建设了大量的业务系统之后,将原先集中的几套大系统分拆成了不同专业、不 同受众的独立系统,人们突然发觉原先相对简单的数据变得很复杂。它们分布在不同的业务系统、 不同的网络硬件平台上,同一个客户竟然在不同的系统中信息完全不一致,如果想看到某个大客 户到底使用了企业的什么业务,每个月为我们带来多少收入,会蓦然发现,这些数据不得不从CRM 系统、计费系统、小灵通业务管理系统等多个源头追溯和汇总。用户数的稳步增加、业务使用量 的大幅提升给运营商带来的不仅是兴奋,还有很多的困惑和无奈,这些都警示我们,电信企业的 业务运营需要一个先进、合理的IT系统架构进行支撑。 在当前大多数电信运营商企业中,IT系统架构围绕核心的业务运营支撑,按照业务、运维和 管理分成了三大应用域,其中又根据业务管理的应用和数据范围,划分成林林总总的、独立的业 务系统。譬如,业务域中的CRM系统、计费账务系统、结算系统等,运维域中的业务开通系统、 网络管理、资源管理系统等以及管理域中的财务管理、人力资源管理系统等等。但是,这样的架 构较难支持多系统间的数据共享,企业的标准统一的业务概念也很难系统化地落实到系统实现 上。由此而带来的业务问题也是众多的,包括企业以客户为中心的转型策略因没有统一的客户视 图而受到阻碍,营销、销售和服务流程中渠道人员因无法获得第一手的客户数、业务量、收入的 变化情况而无法选择目标客户、优化业务流程,管理决策层因无法全面了解一个多角色员工的全 面工作情况而难于对他的业绩进行客观的评价。所有这些都表明,企业需要一个横向的业务支撑 架构,这就是企业数据的集中统一存储和跨系统应用—ODS(OperationalDataStore,运营数据 存储)。 4.2.1 ODS的起源和发展 ODS概念的提出者是数据仓库大师BillInmon,他对ODS的定义是“一个面向主题的、集成的、 可变的、当前的细节数据集合,用于支持企业对于即时性的、操作性的、集成的全体信息的需求”。 BillInmon认为,业务应用环境中的数据经过转换和整合进入ODS,提供了一种全局的、集成的和 即时的企业操作视图,能够支持企业及时性的决策需求,同时,能够在分散的业务系统和支撑决 策分析的数据仓库之间构建一个缓冲,使得数据之间的转换变得相对简单和可控。ODS系统最主 要的功效是将多个业务系统中分散的数据进行初步的集成、清洗和转换。 4.2.2 ODS相关技术 ODS的主要功能特征 数据整合功能是ODS的核心所在。通过ETL、EAI等技术准实时或实时地从各业务系统中抽取企 业运营数据,进行转换、加载、映射等工作形成ODS的核心数据,为用户提供企业级的统一数据 视图。 基于ODS核心数据的数据质量管理功能,实现企业数据质量检查、质量问题交付、质量评估等 功能,与企业内完善的组织机构、业务流程和各业务系统配合形成企业数据质量修正的闭环。 基于数据整合所形成的统一数据视图提供数据共享功能,通过集中的数据/服务提供功能,为 各业务系统提供非自有数据的共享。 数据应用功能,ODS系统能够利用整合及汇总后的数据直接对外提供查询类、统计分析类以及 计算类等需要跨系统数据支持的数据应用。 ODS系统技术特征 由于ODS介于企业IT架构中的操作环境(由各种业务系统组成)和分析环境(由企业数据仓库 和各种分析应用组成)之间,既承担了数据整合所需的大批量数据获取和准实时数据同步更新功 能,又承担了客户统一视图查询、营销活动监控等准实时的多维汇总分析功能。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 50 ODS是以数据为中心的系统,ODS系统的核心数据模型是数据整合、数据共享等功能要求的三 范式企业信息模型。同时也需要提供满足查询、报表应用所需的宽表结构、星型结构等模型。其 中,企业信息模型是企业所有核心数据和相互关系的统一全局视图,它能够统一业务层面的概念, 帮助企业统一规划、规范管理企业数据。 ODS系统支持数据质量管理流程的定制,通过数据质量管理流程闭环,可以为ODS流程安排一 系列质量检查和质量控制点。从而实现对数据质量问题的发现、分析、改进、确认、控制与预防 等一系列持续改进过程。 元数据是描述数据的数据,分为各种业务元数据和技术元数据。ODS通过元数据管理技术,集 中存储、管理和分析ODS系统的数据字典、数据整合过程中数据转换逻辑以及统计指标定义等技 术和业务层面的元数据,为各类ODS涉众(Stakeholders)正确理解和操作数据提供有力支持。 4.2.3 大唐电信全面的ODS解决方案 大唐电信ODS系统的定位 大唐电信ODS产品定位于为电信企业提供一个企业运营数据共享平台,它收集企业各业务系统 中的运营数据,按照企业信息模型进行数据整合,形成企业统一数据视图,提供运营数据共享, 支撑跨系统数据的应用,并且进行数据质量管理。该解决方案示意图如下图所示。 图:大唐电信ODS技术构架 4.2.4 大唐电信ODS系统的产品特点 构件化设计 系统采用J2EE技术架构构建,系统平台具有平台无关性、安全性和可靠性。各项服务采用组 件化设计与实现,遵循松耦合、高内聚的原则,综合考虑系统部署、维护和管理方面的要求,合 理确定构件粒度。 强大的数据整合平台 结合大唐电信的专业数据整合技术和商业数据整合工具,大唐电信ODS对各复杂源系统的数据 提供了系统化、图形化的数据整合处理。 融通学苑 中国专注于商业智能培训与咨询的领导者 官方网站:www.lt-bi.com QQ群: 127752917 ; 210700527 51 卓越的数据质量管理系统 大唐电信ODS数据质量管理系统(DataJuran)是在电信运营商质量管理规范的基础上,结合6 西格玛质量管理方法所构建的一套卓越的闭环数据质量管理系统。DataJuran重点是将所有的ODS 和BSS工作作为一种流程,采用量化的方法分析流程中影响质量的因素,找出最关键的因素加以 改进从而达到更高的客户满意度。 灵活、实用的元数据管理系统 大唐电信ODS元数据管理系统具有元数据类型可扩展、可定制、个性化、可重用的特点,支持 建立技术元数据模型、业务元数据模型、逻辑元数据模型、企业元数据标准模型等;能对元数据 关系进行有效维护(可以进行跨模型、跨系统管理);支持元数据的血缘分析与影响分析,包括 展现影响数据变化的元数据原因分析以及展现数据变化影响的元数据结果分析。 丰富的数据应用与数据共享 大唐电信ODS系统提供了丰富的数据共享和数据应用功能,包括:向112、114等系统按日批量 提供客户变更资料;采用数据服务提供的方式为CRM、网上营业厅等系统提供客户视图信息;提 供客户统一视图、动态查询、支撑渠道人员的客户管理应用;集中提供各种生产运营方面的报表 以减轻业务系统生产压力;承担市场计划监控评估、营销过程跟踪监控、渠道经理绩效考核等动 态统计分析和计算功能,为企业精细化营销和精确化管理提供支撑等等。
还剩50页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 10 金币 [ 分享pdf获得金币 ] 2 人已下载

下载pdf

pdf贡献者

ZXDOOOOO

贡献于2018-08-03

下载需要 10 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!
下载pdf