专注于中国的商业智能

My Links

Blog Stats

News

08 2010 档案

Cognos8与自定义门户的集成
摘要: 在网上有看到过Websphere Portal 6.0和cognos8集成的文章,但是没有看到自己开发的门户和cognos的集成,这两者还是有较大的区别的。我们公司的BI就是采用的自己开发BI门户集成cognos报表的方式的,今天来和大家分享一下企业自己定制开发的门户(技术不限,.net或java都行)与cognos报表的集成的经验。集成分成页面级集成和API级别的集成,页面集成的含义就是直接通过...阅读全文

posted @ 2010-08-30 15:38 李梦蛟 阅读(563) | 评论 (2) 编辑

数据仓库项目管理面试题整理(十三)
摘要: 数据仓库架构1.企业的数据仓库已经从50GB增长到了1TB。它最初仅有50个用户,而现在已增长到300个用户。系统的响应慢得吓人,用户怨声载道,DBA在数据仓库的扩展和性能方面遇到的极大的困难。所有的新需求都被置之不理。所有的一切都是由于最初的架构引起的,这个架构只考虑了50G空间和50个用户。而目前架构中的任何变化都将是高代价和破坏性的。面对这种局面,数据仓库设计师应该如何处理?2.一家企业内有...阅读全文

posted @ 2010-08-10 16:56 李梦蛟 阅读(253) | 评论 (0) 编辑

数据仓库项目管理面试题整理(十四)
摘要: 性能1.一家企业把一个较大的财务、培训和实现责任都托付给一个软件产品。但是这个软件产品目前的性能出现了问题,几乎不能运转了。面对这种局面,这家企业应该做些什么呢?2.一家企业的数据仓库中数据量的增长比它的源系统数据量增长快得多。硬件的成本已经超出了预算,而且眼前没有停止的迹象。管理层很担心,并提出了两个较难回答的问题。这个数据仓库该不该比源系统数据增长得更快?如果不,数据仓库经理能够采用什么样的措...阅读全文

posted @ 2010-08-10 16:56 李梦蛟 阅读(175) | 评论 (0) 编辑

数据仓库项目管理面试题整理(十一)
摘要: 数据质量1.一个数据质量分析师正在试图分析一个数据仓库之中数据的质量状况。这个数据仓库的数据量非常的大,数据质量分析师准备用抽样的方式进行分析。但是他不知道需要抽样多少数据,如何抽样,以及如何向用户解释抽样分析的结果是准确的。这位数据质量分析师应该如何来进行工作呢?2.一个电信公司有一个含有14TB数据的数据仓库。这家公司估计到,该数据中有10TB以上的数据可能是冗余的。这家公司没有命名约束,其中...阅读全文

posted @ 2010-08-10 16:55 李梦蛟 阅读(100) | 评论 (0) 编辑

数据仓库项目管理面试题整理(十二)
摘要: 数据整合1.一家拥有650个经销商的汽车制造公司,有3个独立的经销管理系统,这650个经销商都有自己的数据库。这家企业应该如何来收集、清理并整合这些数据呢?2.一家企业为了保证企业内数据的一致性,委任了一名数据管理经理为整个企业创建一个统一的企业数据模型。但是,企业内有两个项目正准备开工,而且两个项目经理都不愿意等企业数据模型的建成。没有企业数据模型的情况下,建立的信息系统很难和企业内的其他系统进...阅读全文

posted @ 2010-08-10 16:55 李梦蛟 阅读(305) | 评论 (0) 编辑

数据仓库项目管理面试题整理(九)
摘要: 工具与供应商1.一个非盈利性企业正准备建立一个数据仓库,来跟踪他们全体成员的活动。这样一个大的项目需要一个需求建议书,其中会有筛选供应商的资料等内容。但是,企业的高级管理人员不希望这个需求建议书影响他们的进度。面对这种局面,企业应该采取什么样的对策?2.一家企业的数据仓库建好之后,发现经过培训的用户只有5%的人经常使用。而没有使用的人员对查询和报表制作工具不满意,因此不使用数据仓库。面对这种局面,...阅读全文

posted @ 2010-08-10 16:54 李梦蛟 阅读(79) | 评论 (0) 编辑

数据仓库项目管理面试题整理(十)
摘要: 安全1.一个企业建立了一个数据仓库系统,用来分析企业的部门及产品相关盈利能力。数据仓库实现不久,项目经理被CFO叫到办公室,被要求解释为什么一位职位低下的金融分析师能够在数据仓库中查看详细的工资记录,这些数据在公司中只有副总裁才可以访问。显然,这个数据仓库中没有建立安全计划。面对这种局面,这家企业怎么才能扭转这种局面呢?2.一位数据仓库咨询人员告诉一家企业,他们必须考虑数据仓库内的安全问题,并应该...阅读全文

