面试ETL题总汇.docx

上传人:b****8 文档编号:10255122 上传时间:2023-02-09 格式:DOCX 页数:14 大小:22.49KB
下载 相关 举报
面试ETL题总汇.docx_第1页
第1页 / 共14页
面试ETL题总汇.docx_第2页
第2页 / 共14页
面试ETL题总汇.docx_第3页
第3页 / 共14页
面试ETL题总汇.docx_第4页
第4页 / 共14页
面试ETL题总汇.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

面试ETL题总汇.docx

《面试ETL题总汇.docx》由会员分享,可在线阅读,更多相关《面试ETL题总汇.docx(14页珍藏版)》请在冰豆网上搜索。

面试ETL题总汇.docx

面试ETL题总汇

ETL面试题总汇

一、分析

1.什么是逻辑数据映射?

它对ETL项目组作用是什么?

WhatisalogicaldatamappingandwhatdoesitmeantotheETLteam?

答:

逻辑数据映射(LogicalDataMap)用来描述源系统数据定义、目的数据仓库模型以及将源系统数据转换到数据仓库中需要做操作和解决方式阐明文档,普通以表格或Excel格式保存如下信息:

目的表名:

目的列名:

目的表类型:

注明是事实表、维度表或支架维度表。

SCD类型:

对于维度表而言。

三种SCD(SlowlyChangingDimension)技术

SCD1直接修改原维表信息,不保存任何维历史信息。

SCD2创立新记录而不删除或修改原有维信息。

可通过为每条记录设定过期时间、生效时间两个字段来区别各历史记录和当前记录(历史记录过期时间均早于当前记录生效时间)。

SCD3在维表中定义历史信息字段,只保存有限历史信息(此技术很少应用)

源数据库名:

源数据库实例名,或者连接字符串。

源表名:

源列名:

转换办法:

需要对源数据做操作,如Sum(amount)等。

逻辑数据映射应当贯穿数据迁移项目始终,在其中阐明了数据迁移中ETL方略。

在进行物理数据映射迈进行逻辑数据映射对ETL项目组是重要,它起着元数据作用。

项目中最佳选取能生成逻辑数据映射数据迁移工具。

-----------------------------补充:

逻辑数据映射分为两种:

1:

模型映射:

从源模型到DW目的模型之间映射类型有:

一对一:

一种源模型数据实体只相应一种目的模型数据实体。

如果源类型与目的类型一致,则直接映射。

如果两者间类型不同样,则必要通过转换映射。

一对多:

一种源模型数据实体只相应各种目的模型数据实体。

在同一种数据存储空间,经常浮现会一种源实体拆分为各种目的实体状况下。

在不同存储空间中,成果会相应到不同存储空间实体。

一对零:

一种源模型数据实体没有与目的模型数据实体有相应,它不在咱们解决筹划范畴之内。

零对一:

一种目的模型数据实体没有与任何一种源数据实体相应起来。

例如只是依照设计考虑,时间维表等。

多对一:

各种源模型数据实体只相应一种目的模型数据实体。

多对多:

各种源模型数据实体相应各种目的模型数据实体。

2:

属性映射

一对一:

源实体一种数据属性列只相应目的实体一种数据属性列。

如果源类型与目的类型一致,则直接映射。

如果两者间类型不同样,则必要通过转换映射。

一对多:

源实体一种数据属性列只相应目的实体各种数据属性列。

在同一种实体中,经常浮现会一种源属性列拆分为目的各种属性列状况。

在不同实体中,成果会相应到不同实体属列。

一对零:

一种源实体数据属性列没有与目的实体数据属性列有相应,它不在咱们解决筹划范畴之内。

零对一:

一种目的实体数据属性列没有与任何一种源数据属性列相应起来。

例如只是依照设计考虑,维表和事实表中时间戳属性,代理健等。

多对一:

源实体各种数据属性列只相应目的实体一种数据属性列。

多对多:

