随笔分类 - ETL
摘要:浅析查找ETL系统瓶颈What steps do you take to determine the bottleneck of a slow running ETL process?如果ETL进程运行较慢,需要分哪几步去找到ETL系统的瓶颈问题。答:ETL系统遇到性能问题,运行很慢是一件较常见的事情,这时要做的是逐步找到系统的瓶颈在哪里。首先要确定是由CPU、内存、I/O和网络等产生的瓶颈,还是由ETL处理过程产生的瓶颈。如果环境没有瓶颈,那么需要分析ETL的代码。这时,我们可以采用排除的方法,需要隔离不同的操作,并分别对它们进行测试。如果是采用纯手工编码方式的ETL处理,隔离不同的操作要麻
阅读全文
摘要:浅析一致性维度的交付步骤Explain the three basic delivery steps for conformed dimensions.简述对一致性维度的三种基本的交付步骤。答:数据整合的关键就是生成一致性维度,再通过一致性维度将来自不同数据源的事实数据合并到一起,供分析使用。通常来说,生成一致性维度有如下三个步骤:1.标准化(Standardizing)标准化的目的是使不同数据源的数据编码方式,数据格式等相同,为下一步数据匹配打下基础。2.匹配(Matching and Deduplication)数据匹配的工作有两种,一种是将不同数据源的标识同一事物的不同属性匹配到一起,是
阅读全文
摘要:Why do dates require special treatment during the ETL process?为什么在ETL的过程中需要对日期进行特殊处理?答:在数据仓库的项目中,分析是主导需求,而基于日期和时间的分析更是占了很大的比重。而在操作型源系统中,日期通常都是SQL的DATETIME型的。如果在分析时,使用SQL对这种类型的字段临时处理会出现一些问题,如效率很差,不同的用户会采用不同的格式化方法导致报表不统一。所以,在数据仓库的建模时都会建立日期维度表和时间维度表,将用到的和日期相关的描述都冗余到该表中。但是,并不是所有的日期都被转化为日期维度表的外键。日期维度表中的记
阅读全文
摘要:What are surrogate keys? Explain how the surrogate key pipeline works.什么是代理键?简述代理键替换管道如何工作。答:在维度表的迁移过程中,有一种处理方式是使用无意义的整型值分配给维度记录并作为维度记录的主键,这些作为主键的整型值称为代理键(Surrogate Key)。使用代理键有很多好处,如隔离数据仓库与操作环境,历史记录的保存,查询速度快等。同时,在事实表的迁移过程中,为了保证参照完整性也需要进行代理键的替换工作。为了代理键替换的效率高一些,我们通常在数据准备区中建立代理键查找表(Surrogate Mapping Ta
阅读全文
摘要:How can data quality be quantified in the data warehouse?如何来量化数据仓库中的数据质量?答:在数据仓库项目中,通常通过不规则数据的检测工作(Anomaly Detection)来量化源系统的数据质量。除非成立专门的数据质量调查项目组,否则这个工作应该由ETL项目组完成。通常可以采用分组SQL来检查数据是否符合域的定义规则。对于数据量小的表,可以直接使用类似下面的SQL完成。select state, count(*) from order_detail group by state对于数据量大的表,一般通过采样技术来减少数据量,然后进行
阅读全文
摘要:At which stage of the ETL should data be profiled?简述应该在ETL的哪个步骤来实现概况分析?答:数据概况分析是对源数据内容的概况进行分析,应该在项目的开始后尽早完成,它会对设计和实现有很大的影响。在完成需求收集后就应该立即开始数据概况分析。数据概况分析不光是对源系统的数据概况的定量描述,而且为ETL系统中需要建立的错误事件事实表(Error Event Table)和审计维度表(Audit Dimension)打下基础,为其提供数据。
阅读全文
摘要:What are the four broad categories of data quality checks? Provide an implementation technique for each.数据质量检查的四大类是什么?为每类提供一种实现技术。答:数据质量检查是ETL工作中非常重要的一步,主要关注一下四个方面。1.正确性检查(Corret)检查数据值及其描述是否真实的反映了客观事务。例如地址的描述是否完全。2.明确性检查(Unambiguous)检查数据值及其描述是否只有一个意思或者只有一个解释。例如地名相同的两个县需要加区分方法。3.一致性检查(Consistent)检查数据
阅读全文
摘要:Describe three change data capture (CDC) practices and the pros and cons of each.简述出三种变化数据捕获技术及其优缺点。答:变化数据捕获(CDC)技术是ETL工作中的重点和难点,通常需要在增量抽取时完成。实现变化数据捕获时最理想的是找到源系统的DBA。如果不能找到,就需要ETL项目组自己进行检测数据的变化。下面是一些常用的技术。1.采用审计列审计列指表中如“添加日期”、“修改日期”、“修改人”等信息的字段。应用程序在对该表的数据进行操作时,同时更新这些字段,或者建立触发器来更新这些字段。采用这种方式进行变化数据捕获
阅读全文
摘要:Explain the pros and cons of communicating with databases natively versus ODBC.简述直接连接数据库和使用ODBC连接数据库进行通讯的优缺点。答:通常连接数据库的方式分为两类,一类是直接连接,另一类是通过ODBC连接。直接连接的方式主要是通过COBOL、PL/SQL、Transact-SQL等方式连接数据库。这种方式的优点是运行性能高,可以使用DBMS提供的一些特殊功能。缺点是通用性差。ODBC是为windows应用程序访问数据库提供的一组接口。ODBC的优点是灵活性,通过改变驱动和连接方式可以使用不同的数据库。ODB
阅读全文
摘要:What is the best approach for handling ERP source data?从ERP源系统中抽取数据最好的方法是什么?答:ERP系统的产生是为了解决企业内异构数据的整合。这个问题也是数据仓库系统面临的主要问题。ERP的解决方案是将企业内的各个应用(包括销售、会计、人力资源、库存和产品等)建立在相同的平台和相同的应用框架下,即在应用操作层将企业内的数据进行了一致性处理。而数据仓库是在应用操作层之上建立一致性的规则并进行一致性处理。目前比较流行的ERP系统有SAP、PeopleSoft、Oracle、Baan和J.D.EDwards(大部分没接触过)。如果企业内只
阅读全文
摘要:Describe techniques for extracting from heterogeneous data sources.简述异构数据源中的数据抽取技术。答:在数据仓库项目中,需要抽取的数据经常来自不同的数据源,它们的逻辑结构和物理结构都可能不同,即称之为异构数据源。在对异构数据源进行整合抽取时,我们需要做的事情依次是标识出所有的源系统,对源系统进行概况分析,定义数据匹配逻辑,建立筛选规则,生成一致性维度。对于源数据的操作系统平台和数据平台各不相同的情况,我们需要根据实际情况来确定如何进行数据抽取,通常的方法有建立ODBC连接、定义接口文件、建立DBLINK等方法。
阅读全文
摘要:When should data be set to disk for safekeeping during the ETL?简述ETL过程中哪个步骤应该出于安全的考虑将数据写到磁盘上?答:Staging的意思就是将数据写到磁盘上。出于安全及ETL能方便重新开始,在数据准备区(Staging Area)中的每个步骤中都应该将数据写到磁盘上,即生成文本文件或者将建立关系表保存数据,而不应该以数据不落地方式直接进行ETL。例如,在数据抽取阶段,我们需要连接到源系统,为了对源系统的影响尽量小,我们需要将抽取的数据保存成文本文件或者放入数据准备区的表中,这样,当ETL过程出现错误而失败时,我们就可以从
阅读全文
摘要:What are the permissible data structures for the data staging area? Briefly describe the prosand cons of each.在数据准备区中允许使用的数据结构有哪些?各有什么优缺点?答:1.固定格式的文本文件。(Flat File)Flat File指的是一种保存在系统上的一种文本文件格式,它以类似数据库的表的方式用行和列来保存数据。这种文件格式经常用来进行数据交换。用于保存数据不太合适。2.XML数据集。多用于数据交换,用户保存数据不太合适。3.关系数据库的表。保存数据的较理想选择。4.独立的数据库
阅读全文

浙公网安备 33010602011771号