posted @ 2010-08-10 16:54 李梦蛟 阅读(117) | 评论 (0) 编辑

数据仓库项目管理面试题整理(八)
摘要: 数据仓库标准1.一家企业要建设一个数据仓库,但是这家企业的工作人员没有数据仓库的使用经验,对数据仓库建设方法学也一无所知。数据仓库项目经理应该如何做,才能让用户相信在一个数据仓库项目中使用一种方法学是必要的呢?2.一家银行为它的业务数据库环境制订了非常严格的数据库管理标准。这些DBA强调,必须要像设计和管理OLTP环境一样管理这个数据仓库环境。数据仓库经理怎样做,才能使这些DBA认识到这个标准不适...阅读全文

posted @ 2010-08-10 16:53 李梦蛟 阅读(213) | 评论 (0) 编辑

数据仓库项目管理面试题整理(六)
摘要: 团队问题1.企业IT部门一个非常聪明、工作努力的人极想从他喜爱的供应商那里获得一个β版本,用于数据仓库的实现。如果他不能得偿所愿,他要么离开,要么不再支持这个项目。项目经理应该如何来应付这种局面?2.管理层给项目经理一个这样的团队,其中的成员既无技能、也无热情,是其他项目经理不想留在自己团队中的人员。面对这种局面,项目经理应该如何应付?3.管理层希望数据仓库团队中的每个人都相处融洽,但是...阅读全文

posted @ 2010-08-10 16:52 李梦蛟 阅读(162) | 评论 (0) 编辑

数据仓库项目管理面试题整理(七)
摘要: 项目规划与进度安排1.企业高管层不了解数据仓库项目为什么会花费那么多的时间。他们认为目前的计划和工作量经过了夸张,所以他们要求能有更具体化的依据来支持评估的工作量。项目经理应该如何应付这种情况。2.IT团队曾多次错过完成期限而得到了较坏的名声。这次,项目经理向老板承诺了一个不切实际的最终期限。高管层也向项目经理明确宣布,他在公司的声誉及饭碗就取决于该时间表。项目经理该如何应对这种局面。3.项目经理...阅读全文

posted @ 2010-08-10 16:52 李梦蛟 阅读(85) | 评论 (0) 编辑

数据仓库项目管理面试题整理(四)
摘要: 组织与职员配备问题整理1.数据仓库经理认为自己的团队应该对CIO负责,但是,一个强有力的应用软件开发经理认为数据仓库的最终目的是要交付用户使用,数据仓库团队应该向他负责。数据仓库经理应该向谁负责?应该如何来应付这种局面?2.一家公司采用矩阵管理方式。项目经理手下没有专职的DBA,只能依靠DBA经理在需要时提供DBA。但是在需要DBA时,DBA未必总有空闲的。项目经理正要开始另一个项目,她应该作些什...阅读全文

posted @ 2010-08-10 16:51 李梦蛟 阅读(78) | 评论 (0) 编辑

数据仓库项目管理面试题整理(五)
摘要: 用户问题1.企业内各业务部门的系统之间不是集成的,那些业务主管想让他们的数据进入数据仓库中,而且他们都想马上就能实现。而数据仓库经理只能逐个的满足他们的要求,要避免引起业务主管的愤怒,也要避免他们开发自己的数据仓库,数据仓库经理应该如何来处理这种局面?2.企业的IT部门雇佣了一名咨询人员来开发一个数据仓库,但是该企业的业务部门不支持这个项目。IT部门告诉这名咨询人员继续工作,即使业务部门计划赶他走...阅读全文

posted @ 2010-08-10 16:51 李梦蛟 阅读(65) | 评论 (0) 编辑

数据仓库项目管理面试题整理(二)
摘要: 项目需求问题整理1.数据仓库项目已经开发了6个月的时间,在项目的开发过程中,数据仓库团队发现业务源系统正在被重写,业务系统在不断的变化,一个新的系统开发出来预计只有8个月的寿命。数据仓库团队应该如何应付这种情况?2.源系统和数据仓库系统同期建设。但是源系统在不断的变化中,而且源系统的开发团队没有将变化告知数据仓库团队,数据仓库团队在测试过程中出现故障才发现这些变化。这种没有告知有可能是故意的。数据...阅读全文