源实体各种数据属性列相应目的实体各种数据属性列。

作用:

1为开发者传送更为清晰数据流信息。

映射关系涉及关于数据在存储到DW前所经历各种变化信息,对于开发过程中数据追踪审查过程非常重要。

2把ETL过程信息归纳为元数据,将数据源构造,目的构造,数据转换规则,映射关系,数据上下文等元数据保存在存储知识库中,为元数据消费者提供较好参照信息,追踪数据来源与转换信息,有助于设计人员理解系统环境变化所导致影响;

开发设计者可以轻松回答如下问题:

1、这些数据从那里来?

2、这样成果通过什么样计算和转化得来?

3、这些数据是如何组织?

4、数据项之间有什么联系?

5、如果源发生变化,有那几种系统,目的受影响?

2.在数据仓库项目中,数据摸索阶段重要目是什么?

Whataretheprimarygoalsofthedatadiscoveryphaseofthedatawarehouseproject?

答:

在逻辑数据映射进行之前,需要一方面对所有源系统进行分析。

对源系统分析普通涉及两个阶段,一种是数据摸索阶段(DataDiscoveryPhase),另一种是异常数据检测阶段。

数据摸索阶段涉及如下内容:

A、收集所有源系统文档、数据字典等内容。

B、收集源系统使用状况,如谁在用、每天多少人用、占多少存储空间等内容。

C、判断出数据起始来源(System-of-Record)。

D、通过数据概况(DataProfiling)来对源系统数据关系进行分析。

数据摸索阶段重要目是理解源系统状况,为后续数据建模和逻辑数据映射打下坚实基本。

3.如何拟定起始来源数据?

Howisthesystem-of-recorddetermined?

如何拟定起始来源数据?

答:

这个问题核心是理解什么是System-of-Record。

System-of-Record和数据仓库领域内其她诸多概念同样,不同人对它有不同定义。

在Kimball体系中,System-of-Record是指最初产生数据地方,即数据起始来源。

在较大公司内,数据会被冗余保存在不同地方,在数据迁移过程中,会浮现修改、清洗等操作,导致与数据起始来源产生不同。

起始来源数据对数据仓库建立有着非常重要作用,特别是对产生一致性维度来说。

咱们从起始来源数据越下游开始建立数据仓库,咱们遇到垃圾数据风险就会越大。

二、架构

4.在ETL过程中四个基本过程分别是什么?

WhatarethefourbasicDataFlowstepsofanETLprocess?

在ETL过程中四个基本过程分别是什么?

答:

Kimball数据仓库构建办法中,ETL过程和老式实现办法有某些不同,重要分为四个阶段,分别是抽取(extract)、清洗(clean)、一致性解决(confirm)和交付(delivery),简称为ECCD。

A、抽取阶段重要任务是:

读取源系统数据模型。

连接并访问源系统数据。

变化数据捕获。

抽取数据到数据准备区。

B、清洗阶段重要任务是:

清洗并增补列属性。

清洗并增补数据构造。

清洗并增补数据规则。

增补复杂业务规则。

建立源数据库描述数据质量。

将清洗后数据保存到数据准备区。

C、一致性解决阶段重要任务是:

一致性解决业务标签,即维度表中描述属性。

一致性解决业务度量及性能指标,普通是事实表中事实。

去除重复数据。

国际化解决。

将一致性解决后数据保存到数据准备区。

D、交付阶段重要任务是:

加载星型和通过雪花解决维度表数据。

产生日期维度。

加载退化维度。

加载子维度。

加载1、2、3型缓慢变化维度。

解决迟到维度和迟到事实。

加载多值维度。

加载有复杂层级构造维度。

加载文本领实到维度表。

解决事实表代理键。

加载三个基本类型事实表数据。

加载和更新汇集。

将解决好数据加载到数据仓库。

从这个任务列表中可以看出,ETL过程和数据仓库建模过程结合非常紧密。

换句话说,ETL系统设计应当和目的表设计同步开始。

