




已阅读5页,还剩88页未读, 继续免费阅读
(计算机软件与理论专业论文)etl若干关键技术研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 e t l 过程在数据仓库的建设与维护中占据了相当重要的位置 用于将数据 源的数据经抽取 转换后 装载入数据仓库中 降低e t l 过程设计 维护代价 以及提高e t l 过程的执行效率 可以有效降低数据仓库的建设和维护代价 这 是本文研究的目标 设计完成的e t l 过程可能需要更改 便于修改的增量e t l 过程维护代价就 低 这与描述e t l 过程的模型有关 e t l 过程中 增量e t l 过程的设计代价最高 基于数据仓库是建立在远程 数据源上的物化视图集合的观点 全量e t l 过程是这些物化视图的定义 增量 e t l 过程则是其增量维护的过程 则可以利用已有物化视图增量维护的方法 根据全量e t l 过程来生成增量e t l 过程 但是e t l 过程还包括了数据清理和 异构数据转换 这是传统的关系模型所无法描述的 完整的扩展e t l 过程不仅包括将正确的数据装载到数据仓库中 还需要将 数据源中的错误数据进行修正 提高逆向数据清理的执行效率同时也就提高了 e t l 过程的执行效率 本文工作的主要贡献和研究内容如下 1 给出了一个用于描述e t l 过程的模型 称为e t l 过程树 将异构数据 转换 数据清理与查询树结合 e t l 过程树中数据清理规定只作用于单个关系 节点 当修改e t l 过程树中的数据清理规则时 不会对e t l 过程树本身产生 影响 降低了e t l 过程的维护代价 2 给出了差运算物化视图的增量维护的方法 给出了s r a 和b r a 两种增 量维护方法 并讨论了增量的大小对这两种方法执行效率的影响 3 在前两点的研究基础上 给出了根据描述全量e t l 过程的e t l 过程树 自动产生增量e t l 过程的算法 从而降低e t l 过程的设计总代价 4 利用已有数据血统查询的方法 同时考虑增量e t l 过程中错误数据只出 现于插入增量中的特性 给出了在增量e t l 过程上进行错误数据逆向查询的算 法 提高了逆向数据清理的效率 关键字e t l 数据仓库 增量维护 物化视图 自维护 数据血统查询 中图分类法t p 3 1 1 1 3 a b s t r a c t a b s t r a c t ad a t aw a r e h o u s ec o n t a i n sal a r g ec o l l e c t i o no fd a t ai n t e g r a t e df r o mm u l t i p l e d i s t r i b u t e da u t o n o m o u sd a t a b a s e sa n do t h e l i n f o r m a t i o ns o u r c e s e x t r a c t i o n t r a n s f o r m a t i o n l o a d i n g 正t l p r o c e s si st h ep r o c e s s e st od e a l i n gw i t h h o m o g e n e i t y c l e a n i n ga n dl o a d i n gp r o b l e m si nt h eb u i l d i n go fd a t aw a r e h o u s e s y s t e m e t lp r o c e s s e sa r ev e r yi m p o r t a n tf o rb u i l d i n gd a t aw a r e h o u s e sa n ds o m e p a p e r sm e n t i o nt h a te t lp r o c e s s e sc o s t s5 5 o f t h et o t a lc o s t so f d a t aw a r e h o u s e s r u n t i m e s ow i t ht h er e d u c eo ft h ec o s ti nb u i l d i n g m a i n t a i n i n ga n dr u n n i n ge t l p r o c e s s e s t h eb u d g e to f d a t aw a r e h o u s ec a na l s ob er e d u c e d w i t ht h ec h a n g eo fd a t es o u r c e s w en e e dt oc h a n g et h ee t lp r o c e s s e st o o a g o o dm o d e lt od e s c r i b et h ee t lp r o c e s s e ss h o u l dm a k ei te a s yf o rc h a n g i n gt h ee t l p r o c e s s e s t h ec o s to fd e s i g n i n ga l li n c r e m e n t a le t l p r o c e s si sm o r ee x p e n s i v et h a nt h e c o s to fd e s i g n i n gaf u l le t l p r o c e s s ad a t aw a r e h o u s ec a nb es e e na sas e to f m a t e r i a l i z e dv i e w sd e f i n e do v e rt h er e m o t es o u r c ed a t a a n dt h ee t l p r o c e s s e sa r e u s e dt om a i n t a i nt h em a t e r i a l i z e dv i e w s u s i n ge x i s t i n gm e t h o d so fi n c r e m e n t a l m a i n t e n a n o eo fm a t e r i a l i z e dv i e w s w ec a na ni n c r e m e n t a le t l p r o c e s sf r o mt h e f u l le t l p r o c e s s b u ti ne t lp r o c e s s e s d a t ac l e a n i n gm u s t b eu s e dt oi m p r o v et h e q u a l i t yo f d a t a a n dr e l a t i o n sm o d e lc a nn o td e s c r i b ed a t ac l e a n i n g a f t e re r r o r sa r er e m o v e d t h ec l e a n e dd a t as h o u l da l s or e p l a c et h ed i r t yd a t ai nt h e o r i g i n a ls o u r c e si no r d e rt og i v el e g a c ya p p l i c a t i o n st h ei m p r o v e dd a t at o oa n dt o a v o i dr e d o i n gt h ec l e a n i n gw o r kf o rf u t u r ed a t ae x t r a c t i o n s 1 1 l ep r o c e s si sn a m e d b a d q l o wo f c l e a n e d d a t a i ti st h el a s ts t e po f t h ee t lp r o c e s s s ow i t ht h er e d u c eo f t h ec o s ti nr u n n i n ge t lp r o c e s s e s w ec a nr e d u c et h ec o s to f r u n n i n ge t l p r o c e s s n em a i nc o n t r i b u t i o n sa n dr e s e a r c hr e s u l t si n t h i st h e s i sa r eo f t h ef o l l o w i n g 1 a ne t le x p r e s s i o nl o g i ci si n t r o d u c e dt od e s c r i b ee t lp r o c e s s e s i nt h e p r o c e s s e sd a t ae x t r a c t i n g t r a n s f o r m i n g l o a d i n ga n dd a t ac l e a n i n ga r ei n v o l v e d b o t h i nt h em o d e lw eu s ea ne t l p r o c e s st r e et od e s c r i b et h ee t lp r o c e s s t h e r e a r et w ot y p e so fn o d e o n ei st r a n s f o r mn o d e a n da n o t h e ri sr e l a t i o nn o d e b e c a u s e ad a t ac l e a n i n gr u l em u s tb ear e s t r i c t i o no f ar e l a t i o nn o d e w ec a nc h a n g et h er u l e w i t h o u tc h a n g i n gt h ee t l p r o c e s st r e e s ow e r e d u c et h ec o s to fm a i n t a i n i n gt h e e t l p r o c e s s 2 e x i s t i n gr e s e a r c h e s a r ef o c u s e do nt h ej n c r e m e n t a lm a i n t e n a n c eo f a b s t m a t e r i a l i z e dv i e w si ns u c hc i r c u m s t a n c e sw h i c hi n v o l v et h eo p e r a t o r so fs e l e c t i o n p m j e c t i o n j o i na n da g g r e g a t i o nb u td i f f e r e n c eo p e r a t o r se x c l u d e d s i n c ed i f f e r e n c e o p e r a t o r sa r eu s e df r e q u e n t l yi na ne t lp r o c e s s w ed i s c u s si n c r e m e n t a l m a i n t e n a n c eo f m a t e r i a l i z e dv i e w sd e f i n e dw i t hd i f f e r e n c eo p e r a t o r si i id e t a i l 3 u s i n ge x i s t i n gm e t h o d so fi n c r e m e n t a lm a i n t e n a n c eo fm a t e r i a l i z e dv i e w s f o rr e f e r e n c e w ep u tf o r w a r da na p p r o a c ht og e n e r a t ea ni n c r e m e n t a le t l p r o c e s s a u t o m a t i c a l l yf r o mt h ef u l le t lp r o c e s sd e s c r i b e db ye t lt r e e 4 a na l g o r i t h mn a m e dd p t ii sg i v e nt of i n dt h ed i r t yd a t ai nt h ei n c r e m e n to f t h eo r i g i n a ls o u r c e s b e c a u s et h ed i r t yd a t af o u n db yt h ei n c r e m e n te t l p r o c e s si s o n l yi nt h ei n c r e m e n t t h ea l g o r i t h mo n l ya c c e s s e st h ei n c r e m e n to ft h eo r i g i n a l s o u r c e s s ot h ea l g o r i t h mi sm o r ee f f i c i e n tt h a nt h ea l g o r i t h mf o rd a t al i n e a g e t r a c i n gw h i c ha c c e s s e st h ef u l ld a t ao f t h eo r i g i n a ls o u r c e s k e yw o r d se t l d a t aw a r e h o u s e i n c r e m e n t a lm a i n t e n a n c e m a t e r i a l i z e dv i e w s s e l f m a i n t e n a n c e d a t al i n e a g et r a c i n g i 第一章前言 1 1 研究背景与意义 第一章前言 数据仓库将多个数据源的数据集中起来 称为数据集成 并对数据进行汇 总用于分析和处理 把数据从数据源装入数据仓库的过程被称为e t l e x 恤t t r a n s f o r m l o a d 过程 c h a d 9 7 即数据的抽取 转换和装载过程 而用于实 现e t l 过程的专用工具则称为e t l 工具 在e t l 执行过程中 由于多样性数 据源中存在的数据错误与冲突 一般需要进行数据清t 里 r a d 0 0 0 本文中 将 不包含数据清理的e t l 过程称为基本e t l 过程 包含数据清理的e t l 过程称 为扩展e t l 过程 而这两者统称为e t l 过程 e t l 过程在数据仓库的建设与维护中占据了相当重要的位置 相关报告指 出建立数据仓库的预算中至少有三分之一被用于e t l 工具与数据清理工具上 s h t y 9 8 一个数据仓库项目中会有8 0 的时间被用于e t l 过程的建立和执行 上 d e m a 9 7 而数据仓库运行代价中e t l 过程占5 5 1 n m 0 9 7 降低e t l 过程的设计 维护代价以及提高e t l 过程的执行效率 可以有效 降低数据仓库的建设和维护代价 数据仓库的维护中e t l 过程的维护占有很大比重 需要根据数据源数据质 量的变化 对数据清理规则作相应修改 便于修改的e t l 过程维护代价就低 这与描述e t l 过程的模型有关 在e t l 过程设计中 设计代价最高的是增量e t l 过程的设计 它不仅要考 虑数据源与目标关系间的映射关系 还要考虑目标关系上增量的正确求取 而 设计合理的增量e t l 过程可以有更高的执行效率 完整的扩展e t l 过程不仅包括将正确的数据装载到数据仓库中 还需要将 数据源中的错误数据进行修正 这称为逆向数据清理 b a c k f l o wo fc l e a n e d d a t a r a d 0 0 0 提高逆向数据清理的执行效率同时也就提高了e t l 过程的执行 效率 本文围绕以下三点展开研究工作 1 建立便于修改的e t l 过程描述模型 2 降低增量e t l 过程的设计代价同时保证其执行效率 3 提高逆向数据清理的执行效率 1 2 相关研究 e t l 的研究主要包括e t l 过程的描述 数据清理 数据转换等 而与本文 工作相关的研究 除了与e t l 直接相关的研究外 还包括物化视图增量维护和 第一一章前言 数据血统查询 本节根据需要解决的三个问题 分别进行相关研究的介绍 1 2 1e t l 过程的描述 目前对于e t l 过程的描述有两种观点 一种观点认为数据仓库是基于数据 源建立的物化视图 而e t l 过程是用于维护物化视图的过程 a a s y 9 7 a b b r 0 0 将e t l 过程视为物化视图维护过程的好处是可以直接使用 d b m s 来实现e t l 过程 而且物化视图维护方面的研究已经非常成熟 这些结 果可以借鉴用于e t l 目前许多e t l 工具都基于这一观点设计 如 d a t a t r a n s f o r m a t i o n s e r v i c e m i c r o s o f l d a t a s t a g e i n f o r m i x a r d e n t e x t r a c t e t i 等 但是e t l 过程需要处理异构数据的集成 同时还要对数据进行清理 这是 关系模型无法处理的 因此这些e t l 工具只能提供有限的数据清理支持 另一种观点则认为既然数据清理需要指定清理动作 而增量e t l 过程的执行 需要指定执行的时问 应该使用工作流 w o r k f l o w s c h a 9 8 来描述增量e t l 过 程 如文献 b f m 9 9 c g l n 9 8 c g l n 9 9 v s s 0 2 其中文献 b f m 9 9 最大的贡 献是对全量e l t 过程 文中称为d a t al o a d i n g 增量e t l 过程 文中称为d a t a r e f r e s h m e n t 与视图维护进行了区分 使用工作流模型的优点是能较好的描述 增量e t l 过程 而缺点是无法利用关系模型中对于视图维护方面已有的研究结 果 目前利用工作流观点设计的商用e t l 工具还没有出现 只存在一些测试原 型 本文工作基于前一种观点 这方面研究中最大的问题是如何将数据转换 数据清理于关系模型进行结合 对于数据转换和数据清理有如下的相关研究 数据转换 数据转换是e t l 过程中需要完成的一个步骤 但是数据转换也可用于其它 方面 如数据迁移 优化查询 数据模型转换 w e b 用户的数据定制 企业范 围的数据集成等 用于转换的数据模型包括关系数据模型 面向对象模型 x m l 模型等 目前的研究都是针对某个问题或特定数据模型的 并没有通用的解决 方法 代表性的成果有 使用中间件降低需要的数据转换类型 a b c l 9 9 h m n r 9 9 对于n 种数 据模型 如果针对每一对数据模型都设计相应的转换 则需要n n 1 种转换 而使用中间件 则最多只需要n 种转换 当然相应的转换 效率会有所降低 提供元数据转换和管理来保证转换后的数据在意义上不会改变 b e b e 9 9 c j l s 9 9 数据通过转换从一种模式转为另一种模式 为了正 确理解转换后数据的意义 需要将元数据随数据一起转换 同时定义的 2 第一章前言 转换过程也是一种元数据 需要管理起来 提供用于描述转换过程的语言来描述数据转换过程 a b c l 9 9 d a v l 9 9 转换过程最重要的就是如何描述转换过程 一个合理的语 言可以满足大部分的转换要求 数据清理 数据清理用于检测和消除数据的错误和不一致 以提高数据质量 其中一 个研究方向集中于各类的清理算法 如统计方法 模式匹配 b l n 8 6 m i z 0 9 8 聚类方法 数据挖掘技术 s o n 9 5 s r a 9 9 5 1 等 另外有大量研究集中于重复数 据的检测与消除 如 g f s s 0 0 a g f s s 0 0 b l l l k 9 9 m o e l 9 6 m o n 9 0 0 目前 这方面的研究主要集中于w e b 信息这类自由格式数据的清理方法上面 如从自 由格式的数据中抽取关键信息的方法 b d s o o i 字符串数据的模糊匹配 k m s 0 4 1 等 另一个研究方向是将s q l 进行扩充 使其可以描述数据清理 c o h e 9 8 1 l s s 9 9 g f s 0 1 文献 r a d 0 0 0 对数据仓库环境下的数据清理问题作了总结和 分类 将数据清理问题分为单源问题和多源问题 其中单源数据清理问题又被 细分为属性 a t t r i b u t e 记录 r e c o r d 记录类型 r e c o r dt y p e 和源 s o u r c e 四类 1 2 3 降低e t l 过程设计代价 e t l 过程划分为两种类型 全量e t l 过程和增量e t l 过程 全量e t l 过 程一般用于数据仓库的初始化 而增量e t l 过程则用于数据仓库的增量维护 相对于全量e t l 过程而言 增量e t l 过程设计时要复杂的多 基于数据仓库 是物化视图集合的观点 增量e t l 过程是物化视图的增量维护过程 则可以利 用物化视图增量维护的方法和全量e t l 过程来自动生成增量e t l 过程 从而 降低设计代价 物化视图增量维护方面的研究包括了各类关系运算上面的增量维护方法 投影运算和并运算的增量维护可以用相同方法实现 由于可能有多条输入 元组对应 条输出元组 在输入部分删除一条记录后 必须查询输入的全量关 系以判断是否还有其它元组在输出关系上产生相同的元组 为了解决这个问题 引入了包语义的概念 a b b r 0 0 1 即允许在输出关系中包含多条相同的元组 另 一种解决的方法是借用聚合运算中的计数方法 m u s h 0 0 即在输出关系上增加 一个属性用于对相应的输入元组进行计数 利用这两种方法只需要增量信息就 可以实现对输出关系的增量维护 这种不需要输入关系的全量数据就可以实现 的增量维护称为自维护 b l w 8 6 1 联接运算的增量维护一般要用到基本关系的全量数据 但是当基本关系增 第一章前言 量只包含删除和更新时可以实现自维护 g u m u 9 5 文献 g j m 9 4 讨论了外联接 的增量维护问题 在这种情况下必须要考虑空值的情况 聚合运算的情况最复杂 其增量维护的实现方式与具体的聚合公式有关 计数运算与求和运算可以实现自维护 而要实现求平均值运算的自维护 需要 增加一个用于计数的属性 p s c p 0 2 1 对于求最大值和最小值运算 为了实现增 量维护对基本关系的全量查询是不可避免的 但是可以通过一些手段来减少对 基本关系的访问次数 y y y x 0 3 这方面的进一步研究则考虑多个关系运算组合情况下的增量维护方法 如 s p j 选择 投影 联接 视图上的增量维护问题 b l w 8 6 以及a s p j 聚合 选择 投影 联接 视图上的增量维护问题 c u w i 0 0 1 这方面的研究还包括视 图规范化 只有将各种视图规范化为某些关系运算的特定组合 才可以给出相 应的增量维护公式 物化视图增量维护的另一个研究方向则是如何选择辅助视图进行物化以提 高视图维护的效率 g u p 9 7 这方面的研究还包括判断输入关系上的插入增量是 否为非相关更新 从而降低更新代价 b l w 8 6 1 但是己有的研究中未见差运算物化视图的增量维护方面的研究 1 2 4 提高逆向数据清理效率 数据清理用于找出错误数据并进行处理 以保证输入到数据仓库的数据的 正确性 但是无法对数据源中相应的错误数据进行修正 这种根据数据清理中 的错误数据修改数据源中相应的错误数据的过程 这被称为逆向数据清理 b a c k f l o wo f c l e a n e d d a t a r a d 0 0 0 在关系模型中有一种相似的查询 称为 数据血统查询 可以用于逆向数据清理中的错误数据逆向查询的步骤 数据血统查询是作用于物化视图上的一类特殊查询 根据物化视图上的元 组得到基本关系中对该元组有贡献的所有元组的集合 数据血统查询最早的提出是为了解决 视图更新问题 即在物化视图产生 更新时 如何对基本关系进行相应的更新 文献 s t o n 7 5 中给出了一个在s p j 选 择 投影 联接 视图中实现该类更新的算法 这方面的研究还包括如下内容 文献 h q g w 9 3 中使用元数据和注释来是数 据血统查询 该方法适用于结构级 s c h e m a l e v e l 数据血统查询 而文献 w o s t 9 7 则给出了一个可用于实例级 i n s t a n c e 1 e v e l 数据血统查询的框架 文献 f j s 9 7 给出一种方法 利用统计学方法和约束条件 从汇总数据恢复基本关系中的数 据 最近的工作则是y i n g w e ic u i 等人对于数据血统查询方面进行的深入研究 4 第一章前言 考虑了选择 投影 联接 聚合 并 差运算同时存在的情况下 数据血统查 询的实现 c u w i 9 9 c w w o o c u w i 0 1 c u w i 0 0 文献 c u w i 9 9 考虑了a s p j 聚合 选择 投影 联接 视图上的数据血统查询问题 文献 c u w i 0 0 考虑 了如何增加辅助视图以提高数据血统查询效率以及物化视图维护效率 文献 c w w o o 贝u 是考虑了选择 投影 联接 聚合 并 差运算都存在情况下的数 据血统查询 作者首先将其进行规范化 使得整个视图定义被分为多个片段 每个片段是a u s p j 片段或d 片段 其中a u s p j 片段中包括选择 投影 联接 聚合 并运行并严格按照a u 死一俨 刚i 晚序排列 d 片段则包括单个差运 算 其后递归的对每个片段执行数据血统查询 最终得到查询结果 文献 c u w i o h 贝i 考虑了更一般的数据集成情况 它首先将数据映射分为三种情况 即d i s p a t c h e r a g g r e g a t e r 和b l a c k b o x 其中d i s p a t c h e r 是一到多的映射 a g g r e g a t e r 则是多到一的映射 而不属于以上两种情况的映射则称为b l a c k b o x 之后根据 这三种分类将整个视图定义分解为多个片段 每个片段是其中的一种映射 然 后递归的对每个片段实现数据血统查询 1 3 本文工作 本文的研究工作基于将e t l 过程视为视图维护过程的观点 同时为了解决 视图维护过程无法处理异构数据集成和数据清理情况 对关系模型进行了扩展 本文研究的目的是降低e t l 过程设计 维护代价以及提高e t l 过程执行效率 本文的工作包括如下内容 1 3 1e t l 表示逻辑 在将数据仓库视为物化视图集合的观点中 全量e t l 过程是数据仓库中物 化视图的定义 可以用查询树来描述 但是e t l 过程与数据清理紧密相关 同 时数据源会存在异构数据 关系模型无法描述这两种情况 为了解决异构数据 集成的问题 在查询树中引入了特殊转换节点 用于将数据从其它数据模型转 换到关系模型上 为了解决数据清理问题 首先对数据清理的分类进行了研究 最终将数据清理归结为单个关系上的四类约束 为了在查询树中加入这些约束 在查询树中引入了关系节点 为了减少查询树上的关系运算节点 将关系运算 按照差 聚合 并 联接的顺序进行组合 同时将处于聚合运算到子关系节点 问任意位置的选择 投影也组合进来共同组成关系代数转换节点 最终得到用 于描述全量e t l 过程的e t l 过程树 第一章前言 1 3 2 差运算物化视图的增量维护 以往物化视图增量维护的研究集中在视图定义包含选择 投影 联接和聚 合运算的情况 未见对包括差运算情况下的讨论 而在e t l 过程中经常会用差 运算剔除不需要的数据 比如某些数据已经在另一个e t l 过程中进行了处理 这是与数据仓库环境下物化视图维护不同的地方 因此对差运算物化视图增量 维护进行了研究 给出了s r a 和b r a 两种增量维护方法 并讨论了输入关系 上增量的大小对这两种方法执行效率的影响 其结论是 当增量与全量相比是 小量时 s r a 方法有更好的执行效率 同时还考虑了差运算4 一口满足b c a 时 的增量维护情况 文中证明了在这种情况下差运算物化视图满足自维护定义 并给出了增量维护公式 1 3 3 自动产生增量e t l 过程 用于描述e t l 过程的e t l 过程树是基于关系模型的扩展 因此可以利用物 化视图增量维护方法 根据全量e t l 过程自动产生增量e t l 过程 本文首先对e t l 过程树中的关系代数转换节点进行了规范化 将其规范化 为d 片段和a u s p j 片段的组合 一个关系代数转换节点最多包含一个d 片段 和两个a u s p j 片段 然后给出了d 片段和a u s p j 片段的增量维护方法 特殊 转换节点上的增量维护方法 以及具有约束条件的关系节点上物化视图选择方 法 最终给出了根据全量e t l 过程自动产生增量e t l 过程的m c c i 算法 1 3 4 增量e t l 过程上的错误数据逆向查询 已有的数据血统查询是对全量数据上的查询 增量e t l 过程中错误数据逆 向查询有其特殊性 只需要找出相应的错误数据 不需要得到所有对查询目标 有贡献的数据集 增量e t l 过程中错误数据一般只存在于插入增量中 因此本 文对原有的数据血统查询算法进行了修改 文中首先对文献 c w w 0 0 给出的各 类关系运算的逆运算进行了改进 使其适用于插入增量上的逆向查询 然后给 出了a u s p j 片段在增量上的逆向查询公式 最后给出了d p t i 算法 该算法只 在增量上对错误数据进行逆向查询 从而提高了查询效率 同时文中还给出了 两种提高查询效率的优化方法 首先定义了绑定属性 它是由查询目标中的元 组直接确定其取值的属性 同时讨论了绑定属性向叶节点方向传递的方法 然 后根据传递后的绑定属性 给出了给出两种优化方法 利用绑定属性直接计算 需要的查询结果和利用绑定属性消除选择条件 这两种优化方法同样适用一般 情况下的数据血统查询 6 第一章前言 1 4 本文结构 本文共包括六章 具体内容如下 第一章序论 回顾了e t l 方面的研究 同是也简单介绍了与本文工作相关 的已有研究内容 并对本文的工作内容进行了介绍 第二章e t l 表示逻辑 首先将数据清理归结为单个关系上的四类约束 同 时引入特殊转换用于处理异构数据的转换 之后将它们与关系模型中的查询树 相结合 最终给出用于描述全量e t l 过程的e t l 过程树 第三章物化视图的增量维护 重点研究了以往未被研究的差运算物化视图 增量维护问题 结合已有a u s p j 视图增量维护方面的研究结果 可以解决关系 模型中一般性的物化视图增量维护问题 第四章自动产生增量e t l 过程 首先根据对e t l 过程树中关系代数转换 节点进行规范化 在此基础上 给出了根据全量e t l 过程自动产生增量e t l 过程的m c c i 算法 第五章e t l 过程中错误数据的逆向查询 针对已有数据血统查询算法只能 查询全量数据的缺点进行改进 提出了适用于增量e t l 过程的错误数据逆向查 询算法 同时提出了提高逆向查询效率的两个优化方法 该方法对于一般的数 据血统查询同样有效 第六章e t lt 具的实现 介绍了根据本文第二 三 四章内容实现的一个 e t l 工具 该工具已于2 0 0 4 年1 2 月通过8 6 3 专家组验收 8 6 3 项目 2 0 0 2 a a 4 2 3 4 3 0 的六个子项目之一 结论与展望 对本文的研究工作进行了总结 并提出进一步工作的展望 第二章e t l 表示逻辑 第二章e t l 表示逻辑 基于将数据仓库视为物化视图集合的观点 全黄e t l 过程是数据仓库中物 化视图的定义 而增量e t l 过程则用于维护数据仓库中的物化视图 视图维护 方面的研究已有较长的历史 有很多的研究结果 可以用于根据视图定义得到 物化视图增量维护过程 但是在执行e t l 过程时 由于数据源的多样性 需要 实现某些异构数据到关系数据的转换 这些特殊转换是关系模型无法处理的 同时在执行e t l 过程时 由于数据源中可能存在的错误 e t l 过程中的数据清 理是不能缺少的 而关系模型同样无法处理 本章的工作给出了一个模型 将 特殊转换 数据清理与关系模型结合起来 用于描述完整的全量e t l 过程 这 一模型称为e t l 过程树 2 1 基本概念 2 1 1e t l 过程 把数据从数据源装入数据仓库的过程被称为e t l e x t r a c t t r a n s f o r m l o a d 过程 c h a d 9 7 即数据的抽取 转换和装载过程 如果将数据仓库看作是 根据数据源建立的物化视图的集合 则全量e t l 过程可以认为是相应的视图定 义 从上面e t l 过程的定义中可以看出 它并不包括数据清理 事实上在一般情 况下提到e t l 过程时 默认都认为其不包括数据清理 为了与本文中包括数据 清理的e t l 过程进行区别 给出如下定义 定义2 1 基本e t l 过程 在不考虑数据清理情况下设计的e t l 过程 定义2 2 扩展t t l 过程 加上数据清理后的e t l 过程 以使e t l 过程满足数据 仓库对数据正确性的需要 2 1 2 数据转换 数据转换并不是e t l 过程所特有 它还可用于数据迁移 优化查询 数据模 型转换 w e b 用户的数据定制 企业范围的数据集成等 a c m 9 7 b d h s 9 6 c m h l 9 4 c d s s 9 8 用于转换的数据模型包括关系数据模型 面向对象模型 x m l 模型等 并且随着时间的推移还会增加 这促进了数据转换研究方面的持 续发展 包括各数据模型间的映射问题 用于描述映射语言的选择 转换执行时 的执行效率等 目前在数据转换方面有大量的研究 也有相应的商业工具出现 糟 第 章e t l 表示逻辑 但都是针对某个问题或特定数据模型的 并没有通用的解决方法 虽然如此 但 是在数据转换方法仍然有些基本规则可以遵循 使用中间件 m i d d l e w a r e 对于不同数据模型之间转换 普遍认为使用中 间件是比较合适 对于n 种数据模型 如果针对每一对数据模型都设计相应的 转换 则需要n x n 1 种转换 而使用中间件 则最多只需要n 种转换 当然 相应的转换效率会有所降低 文献 a b c l 9 9 致力于解决异构数据源的数据转换 他们给出一个中间件上的数据模型用于实现各类数据源到该数据模型的映射 同 时给出了对应该中间件数据模型一种声明语言 用于在该数据模型的基础上声明 转换过程 同时文中还讨论了某些转换任务的自动化问题 文献 h m n r 9 9 1 认为 转换引擎应该使用基于数据库的中间件系统 至少中间件上的转换部分应该提供 与数据库相似的特性 使得它除了对异构数据的转换支持为 在数据源缺乏对查 询有效支持的情况下 由中问件提供对相应数据查询的有效支持 提供元数据转换和管理 l r 0 9 6 m i z 0 9 8 同样的数据可能有不同的意思 比如同样是数字l o 可以是年龄 可以是收入 也可以是某种商品的数量 这 种赋予数据以实际意义的数据被称为元数据 当数据通过转换从一种模式转为另 一种模式 为了正确理解转换后数据的意义 需要将元数据随数据一起转换 以 e t l 过程为例 在进行e t l 过程设计时 已经实现了将元数据从数据源到数据 目标的转换 同时设计的e t l 过程本身也是元数据 它描述了数据如何从数据 源转换到数据目标 这些信息也应该管理起来 因此转换过程还要提供对转换元 数据的管理 文献 b e b e 9 9 给出了与m i c r o s o f ts q ls e r v e r7 0 的数据库相配套的 用于数据和元数据转换的工具 同时文献还描述了用于管理元数据的称为 m i c r o s o f tr e p o s i t o r y 的知识库中的功能 比如数据转换服务可以帮助用户改进用 于给数据仓库装载数据的程序 文献 o l s 9 9 描述了用于o m e l e s ii n t e r m e d i a 的 管理和转换元数据的工具 称为o r a c l em e d i a a n n o t a t o r 它自动从多媒体对象中 抽取元数据并转换为合理的注释 用于简化多媒体对象上的索引和查询 提供用于描述转换过程的语言 转换过程最重要的就是如何描述转换过程 一个合理的语言可以满足大部分的转换要求 如文献 a b c l 9 9 给出中间件的数据 模型的同时也给出了相应的描述转换过程的语言 文献 d a v l 9 9 1 给出了一种称 为w o l 的语言 它用于描述包括复杂类型及递归数据结构的转换过程 对于e t l 过程来说 如果将其看作中间件 它所用的数据模型就是关系代数 元数据就是数据源和数据仓库中的关系模式以及e t l 过程 元数据的转换在e t l 过程的设计中完成 而其所用的描述转换过程的语言就是s q l 语言 但是关系 代数无法描述e t l 过程中的某些特殊转换 s q l 语言无法描述数据清理 因此 仍需要对其进行扩展 9 第 章e t l 表示逻辑 2 1 3 数据清理 数据清理同样并非e t l 过程所特有 另一个使用数据清理的例子就是将网上 各种网页集成起来供查询的各类搜索引擎 一般而言在将多种数据源中的数据进 行集成时都会遇到数据清理的问题 以下是数据清理的定义 数据清理 r a d 0 0 0 检测和消除数据的错误和不 致 以提高数据质量 数据清理中如何找出重复数据是最重要的一个研究内容 在不同数据源上 相同内容可能有不同的表现形式 因此如何找出相同数据同时提高执行效率具有 相当挑战性 在数据仓库环境下这一问题又被称为m e r g e p u r g e 问题 h e s t 9 5 文献 h e s t 9 5 考虑的是数据仓库环境下记录级别的重复数据检测问题 文中使用 滑动窗口的方法来进行记录间的比较 同时它使用排序 创建键值 聚类方法等 对数据进行处理以降低比较次数 文献 m o n 9 0 0 也使用滑动窗口的方法来进行记 录级别的重复数据检测 文中给出了一个算法 使用启发式方法降低数据比较的 次数 以上研究主要是提高比较效率 另一个问题就是重复数据匹配问题 匹配 问题最重要的一步就是将数据规范化 比如地址的比较 将其拆分为省 市 县 就便于匹配的检测 文献 b d s 0 0 集中于自由格式数据的拆分问题 将以文本字 符串格式保存的数据拆分为如 城市名称 邮政编码 等字段 但与传统商 业工具中手工编写拆分规则不同的是 文献给出了从训练样本中自动抽取结构信 息的方法 文献 k m s 0 4 致力于字符串数据的模糊匹配问题 在网络信息方法也有 重复数据检测需要 文献 b b d 0 0 对用于检测镜像w e b 站点的一些算法进行了比 较 这些方法在h t m l 文档集合上进行重复检测 可以用于加速搜索引擎的效 率 建立w e b 缓存等 数据清理本身相当复杂 大量研究针对特定应用 一些文献进行了相应的总 结 文献 m a m a 0 0 对数据清理使用的各种方法进行总结 包括统计方法 模式 匹配 聚类方法 数据挖掘技术等 文献 r a d 0 0 0 对数据仓库环境下的数据清理 问题进行了全面的总结 并对数据清理问题进行了分类 e t l 过程中的数据清理问题针对于数据仓库环境 因此文献 r a d 0 0 0 的工作 对本文的工作很有帮助 本章中对数据清理的讨论以此为基础 2 2 基本e t l 过程与数据清理的区别 以往的研究中 数据清理作为一个独立的主题进行研究 因此以往文献中并 没有对数据清理与数据转换 本文中考虑的是e t l 过程 之间区别的讨论 众 所周知两者对数据的处理是不一样的 但除此之外 对于e t l 过程来说 当数 据源与数据目标确定后 基本e t l 过程就确定了 而对于数据清理来说 它需 1 0 第二章e t l 表示逻辑 要随着数据源质量的改变而进行修改 这是两者的另一个不同点 这意味着在扩 展e t l 过程的后期维护中 其修改的重点是数据清理规则 也就要求在设计扩 展e t l 过程时就要将两者区分开 数据清理是为了检测和消除数据的错误和不一致 以提高数据质量 而基本 e t l 过程则要抽取合适数据进行转换以满足数据仓库的需求 两者功能上有重叠 的地方 即消除不需要的数据 因此用s q l 语句进行描述时 两者在某些情况 下较难进行区分 如下例所示 例2 1 基本e t l 过程与数据清在s q l 语句中的描述 考虑一个数据源中有一个名为c u s t o m e r i 的关系 用于保存客户的信息 包括如下属性 i d n a m e b i r t h y e a ra g e a d d r e s s 其中的a g e 属性表示年龄 现在数据仓库中需要保存的是所有年龄大于6 0 的客户 于是有如下的s q l 语句 s e l e c t f r o mc u s t d m e r lw h e r ea g e 6 0 之后发现客户的年龄有超过1 2 0 的情况 这可能存在输入错误 因此增加数 据清理规则后的s q l 语句变为 s e l e c t f r o m c u s t d m e r lw h e r e a g e 6 0 a n d a g e 1 2 0口 显然 在上面的例子中 无法单从w h e r e
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高考送别诗歌题库及答案
- 高职语文试卷及答案
- 建筑知识基础试题及答案
- 农发行内江市东兴区2025秋招信息科技岗笔试题及答案
- 语文专业高考真题及答案
- 中专税务基础试题及答案
- 基础写作试题及答案文库
- 基础英语三试题及答案
- 消防工程师真题及答案
- 济宁学院入学教育考试试题及答案
- 地铁站内二次结构支模工程及支撑体系施工工艺技术
- 常见业务场景网络安全建设VISIO图合集(27个类型)v2023
- 新能源发电技术 电子课件 2.5 可控核聚变及其未来利用方式
- 移动互联网时代的信息安全与防护学习通超星期末考试答案章节答案2024年
- 体育与健康-《立定跳远》教学设计
- 人工智能训练师理论知识考核要素细目表一级
- 加油加气站 反恐防范重点目标档案 范例2024
- 店面漏水赔偿申请书
- ASME-第九卷焊接和钎焊评定标准-资料
- 国家机关事业单位工作人员受到行政刑事处罚工资处理意见
- 《幕墙工程UHPC单元体幕墙施工专项方案》
评论
0/150
提交评论