posted @ 2010-08-10 16:50 李梦蛟 阅读(115) | 评论 (0) 编辑

数据仓库项目管理面试题整理(三)
摘要: 数据仓库成本论证与预算1.企业有“禁止解雇”政策,管理层对工作效率的提高和成本的节约不是很关心。项目经理该如何对数据仓库及其相关工具的成本进行论证?2.企业高级管理层成立了一个委员会,希望委员会能论证用于数据仓库及其工具的任何支出都是合理的。但是委员会只能从软收益来论证,企业该如何来处理这种情况?3.大型零售企业的信息总监认为本企业需要一个数据仓库,但是企业的财务总监对建立...阅读全文

posted @ 2010-08-10 16:50 李梦蛟 阅读(80) | 评论 (0) 编辑

数据仓库项目管理面试题整理(一)
摘要: 项目管理问题整理1.企业经历过两次失败的数据仓库建设,现在是第三次,人们普遍认为这次也将会失败。项目经理应该作些什么来消除人们对数据仓库的消极看法?2.企业的业务系统方,即OLTP方的工作人员对数据仓库方不配合,比如对数据仓库的源数据申请置之不理。项目经理应该如何来应付这种情况?3.企业的管理层变动较频繁,支持数据仓库的企业领导可能会离开,面对这种情况,项目经理应该如何应付?4.企业雇佣一家咨询公...阅读全文

posted @ 2010-08-10 16:49 李梦蛟 阅读(278) | 评论 (0) 编辑

数据仓库项目管理面试题整理
摘要: 本部分内容整理于Sid Adelman的著作Impossible Data Warehouse Situations。其中的问题都是从业人员在工作中经历的实际问题。这些问题同样也可以作为数据仓库项目经理的面试问题。这些问题很多没有固定的答案,不同的人会有不同的想法。重要的是在看到这些问题时能有一些自己的想法。1.项目管理2.项目需求3.成本论证与预算4.组织与职员配备5.用户问题6.团队问题7.项...阅读全文

posted @ 2010-08-10 16:48 李梦蛟 阅读(564) | 评论 (4) 编辑

浅析实时ETL的架构选择
摘要: Describe the architecture options for implementing real-time ETL.简述在架构实时ETL时的可以选择的架构部件。答:在建立数据仓库时,ETL通常都采用批处理的方式,一般来说是每天的夜间进行跑批。随着数据仓库技术的逐步成熟,企业对数据仓库的时间延迟有了更高的要求,也就出现了目前常说的实时ETL(Real-Time ETL)。实时ETL是数...阅读全文

posted @ 2010-08-10 16:25 李梦蛟 阅读(272) | 评论 (0) 编辑

浅析实时ETL的实现方法及适用范围
摘要: Explain the different real-time approaches and how they can be applied in different business scenarios.简述几种不同的实时ETL实现方法以及它们的适用范围。答:实时数据仓库在目前来说还不是很成熟,成功案例也比较少,下面列举了一些实时数据仓库架构的实现方法。1.EII ONLY使用EII技术来代替实...阅读全文

posted @ 2010-08-10 16:25 李梦蛟 阅读(195) | 评论 (0) 编辑

浅析实时ETL的实现难点
摘要: Outline some challenges faced by real-time ETL and describe how to overcome them.简述实时ETL的一些难点及其解决办法。答:实时ETL的引入给数据仓库的建设带来了很多新的问题和挑战,下面列举了一些问题,其中有些问题有具体的解决办法,有些只能在实际情况下去斟酌。1.连续的ETL处理对系统可靠性提出更高的要求。2.离散快照...阅读全文

posted @ 2010-08-10 16:25 李梦蛟 阅读(225) | 评论 (0) 编辑

浅析查找ETL系统瓶颈
摘要: What steps do you take to determine the bottleneck of a slow running ETL process?如果ETL进程运行较慢,需要分哪几步去找到ETL系统的瓶颈问题。答:ETL系统遇到性能问题,运行很慢是一件较常见的事情,这时要做的是逐步找到系统的瓶颈在哪里。首先要确定是由CPU、内存、I/O和网络等产生的瓶颈,还是由ETL处理过程产生的...阅读全文

posted @ 2010-08-10 16:24 李梦蛟 阅读(187) | 评论 (0) 编辑

浅析评估数据加载时间
摘要: Describe how to estimate the load time of a large ETL job.简述如何评估大型ETL数据加载时间。答:评估一个大型的ETL的数据加载时间是一件很复杂的事情。数据加载分为两类,一类是初次加载,另一类是增量加载。在数据仓库正式投入使用时,需要进行一次初次加载,而这次初次加载需要的时间一般较难预料。在数据仓库的日常使用和维护中,每天需要对数据仓库进行...阅读全文