普通来说,数据仓库架构师和ETL系统设计师是同一种人。

5.在数据准备区中容许使用数据构造有哪些?

各有什么优缺陷?

Whatarethepermissibledatastructuresforthedatastagingarea?

Brieflydescribethepros.andcons.ofeach.

在数据准备区中容许使用数据构造有哪些?

各有什么优缺陷?

答:

A、固定格式文本文献。

(FlatFile)

FlatFile指是一种保存在系统上一种文本文献格式,它以类似数据库表方式用行和列来保存数据。

这种文献格式经惯用来进行数据互换。

用于保存数据不太适当。

B、XML数据集。

多用于数据互换,顾客保存数据不太适当。

C、关系数据库表。

保存数据较抱负选取。

D、独立数据库表。

独立数据库表普通指建立表和其她表没有外键约束关系。

这样表多用于数据解决。

E、三范式或者关系型模型。

F、非关系型数据源。

非关系型数据源普通涉及COBOLcopybooks、VSAM文献、Flat文献、Spreadsheets等。

G、维度模型。

H、原子事实表和汇集事实表。

I、代理键查找表。

6.简述ETL过程中哪个环节应当出于安全考虑将数据写到磁盘上?

WhenshoulddatabesettodiskforsafekeepingduringtheETL?

简述ETL过程中哪个环节应当出于安全考虑将数据写到磁盘上?

答:

Staging意思就是将数据写到磁盘上。

出于安全及ETL能以便重新开始,在数据准备区(StagingArea)中每个环节中都应当将数据写到磁盘上,即生成文本文献或者将建立关系表保存数据,而不应当以数据不落地方式直接进行ETL。

例如,在数据抽取阶段,咱们需要连接到源系统,为了对源系统影响尽量小,咱们需要将抽取数据保存成文本文献或者放入数据准备区表中,这样,当ETL过程浮现错误而失败时,咱们就可以从这些文本文献开始ETL,而不需要再次影响源系统。

三、抽取

7.简述异构数据源中数据抽取技术。

Describetechniquesforextractingfromheterogeneousdatasources.

简述异构数据源中数据抽取技术。

答:

在数据仓库项目中,需要抽取数据经常来自不同数据源,它们逻辑构造和物理构造都也许不同,即称之为异构数据源。

在对异构数据源进行整合抽取时,咱们需要做事情依次是标记出所有源系统,对源系统进行概况分析,定义数据匹配逻辑,建立筛选规则,生成一致性维度。

对于源数据操作系统平台和数据平台各不相似状况,咱们需要依照实际状况来拟定如何进行数据抽取,普通办法有建立ODBC连接、定义接口文献、建立DBLINK等办法。

8.从ERP源系统中抽取数据最佳办法是什么?

WhatisthebestapproachforhandlingERPsourcedata?

从ERP源系统中抽取数据最佳办法是什么?

答:

ERP系统产生是为理解决公司内异构数据整合。

这个问题也是数据仓库系统面临重要问题。

ERP解决方案是将公司内各个应用(涉及销售、会计、人力资源、库存和产品等)建立在相似平台和相似应用框架下,即在应用操作层将公司内数据进行了一致性解决。

而数据仓库是在应用操作层之上建立一致性规则并进行一致性解决。

当前比较流行ERP系统有SAP、PeopleSoft、Oracle、Baan和J.D.EDwards(大某些没接触过)。

如果公司内只有一套ERP系统,那么数据就已经是一致了,为数据抽取提供了以便。

如果公司内除了ERP外尚有其她系统,则数据抽取会变得复杂。

由于当前ERP系统数据模型都非常复杂,也许有几百几千个表,并且较难理解。

直接在ERP系统上建立数据捕获和抽取是非常复杂。

最佳办法是购买能针对ERP系统数据抽取提供功能ETL工具,将ERP内部复杂性留给ETL厂商解决。

9.简述直接连接数据库和使用ODBC连接数据库进行通讯优缺陷。

ExplaintheprosandconsofcommunicatingwithdatabasesnativelyversusODBC.

简述直接连接数据库和使用ODBC连接数据库进行通讯优缺陷。

答:

普通连接数据库方式分为两类,一类是直接连接,另一类是通过ODBC连接。

直接连接方式重要是通过COBOL、PL/SQL、Transact-SQL等方式连接数据库。

这种方式长处是运营性能高,可以使用DBMS提供某些特殊功能。

缺陷是通用性差。

ODBC是为windows应用程序访问数据库提供一组接口。

ODBC长处是灵活性,通过变化驱动和连接方式可以使用不同数据库。

ODBC方式缺陷是性能差。

使用ODBC连接方式实现ETL话,在ETL程序和至少要有两层,分别是ODBCManager层和ODBCDriver层。

此外,使用ODBC方式不能使用DBMS提供某些特殊功能。

10.简述出三种变化数据捕获技术及其优缺陷。

Describethreechangedatacapture(CDC)practicesandtheprosandconsofeach.

简述出三种变化数据捕获技术及其优缺陷。

答:

变化数据捕获(CDC)技术是ETL工作中重点和难点,普通需要在增量抽取时完毕。

实现变化数据捕获时最抱负是找到源系统DBA。

如果不能找到,就需要ETL项目组自己进行检测数据变化。

下面是某些惯用技术。

A、采用审计列

审计列指表中如“添加日期”、“修改日期”、“修改人”等信息字段。

应用程序在对该表数据进行操作时,同步更新这些字段,或者建立触发器来更新这些字段。

采用这种方式进行变化数据捕获长处是以便,容易实现。

缺陷是如果操作型系统没有相应审计字段,需要变化已有操作型系统数据构造,以保证获取过程涉及每张表均有审计字段。

B、数据库日记

DBMS日记获取是一种通过DBMS提供日记系统来获得变化数据。

它长处是对数据库或访问数据库操作系统影响最小。

缺陷是规定DBMS支持,并且对日记记录格式非常理解。

C、全表扫描

全表扫描或者全表导出文献后进行扫描对比也可以进行变化数据捕获,特别是捕获删除数据时。

这种办法长处是,思路清晰,适应面广,缺陷是效率比较差。

四、数据质量

11.数据质量检查四大类是什么?

为每类提供一种实现技术。

Whatarethefourbroadcategoriesofdataqualitychecks?

Provideanimplementationtechniqueforeach.

数据质量检查四大类是什么?

为每类提供一种实现技术。

答:

数据质量检查是ETL工作中非常重要一步,重要关注一下四个方面。

1.对的性检查(Corret)

检查数据值及其描述与否真实反映了客观事务。

例如地址描述与否完全。

2.明确性检查(Unambiguous)

检查数据值及其描述与否只有一种意思或者只有一种解释。

例如地名相似两个县需要加区别办法。

3.一致性检查(Consistent)

检查数据值及其描述与否统一采用固定商定符号来表达。

例如币别中人民币用'CNY'。

4.完全性检查(Complete)

完全性有两个需要检查地方,一种是检查字段数据值及其描述与否完全。

例如检查与否有空值。

另一种是检查记录共计值与否完全,有无遗忘某些条件。

12.简述应当在ETL哪个环节来实现概况分析?

AtwhichstageoftheETLshoulddatabeprofiled?

简述应当在ETL哪个环节来实现概况分析?

答:

数据概况分析是对源数据内容概况进行分析,应当在项目开始后尽早完毕,它会对设计和实既有很大影响。

在完毕需求收集后就应当及时开始数据概况分析。

数据概况分析不光是对源系统数据概况定量描述,并且为ETL系统中需要建立错误事件事实表(ErrorEventTable)和审计维度表(AuditDimension)打下基本,为其提供数据。

13.ETL项目中数据质量某些核心交付物有那些?