posted @ 2010-08-10 16:24 李梦蛟 阅读(123) | 评论 (0) 编辑

浅析共享元数据的方法
摘要: Offer techniques for sharing business and technical metadata.简述共享业务元数据和技术元数据的方法。答:为了能共享各种元数据,在数据仓库的构建过程中必须要有一些元数据标准,并在实际开发中遵守这些标准。这些标准包括元数据命名规则、存储规则及共享规则等内容。有关元数据标准的内容可以参看公共仓库元模型(Common Warehouse Meta...阅读全文

posted @ 2010-08-10 16:23 李梦蛟 阅读(115) | 评论 (0) 编辑

浅析数据加载顺序
摘要: State the primary types of tables found in a data warehouse and the order which they must be loaded to enforce referential integrity.简述数据仓库中的表的基本类型,以及为了保证引用完整性该以什么样的顺序对它们进行加载。答:数据仓库中的表的基本类型有维度表、事实表、子维...阅读全文

posted @ 2010-08-10 16:23 李梦蛟 阅读(120) | 评论 (0) 编辑

浅析ETL的技术支持
摘要: What are the characteristics of the four levels of the ETL support model?简述ETL技术支持工作的四个级别的特点。答:数据仓库上线后,ETL组需要为保证ETL工作的正常运行提供技术支持。通常这种技术支持工作分为四个级别。1.第一级别的技术支持通常是电话支持人员,属于技术支持服务窗口(Help Desk)类型。如果数据迁移出现错...阅读全文

posted @ 2010-08-10 16:23 李梦蛟 阅读(131) | 评论 (0) 编辑

浅析ETL过程中的元数据
摘要: Describe the different types of ETL metadata and provide examples of each.举例说明各种ETL过程中的元数据。答:元数据是ETL项目组面对的一个非常重要的主题,对于整个数据仓库项目也是非常重要的一部分。对于元数据的分类和使用没有很确定的定义。通常来说,我们可以把元数据分为三类,分别为业务元数据(Business Metadat...阅读全文

posted @ 2010-08-10 16:22 李梦蛟 阅读(170) | 评论 (0) 编辑

浅析操作型元数据
摘要: Share acceptable mechanisms for capturing operational metadata.简述获取操作型元数据的方法。答:操作型元数据(Operational Metadata),也就是过程处理元数据,记录的是ETL过程中数据迁移情况,如上次迁移日期,加载的记录数等信息。这部分元数据在ETL加载失败时会非常重要。一般来说,对于使用ETL工具的数据加载,像迁移调度...阅读全文

posted @ 2010-08-10 16:22 李梦蛟 阅读(100) | 评论 (0) 编辑

浅析桥接表的作用
摘要: How are bridge tables delivered to classify groups of dimension records associated to a single fact?简述桥接表是如何将维度表和事实表进行关联的?答:桥接表(Bridge Table)是维度建模中的一类比较特殊的表。在数据仓库的建模时,会遇到具有层次结构的维度表,对于这样的表有一种建模方式是建立父子表...阅读全文

posted @ 2010-08-10 16:21 李梦蛟 阅读(249) | 评论 (0) 编辑

浅析迟到数据的处理
摘要: How does late arriving data affect dimensions and facts? Share techniques for handling each.迟到的数据对事实表和维度表有什么影响?怎样来处理这个问题?答:迟到的数据分为两种,一种是迟到的事实表数据,另一种是迟到的维度表数据。对于迟到的事实记录,我们可以插入到相应的事实表中。在插入的同时,还需要做一些处理。首...阅读全文

posted @ 2010-08-10 16:21 李梦蛟 阅读(114) | 评论 (0) 编辑

浅析一致性维度的交付步骤
摘要: Explain the three basic delivery steps for conformed dimensions.简述对一致性维度的三种基本的交付步骤。答:数据整合的关键就是生成一致性维度,再通过一致性维度将来自不同数据源的事实数据合并到一起,供分析使用。通常来说,生成一致性维度有如下三个步骤:1.标准化(Standardizing)标准化的目的是使不同数据源的数据编码方式,数据格式...阅读全文

posted @ 2010-08-10 16:20 李梦蛟 阅读(115) | 评论 (0) 编辑

浅析基本事实表的ETL处理
摘要: Name the three fundamental fact grains and describe an ETL approach for each.简述三种基本事实表,并说明ETL的过程中如何处理它们。答:事实表从粒度的角色来划分可以分为三类,分别是交易粒度事实表(Transaction Grain)、周期快照粒度事实表(Periodic Snapshot)和累计快照粒度事实表(Accumu...阅读全文

posted @ 2010-08-10 16:20 李梦蛟 阅读(158) | 评论 (0) 编辑

浅析ETL中对日期的处理
摘要: Why do dates require special treatment during the ETL process?为什么在ETL的过程中需要对日期进行特殊处理?答:在数据仓库的项目中,分析是主导需求,而基于日期和时间的分析更是占了很大的比重。而在操作型源系统中,日期通常都是SQL的DATETIME型的。如果在分析时,使用SQL对这种类型的字段临时处理会出现一些问题,如效率很差,不同的用户...阅读全文

posted @ 2010-08-10 16:19 李梦蛟 阅读(154) | 评论 (1) 编辑

浅析量化分析数据质量
摘要: How can data quality be quantified in the data warehouse?如何来量化数据仓库中的数据质量?答:在数据仓库项目中,通常通过不规则数据的检测工作(Anomaly Detection)来量化源系统的数据质量。除非成立专门的数据质量调查项目组,否则这个工作应该由ETL项目组完成。通常可以采用分组SQL来检查数据是否符合域的定义规则。对于数据量小的表,...阅读全文

posted @ 2010-08-10 16:18 李梦蛟 阅读(119) | 评论 (0) 编辑

浅析代理键替换管道
摘要: What are surrogate keys? Explain how the surrogate key pipeline works.什么是代理键?简述代理键替换管道如何工作。答:在维度表的迁移过程中,有一种处理方式是使用无意义的整型值分配给维度记录并作为维度记录的主键,这些作为主键的整型值称为代理键(Surrogate Key)。使用代理键有很多好处,如隔离数据仓库与操作环境,历史记录的保...阅读全文

posted @ 2010-08-10 16:18 李梦蛟 阅读(140) | 评论 (0) 编辑

浅析数据质量检查
摘要: What are the four broad categories of data quality checks? Provide an implementation technique for each.数据质量检查的四大类是什么?为每类提供一种实现技术。答:数据质量检查是ETL工作中非常重要的一步,主要关注一下四个方面。1.正确性检查(Corret)检查数据值及其描述是否真实的反映了客观事务...阅读全文

posted @ 2010-08-10 16:17 李梦蛟 阅读(132) | 评论 (0) 编辑

浅析何时进行概况分析
摘要: At which stage of the ETL should data be profiled?简述应该在ETL的哪个步骤来实现概况分析?答:数据概况分析是对源数据内容的概况进行分析,应该在项目的开始后尽早完成,它会对设计和实现有很大的影响。在完成需求收集后就应该立即开始数据概况分析。数据概况分析不光是对源系统的数据概况的定量描述,而且为ETL系统中需要建立的错误事件事实表(Error Eve...阅读全文

posted @ 2010-08-10 16:17 李梦蛟 阅读(99) | 评论 (0) 编辑

浅析数据质量检查的交付物
摘要: What are the essential deliverables of the data quality portion of ETL?ETL项目中的数据质量部分核心的交付物有那些?答:ETL项目中数据质量部分的核心的交付物主要有下面三个:1.数据概况分析结果数据概况分析结果是对源系统的数据状况的分析产物,包括如源系统中有多少个表,每个表有多少字段,其中多少为空,表间的外键关系是否存在等反映...阅读全文

posted @ 2010-08-10 16:17 李梦蛟 阅读(104) | 评论 (0) 编辑

浅析数据库连接方式
摘要: Explain the pros and cons of communicating with databases natively versus ODBC.简述直接连接数据库和使用ODBC连接数据库进行通讯的优缺点。答:通常连接数据库的方式分为两类,一类是直接连接,另一类是通过ODBC连接。直接连接的方式主要是通过COBOL、PL/SQL、Transact-SQL等方式连接数据库。这种方式的优点...阅读全文

posted @ 2010-08-10 16:16 李梦蛟 阅读(123) | 评论 (0) 编辑

浅析变化数据捕获
摘要: Describe three change data capture (CDC) practices and the pros and cons of each.简述出三种变化数据捕获技术及其优缺点。答:变化数据捕获(CDC)技术是ETL工作中的重点和难点,通常需要在增量抽取时完成。实现变化数据捕获时最理想的是找到源系统的DBA。如果不能找到,就需要ETL项目组自己进行检测数据的变化。下面是一些常...阅读全文

posted @ 2010-08-10 16:16 李梦蛟 阅读(136) | 评论 (0) 编辑

浅析ERP数据的抽取
摘要: What is the best approach for handling ERP source data?从ERP源系统中抽取数据最好的方法是什么?答:ERP系统的产生是为了解决企业内异构数据的整合。这个问题也是数据仓库系统面临的主要问题。ERP的解决方案是将企业内的各个应用(包括销售、会计、人力资源、库存和产品等)建立在相同的平台和相同的应用框架下,即在应用操作层将企业内的数据进行了一致性处...阅读全文

posted @ 2010-08-10 16:15 李梦蛟 阅读(163) | 评论 (0) 编辑

浅析Staging
摘要: When should data be set to disk for safekeeping during the ETL?简述ETL过程中哪个步骤应该出于安全的考虑将数据写到磁盘上?答:Staging的意思就是将数据写到磁盘上。出于安全及ETL能方便重新开始,在数据准备区(Staging Area)中的每个步骤中都应该将数据写到磁盘上,即生成文本文件或者将建立关系表保存数据,而不应该以数据不落...阅读全文

posted @ 2010-08-10 16:14 李梦蛟 阅读(147) | 评论 (0) 编辑

浅析异构数据抽取
摘要: Describe techniques for extracting from heterogeneous data sources.简述异构数据源中的数据抽取技术。答:在数据仓库项目中,需要抽取的数据经常来自不同的数据源,它们的逻辑结构和物理结构都可能不同,即称之为异构数据源。在对异构数据源进行整合抽取时,我们需要做的事情依次是标识出所有的源系统,对源系统进行概况分析,定义数据匹配逻辑,建立筛选...阅读全文

posted @ 2010-08-10 16:14 李梦蛟 阅读(151) | 评论 (0) 编辑

浅析数据准备区中的数据结构
摘要: What are the permissible data structures for the data staging area? Briefly describe the pros and cons of each.在数据准备区中允许使用的数据结构有哪些?各有什么优缺点?答:1.固定格式的文本文件。(Flat File)Flat File指的是一种保存在系统上的一种文本文件格式,它以类似数据...阅读全文

posted @ 2010-08-10 16:11 李梦蛟 阅读(155) | 评论 (0) 编辑

浅析起始来源数据
摘要: How is the system-of-record determined?如何确定起始来源数据?答:这个问题的关键是理解什么是System-of-Record。System-of-Record和数据仓库领域内的其他很多概念一样,不同的人对它有不同的定义。在Kimball的体系中,System-of-Record是指最初产生数据的地方,即数据的起始来源。在较大的企业内,数据会被冗余的保存在不同的...阅读全文

posted @ 2010-08-10 16:10 李梦蛟 阅读(122) | 评论 (0) 编辑

浅析ETL过程的四步
摘要: What are the four basic Data Flow steps of an ETL process?在ETL过程中四个基本的过程分别是什么?答:Kimball数据仓库构建方法中,ETL的过程和传统的实现方法有一些不同,主要分为四个阶段,分别是抽取(extract)、清洗(clean)、一致性处理(comform)和交付(delivery),简称为ECCD。1.抽取阶段的主要任务是:...阅读全文

posted @ 2010-08-10 16:10 李梦蛟 阅读(265) | 评论 (0) 编辑

浅析逻辑数据映射
摘要: What is a logical data mapping and what does it mean to the ETL team?什么是逻辑数据映射?它对ETL项目组的作用是什么?答:逻辑数据映射(Logical Data Map)用来描述源系统的数据定义、目标数据仓库的模型以及将源系统的数据转换到数据仓库中需要做操作和处理方式的说明文档,通常以表格或Excel的格式保存如下的信息:目标表...阅读全文

posted @ 2010-08-10 16:09 李梦蛟 阅读(323) | 评论 (0) 编辑

浅析数据探索阶段
摘要: What are the primary goals of the data discovery phase of the data warehouse project?在数据仓库项目中,数据探索阶段的主要目的是什么?答:在逻辑数据映射进行之前,需要首先对所有的源系统进行分析。对源系统的分析通常包括两个阶段,一个是数据探索阶段(Data Discovery Phase),另一个是异常数据检测阶段。...阅读全文

posted @ 2010-08-10 16:09 李梦蛟 阅读(164) | 评论 (0) 编辑

ETL架构师面试题
摘要: 本部分的题目来自Kimball的ETL Toolkit著作,原著未直接给出答案。这里的中文题目和答案是我参考其原著按自己的理解整理而来的,仅供参考。对于其中不确切的地方,欢迎大家一起沟通。有兴趣的朋友可以直接阅读原著。分析1.什么是逻辑数据映射?它对ETL项目组的作用是什么?2.在数据仓库项目中,数据探索阶段的主要目的是什么?3.如何确定起始来源数据?架构4.在ETL过程中四个基本的过程分别是什么...阅读全文

posted @ 2010-08-10 16:08 李梦蛟 阅读(695) | 评论 (0) 编辑

ETL架构中的38个子系统
摘要: The 38 Subsystems of ETL By Ralph Kimball, 2004年4月 建立一个成功的数据仓库系统,依靠的是最佳实践而不是直觉。 三个简单的字母,E-T-L,很容易的让大家忽视了38个ETL子系统在数据仓库建设中的重要性。 抽取-转换-加载(ETL)系统,或者非正式的称为“后台系统”,在建立整个数据仓库系统中占据了70的工作量和时间。但是这还不...阅读全文

posted @ 2010-08-10 14:13 李梦蛟 阅读(594) | 评论 (0) 编辑

背包问题趣事
摘要: 今天快下班的时候,有一大学同学发过来一个excel,里面有54个数字,他问我能不能从这54个数字中找出n个数字,加起来刚好等于70708。刚开始就琢磨着用遍历算法来解决问题,想着想着感觉太晕了,复杂度太高了。灵感突然来袭,这不是在学校里面学过的典型的背包问题么,看来大学里面也不是什么都没有学到哈。知道了问题的出处,事情就好办了,下面直接上代码。如下是结果:6192.22 1623.22 3138....阅读全文

posted @ 2010-08-06 10:29 李梦蛟 阅读(292) | 评论 (3) 编辑

KDT#94 为DW/BI系统建立定制工具
摘要: Building Custom Tools for the DW/BI System市场上有大量的工具帮我们来建立DW/BI系统、把信息交付给业务用户。这些工具的种类也很多,它们包括关系型数据库管理系统、OLAP数据库管理系统、ETL工具、数据挖掘工具、查询工具、报表工具,以及BI门户工具等等。那么在这么多的工具中,定制工具起什么样的作用呢?我们看到的大部分定制工具都是用来支持后台操作的,如元数据...阅读全文

posted @ 2010-08-05 14:53 李梦蛟 阅读(37) | 评论 (0) 编辑

KDT#96 像应用软件开发经理一样思维
摘要: Think Like A Software Development Manager对很多企业来说,广大的用户通过BI应用来使用DW/BI系统。这些BI应用包括标准报表,分析应用,仪表盘和操作型BI等内容。这些应用提供了一个结构化的、参数驱动的、相对简单的方法给用户,用户通过这些方法可以得到他们需要的信息。在“KDT#91 DW/BI系统的营销”之中,我们描述了BI应用作为D...阅读全文

posted @ 2010-08-05 14:53 李梦蛟 阅读(35) | 评论 (0) 编辑

KDT#91 DW/BI系统的营销(一)
摘要: Marketing the DW/BI System技术人员一般都远离营销工作。当有人说“你一定是营销团队的”时,就是在说这种情况。这主要是因为我们不理解营销到底是什么,为什么它非常重要。在本技巧中,我们首先回顾一下营销的经典概念,接着展示我们怎么将其应用到DW/BI系统中。如果把营销看作为培训可能会更好一些。营销人员将产品的功能和特色讲解给客户。营销的名声不好,因为它常习...阅读全文

posted @ 2010-08-05 14:52 李梦蛟 阅读(43) | 评论 (0) 编辑

KDT#91 DW/BI系统的营销(二)
摘要: Marketing the DW/BI System3.位置对于消费品,位置是显而易见的:产品必须放到储藏架上,客户才会买它。对于我们来说,位置意味着我们的客户能在需要的时候找到他们需要的信息。也就是说,我们需要为BI应用建立导航结构,这样用户才能方便的使用。而且一些有用的功能也需要提供,例如搜索功能、报表元数据的描述和分类功能、个性化设置功能等。这部分内容可以参见“KDT#58 BI...阅读全文

posted @ 2010-08-05 14:52 李梦蛟 阅读(28) | 评论 (0) 编辑

KDT#82 改变事实表的粒度
摘要: 通常事实表的粒度直接来自源系统的交易表,但也有时我们会根据需要产生更细粒度的事实数据。这样的情况主要是当需要把事实表中的事实转化为事实维度时发生,例如事实表中的多个事实类型相似但事实的数量可能会增加时。在下面列出的一些情况下,我们可以考虑将为事实表添加新的事实维度,来减小事实表中事实的数量。1.事实表中事实过多时。一般来说,当一个事实表中的事实在三十个左右比较正常,如果到一百个左右就过多了。2.如...阅读全文

posted @ 2010-08-05 14:38 李梦蛟 阅读(59) | 评论 (0) 编辑

KDT#79 有关维度表的大小
摘要: 在很多实施数据仓库的企业里,客户和产品都会有上百万条记录。数据量过大,导致数据的加载和查询都会面临很大的问题。不过处理器和内存技术的大幅度进步很大的解决了这个问题。那么,现在对我们来说,多大的维度表是比较危险的呢?这时该如何处理呢?对于一个大型的银行来说,可能会有3千万个帐户,如果每个帐户有20个字段来进行描述,每个字段为10个字节。这样,帐户维度表就会有6GB的数据。3千万条记录的维度表对于MO...阅读全文

posted @ 2010-08-05 14:37 李梦蛟 阅读(78) | 评论 (1) 编辑

KDT#80 给维度表添加变化原因列
摘要: 通常我们用TYPE2的缓慢变化维策略来处理维度表的历史信息问题。有时,客户会提出下面这样的问题:我们每个月有多少个新增客户?类似这样需要对维度表的数据变化进行分析的需求,使用标准的TYPE2策略处理起来会比较麻烦。这时,我们可以在维度表中添加一个变化原因列(RowChangeReason)。简单的处理方式,我们可以使用两个字节的缩写来标识变化原因。例如,新建列为 ’NW’,...阅读全文

posted @ 2010-08-05 14:37 李梦蛟 阅读(52) | 评论 (0) 编辑

KDT#81 事实表中的代理键
摘要: 在数据仓库的建模中,代理键通常是建立在维度表中的。那么在事实表中如何呢?在建立逻辑模型时,事实表中显然是没必要建立代理键的,但是到了物理模型,在某些特定的情况下是可以考虑建立代理键。代理键一般是无意义的整型值,做为维度表的主键,它的分配过程一般是顺序的。代理键可以很好的隔离源系统的数据变化,对数据仓库中的查询性能也能起到很好的作用。在事实表中,主键一般定义为维度外键的子集,通常几个维度外键即可实现...阅读全文

posted @ 2010-08-05 14:37 李梦蛟 阅读(95) | 评论 (0) 编辑

KDT#77 维度建模中不要只有汇总数据
摘要: 很多人对维度建模有一个误解,认为维度建模是为了管理和战略分析的需要而建立的汇总数据。事实上,这是一种错误的观点。维度建模应该保存最细的原子粒度的数据。这样才能满足用户的不确定的需求。出于性能的考虑,数据库管理员要建立一些汇总事实表(也称聚集事实表,Aggregated Fact Table)。这类表每一条记录保存的是选定的几个维度及在这几个维度上汇总的事实值。这些表可以是物理表,也可以是物化视图(...阅读全文

posted @ 2010-08-05 14:36 李梦蛟 阅读(76) | 评论 (1) 编辑

KDT#78 迟到的维度记录
摘要: 在数据迁移的过程中,可能会遇到由于各种原因而迟到的维度记录。它们有可能是比事实记录晚到的维度记录,也可能是维度属性变化了但是延迟提交给数据仓库的维度记录。对于迟到的维度记录有几种处理策略。第一种方案是,ETL系统可以在事实记录相关的维度记录到了之后再将该事实记录迁移入数据仓库中。这样做的缺点是,事实表的记录可能会不完全。第二种方案是在维度表中建立一条“未知”的维度记录,对于...阅读全文

posted @ 2010-08-05 14:36 李梦蛟 阅读(53) | 评论 (0) 编辑

KDT#71 数据建模时的命名方法
摘要: 确定数据建模时的命名是一件麻烦的事,因为不同的人对同样的事情有不同的理解。下面通过三个步骤来完成命名的过程。前两步一般是在模型给业务用户看之前。第三步是业务用户看过并理解了模型之后。1.准备阶段首先,建模人员需要掌握公司或者团队内的命名规则,如果没有的话,需要建立一套。建模时,需要先根据实际情况定下数据项的名称,这些名称需要简洁、能描述清除事物并且是唯一的。通常字段的名称包括如下三部分:Prime...阅读全文

posted @ 2010-08-05 14:35 李梦蛟 阅读(47) | 评论 (0) 编辑