WhataretheessentialdeliverablesofthedataqualityportionofETL?

ETL项目中数据质量某些核心交付物有那些?

答:

ETL项目中数据质量某些核心交付物重要有下面三个:

1.数据概况分析成果

数据概况分析成果是对源系统数据状况分析产物,涉及如源系统中有多少个表,每个表有多少字段,其中多少为空,表间外键关系与否存在等反映源系统数据质量内容。

这些内容用来决定数据迁移设计和实现,并提供应错误事件事实表和审计维度表需要有关数据。

2.错误事件事实表

错误事件事实表及有关一系列维度表是数据质量检查某些一种重要交付物。

粒度是每一次数据质量检查中错误信息。

有关维度涉及日期维度表、迁移信息维度表、错误事件信息维度表,其中错误事件信息维度表中检查类型、源系统信息、涉及表信息、检查使用SQL等内容。

错误事件事实表不提供应前台顾客。

3.审计维度表

审计维度表是给最后顾客提供数据质量阐明一种维度表。

它描述了顾客使用事实表数据来源,数据质量状况等内容。

14.如何来量化数据仓库中数据质量?

Howcandataqualitybequantifiedinthedatawarehouse?

如何来量化数据仓库中数据质量?

答:

在数据仓库项目中,普通通过不规则数据检测工作(AnomalyDetection)来量化源系统数据质量。

除非成立专门数据质量调查项目组,否则这个工作应当由ETL项目组完毕。

普通可以采用分组SQL来检查数据与否符合域定义规则。

对于数据量小表,可以直接使用类似下面SQL完毕。

selectstate,count(*)fromorder_detailgroupbystate

对于数据量大表,普通通过采样技术来减少数据量,然后进行不规则数据检测。

类似SQL如下。

selecta.*fromemployeea,(selectrownumcounter,a.*fromemployeea)Bwherea.emp_id=b.emp_idandmod(b.counter,trunc((selectcount(*)fromemployee)/1000,0))=0

如果可以采用专门数据概况分析工具进行话,可以减少很大工作量。

五、建立映射

15.什么是代理键?

简述代理键替代管道如何工作。

16.为什么在ETL过程中需要对日期进行特殊解决?

17.简述对一致性维度三种基本交付环节。

18.简述三种基本领实表,并阐明ETL过程中如何解决它们。

19.简述桥接表是如何将维度表和事实表进行关联?

20.迟到数据对事实表和维度表有什么影响?

如何来解决这个问题?

六、元数据

21.举例阐明各种ETL过程中元数据。

22.简述获取操作型元数据办法。

23.简述共享业务元数据和技术元数据办法。

七、优化/操作

24.简述数据仓库中表基本类型,以及为了保证引用完整性该以什么样顺序对它们进行加载。

25.简述ETL技术支持工作四个级别特点。

26.如果ETL进程运营较慢,需要分哪几步去找到ETL系统瓶颈问题。

27.简述如何评估大型ETL数据加载时间。

八、实时ETL

28.简述在架构实时ETL时可以选取架构部件。

29.简述几种不同实时ETL实现办法以及它们合用范畴。

1)触发器,在源系统建立触发器  (建议:

源系统业务简朴,负载小)

2)日记,某些源系统数据库可以基于日记实时抽取(建议:

源系统数据库支持日记变化捕获)

3)ESB,公司信息总线,直接通过应用层取数据(建议:

数据量小,并且源系统应用层提供接口)

4)通过ODBC或JDBC直接取源系统数据,(建议使用:

源系统数据安全性低,业务非核心)

基于日记应当是比较好一种方式。

30.简述实时ETL某些难点及其实现办法。

1实时抽取,会导致对源系统影响,如何使得影响最小

2源系统实时更新变化,数据仓库规定相对稳定,如何不被影响或影响最小

实现方式:

核心哪些需求需要实时,把这某些需求剥离出来,但是想办法实现,我遇到过某些,几乎都能迂回满足需求。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1