万字详解ETL和数仓建模

万字详解ETL和数仓建模,第1张

ETL是数据抽取(Extract)、转换(Transform)、加载(Load )的简写,它是将OLTP系统中的数据经过抽取,并将不同数据源的数据进行转换、整合,得出一致性的数据,然后加载到数据仓库中。简而言之ETL是完成从 OLTP系统到OLAP系统的过程

数据仓库(Data Warehouse DW)是基于OLTP系统的数据源,为了便于多维分析和 多角度展现将其数据按特定的模式进行存储而建立的关系型数据库,它不同于多维数据库,数据仓库中的数据是细节的,集成的,数据仓库是面向主题的,是以 OLAP系统为分析目的。它包括星型架构与雪花型架构,其中星型架构中间为事实表,四周为维度表, 类似星星;雪花型架构中间为事实表,两边的维度表可以再有其关联子表,而在星型中只允许一张表作为维度表与事实表关联,雪花型一维度可以有多张表,而星型 不可以。考虑到效率时,星型聚合快,效率高,不过雪花型结构明确,便于与OLTP系统交互。在实际项目中,我们将综合运用星型架构与雪花型架构。

即 确定数据分析或前端展现的某一方面的分析主题,例如我们分析某年某月某一地区的啤酒销售情况,就是一个主题。主题要体现某一方面的各分析角度(维度)和统 计数值型数据(量度),确定主题时要综合考虑,一个主题在数据仓库中即为一个数据集市,数据集市体现了某一方面的信息,多个数据集市构成了数据仓库。

在 确定了主题以后,我们将考虑要分析的技术指标,诸如年销售额此类,一般为数值型数据,或者将该数据汇总,或者将该数据取次数,独立次数或取最大最小值 等,这样的数据称之为量度。量度是要统计的指标,必须事先选择恰当,基于不同的量度可以进行复杂关键性能指标(KPI)等的计算。

在 确定了量度之后我们要考虑到该量度的汇总情况和不同维度下量度的聚合情况,考虑到量度的聚合程度不同,我们将采用“最小粒度原则”,即将量度的粒度设置 到最小,例如我们将按照时间对销售额进行汇总,目前的数据最小记录到天,即数据库中记录了每天的交易额,那么我们不能在ETL时将数据进行按月或年汇总, 需要保持到天,以便于后续对天进行分析。而且我们不必担心数据量和数据没有提前汇总带来的问题,因为在后续的建立CUBE时已经将数据提前汇总了。

维 度是要分析的各个角度,例如我们希望按照时间,或者按照地区,或者按照产品进行分析,那么这里的时间、地区、产品就是相应的维度,基于不同的维度我们可 以看到各量度的汇总情况,我们可以基于所有的维度进行交叉分析。这里我们首先要确定维度的层次(Hierarchy)和级别(Level)(图 四:pic4jpg),维度的层次是指该维度的所有级别,包括各级别的属性;维度的级别是指该维度下的成员,例如当建立地区维度时我们将地区维度作为一 个级别,层次为省、市、县三层,考虑到维度表要包含尽量多的信息,所以建立维度时要符合“矮胖原则”,即维度表要尽量宽,尽量包含所有的描述性信息,而不 是统计性的数据信息。

还有一种常见的情况,就是父子型维度,该维度一般用于非叶子节点含有成员等情况,例如公司员工 的维度,在统计员工的工资时,部 门主管的工资不能等于下属成员工资的简单相加,必须对该主管的工资单独统计,然后该主管部门的工资等于下属员工工资加部门主管的工资,那么在建立员工维度 时,我们需要将员工维度建立成父子型维度,这样在统计时,主管的工资会自动加上,避免了都是叶子节点才有数据的情况。

另外,在建立维度表时要充 分使用代理键,代理键是数值型的ID号码,好处是代理键唯一标识了每一维度成员信息,便于区分,更重要的是在聚合时由于数值型匹 配,JOIN效率高,便于聚合,而且代理键对缓慢变化维度有更重要的意义,它起到了标识 历史 数据与新数据的作用,在原数据主键相同的情况下,代理键起到了 对新数据与 历史 数据非常重要的标识作用。

有时我们也会遇到维度缓慢变化的情况,比如增加了新的产品,或者产品的ID号码修改了,或者产品增加了一个新的属性,此时某一维度的成员会随着新的数据的加入而增加新的维度成员,这样我们要考虑到缓慢变化维度的处理,对于缓慢变化维度,有三种情况:

在确定好事实数据和维度后,我们将考虑加载事实表。

在公司的大量数据堆积如山时,我们想看看里面究竟是什么,结果发现里面是一笔笔生产记录,一笔笔交易记录… 那么这些记录是我们将要建立的事实表的原始数据,即关于某一主题的事实记录表。

我 们的做法是将原始表与维度表进行关联,生成事实表(图六:pic6jpg)。注意在关联时有为空的数据时(数据源脏),需要使用外连接,连接后我们将 各维度的代理键取出放于事实表中,事实表除了各维度代理键外,还有各量度数据,这将来自原始表,事实表中将存在维度代理键和各量度,而不应该存在描述性信 息,即符合“瘦高原则”,即要求事实表数据条数尽量多(粒度最小),而描述性信息尽量少。

如果考虑到扩展,可以将事实表加一唯一标识列,以为了以后扩展将该事实作为雪花型维度,不过不需要时一般建议不用这样做。

事 实数据表是数据仓库的核心,需要精心维护,在JOIN后将得到事实数据表,一般记录条数都比较大,我们需要为其设置复合主键和索引,以为了数据的完整性和 基于数据仓库的查询性能优化,事实数据表与维度表一起放于数据仓库中,如果前端需要连接数据仓库进行查询,我们还需要建立一些相关的中间汇总表或物化视图,以方便查询。

在构建数据仓库时,如果数据源位于一服务器上,数据仓库在另一 服务器端,考虑到数据源Server端访问频繁,并且数据量大,需要不断更新,所以可以建立准备区数据库(图七:pic7jpg)。先将数据抽取到准备 区中,然后基于准备区中的数据进行处理,这样处理的好处是防止了在原OLTP系统中中频繁访问,进行数据运算或排序等 *** 作。例如我们可以按照天将数据抽取 到准备区中,基于数据准备区,我们将进行数据的转换,整合,将不同数据源的数据进行一致性处理。数据准备区中将存在原始抽取表,一些转换中间表和临时表以 及ETL日志表等。

时间维度对于某一事实主题来说十分重要,因为不同的时间有不同的统计数据信息,那么按照时间记录 的信息将发挥很重要的作用。在ETL中,时间戳有其特殊的 作用,在上面提到的缓慢变化维度中,我们可以使用时间戳标识维度成员;在记录数据库和数据仓库的 *** 作时,我们也将使用时间戳标识信息,例如在进行数据抽取 时,我们将按照时间戳对OLTP系统中的数据进行抽取,比如在午夜0:00取前一天的数据,我们将按照OLTP系统中的时间戳取GETDATE到 GETDATE减一天,这样得到前一天数据。

在对数据进行处理时,难免会发生数据处理错误,产生出错信息,那么我们 如何获得出错信息并及时修正呢 方法是我们使用一张或多张Log日志表,将出错信息记录下来,在日志表中我们将记录每次抽取的条数,处理成功的条数,处理失败的条数,处理失败的数据,处 理时间等等,这样当数据发生错误时,我们很容易发现问题所在,然后对出错的数据进行修正或重新处理。

在对数据仓库进行 增量更新时必须使用调度(图八:pic8jpg),即对事实数据表进行增量更新处理,在使用调度前要考虑到事实数据量,需要多长时间更 新一次,比如希望按天进行查看,那么我们最好按天进行抽取,如果数据量不大,可以按照月或半年对数据进行更新,如果有缓慢变化维度情况,调度时需要考虑到 维度表更新情况,在更新事实数据表之前要先更新维度表。

调度是数据仓库的关键环节,要考虑缜密,在ETL的流程搭建好后,要定期对其运行,所以 调度是执行ETL流程的关键步骤,每一次调度除了写入Log日志表 的数据处理信息外,还要使用发送Email或报警信息等,这样也方便的技术人员对ETL流程的把握,增强了安全性和数据处理的准确性。

ETL构建数据仓库需要简单的五步,掌握了这五步的方法我们将构建一个强大的数据仓库,不过每一步都有很深的需要研究与挖掘,尤其在实际项目中,我们要综合考虑,例如如果数据源的脏数据很多,在搭建数据仓库之前我们首先要进行数据清洗,以剔除掉不需要的信息和脏数据。

总之,ETL是数据仓库的核心,掌握了ETL构建数据仓库的五步法,就掌握了搭建数据仓库的根本方法。不过,我们不能教条,基于不同的项目,我们还将要进行 具体分析,如父子型维度和缓慢变化维度的运用等。在数据仓库构建中,ETL关系到整个项目的数据质量,所以马虎不得,必须将其摆到重要位置,将ETL这一 大厦根基筑牢。

如果ETL和SQL来说,肯定是SQL效率高的多。但是双方各有优势,先说ETL,ETL主要面向的是建立数据仓库来使用的。ETL更偏向数据清洗,多数据源数据整合,获取增量,转换加载到数据仓库所使用的工具。比如我有两个数据源,一个是数据库的表,另外一个是excel数据,而我需要合并这两个数据,通常这种东西在SQL语句中比较难实现。但是ETL却有很多现成的组件和驱动,几个组件就搞定了。还有比如跨服务器,并且服务器之间不能建立连接的数据源,比如我们公司系统分为一期和二期,存放的数据库是不同的,数据结构也不相同,数据库之间也不能建立连接,这种情况下,ETL就显得尤为重要和突出。通过固定的抽取,转换,加载到数据仓库中,即可很容易实现。

那么SQL呢?SQL事实上只是固定的脚本语言,但是执行效率高,速度快。不过灵活性不高,很难跨服务器整合数据。所以SQL更适合在固定数据库中执行大范围的查询和数据更改,由于脚本语言可以随便编写,所以在固定数据库中能够实现的功能就相当强大,不像ETL中功能只能受组件限制,组件有什么功能,才能实现什么功能。

所以具体我们在什么时候使用ETL和SQL就很明显了,当我们需要多数据源整合建立数据仓库,并进行数据分析的时候,我们使用ETL。如果是固定单一数据库的数据层次处理,我们就使用SQL。当然,ETL也是离不开SQL的。

主要有三大主流工具,分别是Ascential公司的Datastage、Informatica公司的Powercenter、NCR Teradata公司的ETL Automation还有其他开源工具,如PDI(Kettle)等。

DW系统以事实发生数据为基础,自产数据较少。

一个企业往往包含多个业务系统,均可能成为DW数据源。

业务系统数据质量良莠不齐,必须学会去伪存真。

业务系统数据纷繁复杂,要整合进数据模型。

源数据之间关系也纷繁复杂,源数据在加工进DW系统时,有些必须遵照一定的先后次序关系;

流水事件表:此类源表用于记录交易等动作的发生,在源系统中会新增、大部分不会修改和删除,少量表存在删除情况。如定期存款登记簿;

常规状态表:此类源表用于记录数据信息的状态。在源系统中会新增、修改,也存在删除的情况。如客户信息表;

代码参数表:此类源表用于记录源系统中使用到的数据代码和参数;

数据文件大多数以1天为固定的周期从源系统加载到数据仓库。数据文件包含增量,全量以及待删除的增量。

增量数据文件:数据文件的内容为数据表的增量信息,包含表内新增及修改的记录。

全量数据文件:数据文件的内容为数据表的全量信息,包含表内的所有数据。

带删除的增量:数据文件的内容为数据表的增量信息,包含表内新增、修改及删除的记录,通常删除的记录以字段DEL_IND='D'标识该记录。

可划分为: 历史 拉链算法、追加算法(事件表)、Upsert算法(主表)及全删全加算法(参数表);

历史 拉链:根据业务分析要求,对数据变化都要记录,需要基于日期的连续 历史 轨迹;

追加(事件表):根据业务分析要求,对数据变化都要记录,不需要基于日期的连续 历史 轨迹;

Upsert(主表):根据业务分析要求,对数据变化不需要都要记录,当前数据对 历史 数据有影响;

全删全加算法(参数表):根据业务分析要求,对数据变化不需要都要记录,当前数据对 历史 数据无影响;

所谓拉链,就是记录 历史 ,记录一个事务从开始,一直到当前状态的所有变化信息(参数新增开始结束日期);

一般用于事件表,事件之间相对独立,不存在对 历史 信息进行更新;

是update和insert组合体,一般用于对 历史 信息变化不需要进行跟踪保留、只需其最新状态且数据量有一定规模的表,如客户资料表;

一般用于数据量不大的参数表,把 历史 数据全部删除,然后重新全量加载;

历史 拉链,Upsert,Append,全删全加;加载性能:全删全加,Append,Upsert, 历史 拉链;

APPEND算法,常规拉链算法,全量带删除拉链算法;

APPEND算法,MERGE算法,常规拉链算法,基于增量数据的删除拉链算法,基于全量数据的删除拉链算法,经济型常规拉链算法,经济型基于增量数据的删除拉链算法,经济型基于全量数据的删除拉链算法,PK_NOT_IN_APPEND算法,源日期字段自拉链算法;

此算法通常用于流水事件表,适合这类算法的源表在源系统中不会更新和删除,而只会发生一笔添加一笔,所以只需每天将交易日期为当日最新数据取过来直接附加到目标表即可,此类表在近源模型层的字段与技术缓冲层、源系统表基本上完全一致,不会额外增加物理化处理字段,使用时也与源系统表的查询方式相同;

此算法通常用于无删除 *** 作的常规状态表,适合这类算法的源表在源系统中会新增、修改,但不删除,所以需每天获取当日末最新数据(增量或全增量均可),先找出真正的增量数据(新增和修改),用它们将目标表中属性发生修改的开链数据(有效数据)进行关链 *** 作(即END_DT关闭到当前业务日期),然后再将最新的增量数据作为开链数据插入到目标表即可。

此类表再近源模型层比技术缓冲层、源系统的相应表额外增加两个物理化处理字段START_DT(开始日期)和END_DT(结束日期),使用时需要先选定视觉日期,通过START_DT和END_DT去卡视觉日期,即START_DT'视觉日期';

此算法通常用于有删除 *** 作的常规状态类表,并且要求全量的数据文件,用以对比出删除增量;适合这类算法的源表在源系统中会新增,修改,删除,每天将当日末最新全量数据取过来外,分别找出真正的增量数据(新增,修改)和删除增量数据,用它们将目标表中属性发生修改的开链数据(有效数据)进行关链 *** 作(即END_DT关闭到当前业务日期),然后再将最新增量数据中真正的增量及删除数据作为开链数据插入到目标表即可,注意删除记录的删除标志DEL_IND会设置为‘D’;

此类表在近源模型层比技术缓冲层,源系统的相应表额外增加三个物理化处理字段START_DT(开始日期),ENT_DT(结束日期),DEL_IND(删除标准)。使用方式分两类:一时一般查询使用,此时需要先选定视角日期,通过START_DT和END_DT去卡视角日期,即START_DT‘视角日期’,同时加上条件DEL_IND 'D';另一种是下载或获取当日增量数据,此时就是需要START_DT'视角日期' 一个条件即可,不需要加DEL_IND 'D'的条件。

此算法通常用于流水事件表,适合这类算法的源表在源系统中不会更新和删除,而只会发生一笔添加一笔,所以只需每天将交易日期为当日的最新数据取过来直接附加到目标表即可;

通常建一张名为VT_NEW_编号的临时表,用于将各组当日最新数据转换加到VT_NEW_编号后,再一次附加到最终目标表;

此算法通常用于无删除 *** 作的常规状态表,一般是无需保留 历史 而只保留当前最新状态的表,适合这类算法的源表在源系统中会新增,修改,但不删除,所以需获取当日末最新数据(增量或全量均可),用于MERGE IN或UPSERT目标表;为了效率及识别真正增量的要求,通常先识别出真正的增量数据(新增及修改数据),然后再用这些真正的增量数据向目标表进行MERGE INTO *** 作;

通常建两张临时表,一个名为VT_NEW_编号,用于将各组当日最新数据转换加到VT_NEW_编号;另一张名为VT_INC_编号,将VT_NEW_编号与目标表中昨日的数据进行对比后找出真正的增量数据(新增和修改)放入VT_INC_编号,然后再用VT_INC_编号对最终目标表进行MERGE INTO或UPSERT。

此算法通常用于无删除 *** 作的常规状态表,适合这类算法的源表在源系统中会新增、修改,但不删除,所以需每天获取当日末最新数据(增量或全增量均可),先找出真正的增量数据(新增和修改),用它们将目标表中属性发生修改的开链数据(有效数据)进行关链 *** 作(即END_DT关闭到当前业务日期),然后再将最新增量数据作为开链数据插入到目标表即可;

通常建两张临时表,一个名为VT_NEW_编号,用于将各组当日最新数据转换加到VT_NEW_编号;另一张名为VT_INC_编号,将VT_NEW_编号与目标表中昨日的数据进行对比后找出真正的增量数据(新增和修改)放入VT_INC_编号,然后再将最终目标表的开链数据中的PK出现在VT_INT_编号中进行关链处理,然后将VT_INC_编号中的所有数据作为开链数据插入最终目标表即可。

此算法通常用于有删除 *** 作的常规状态表,并且要求删除数据是以DEL_IND='D'删除增量的形式提供;适合这类算法的源表再源系统中会新增、修改、删除,除每天获取当日末最新数据(增量或全量均可)外,还要获取当日删除的数据,根据找出的真正增量数据(新增和修改)以及删除增量数据,用它们将目标表中属性发生修改的开链数据(有效数据)进行关链 *** 作(即END_DT关闭到当前业务时间),然后再将增量(不含删除数据)作为开链数据插入到目标表中即可;

通常建三张临时表,一个名为VT_NEW_编号,用于将各组当日最新数据 (不含删除数据)转换加载到VT_NEW_编号;第二张表名为VT_INC_编号,用VT_NEW_编号与目标表中的昨日的数据进行对比后找出真正的增量数据放入VT_INC_编号;第三张表名为VT_DEL_编号,将删除增量数据转换加载到VT_DEL_编号;最后再将最终目标表的开链数据中PK出现在VT_INC_编号或VT_DEL_编号中的进行关链处理,最后将VT_INC_编号中的所有数据作为开链数据插入最终目标表即可;

此算法通常用于有删除 *** 作的常规状态表,并且要求提供全量数据,用以对比出删除增量;适合这类算法的源表在源系统中会新增、修改、每天将当日末的最新全量数据取过来外,分别找出真正的增量数据(新增、修改)和删除增量数据,用它们将目标表中属性发生修改的开链数据(有效记录)进行关链 *** 作(即END_DT关闭到当前业务时间),然后再将最新数据中真正的增量数据(不含删除数据)作为开链数据插入到目标表即可;

通常建两张临时表,一个名为VT_NEW_编号,用于将各组当日最新全量数据转换到VT_NEW_编号;另一张表名为VT_INC_编号,将VT_NEW_编号与目标表中昨日的数据进行对比后找出真正的增量数据(新增、修改)和删除增量数据放入VT_INC_编号,注意将其中的删除增量数据的END_DT置以最小日期(借用);最后再将最终目标表的开链数据中PK出现再VT_INC_编号或VT_DEL_编号中的进行关链处理,然后将VT_INC_编号中所有的END_DT不等于最小日期数据(非删除数据)作为开链数据插入最终目标表即可;

此算法基本等同与常规拉算法,只是在最后一步只将属性非空即非0的记录才作为开链数据插入目标表;

此算法基本等同于基于增量数据删除拉链算法,只是在最后一步只将属性非空及非0的记录才作为开链数据插入目标表;

此算法基本等同于基于全量数据删除拉链算法,只是在最后一步只将属性非空及非0的记录才作为开链数据插入目标表;

此算法是对每一组只将PK在当前VT_NEW_编号表中未出现的数据再插入VT_NEW_编号表,最后再将PK未出现在目标表中的数据插入目标表,以保证只进那些PK未进过的数据;

此算法是源表中有日期字段标识当前记录的生效日期,本算法通过对同主键记录按这个生效日期排序后,一次首尾相连行形成一条自然拉链的算法

数据采集ETL工具 Elasticsearch-datatran v639 发布。

Elasticsearch-datatran 由 bboss 开源的数据采集同步ETL工具,提供数据采集、数据清洗转换处理和数据入库功能。支持在Elasticsearch、关系数据库(mysql,oracle,db2,sqlserver、达梦等)、Mongodb、HBase、Hive、Kafka、文本文件、SFTP/FTP多种数据源之间进行海量数据采集同步;支持本地/ftp日志文件实时增量采集到kafka/elasticsearch/database;支持根据字段进行数据记录切割;支持根据文件路径信息将不同文件数据写入不同的数据库表。

提供自定义处理采集数据功能,可以按照自己的要求将采集的数据处理到目的地,支持数据来源包括:database,elasticsearch,kafka,mongodb,hbase,file,ftp等,想把采集的数据保存到什么地方,由自己实现CustomOutPut接口处理即可。

Elasticsearch版本兼容性:支持 各种Elasticsearch版本(1x,2x,5x,6x,7x,+)之间相互数据迁移

v639 功能改进

导入微服务容器组件包:由bboss-rt调整为bboss-bootstrap-rt

gradle坐标

group: 'combbossgroups' , name: 'bboss-bootstrap-rt' , version: "585" , transitive: true

maven坐标

bboss数据采集ETL案例大全

>

目的:    在这篇文章中 你会使用设置好的文件配置OWB gR 的环境 你可以创建一个Warehouse Builder 用户然后登录进去 注意 : 这篇文章所使用设置脚本只能用于OWB gR 以前版本教程在OTN上

主题:这篇文章讨论如下专题总览先决条件引用材料Warehouse Builder g 架构和组件建立项目环境介绍OWB程序组组件登录到Design Center总结

总览    在这篇文章中你将会学习到如何执行建立脚本和配置OWB环境 同时也将使用OWB Repository Assistant 来创建用户和登录到你的元数据储存仓库

先决条件    为了成功完成这个指南 你应该执行下面 *** 作 完成安装Oracle Database (Enterprise Edition) g R (patched to for OLAP support) 或者 g R 我们建议你为数据库命名为orcl 否则 你需要将文中的数据库名字用你自己的数据库命名代替 注意: 这篇文章所使用的脚本在OWB g R 和Oracle Database g R 上测试过 你可以选择在Oracle Database g R ( ) 上或者Oracle g R 上运行脚本

为了简化设置过程 我们假设Oracle Database 和 OWB g 安装在同一台机器上 为了这次课程 我们强烈建议你在同一台机器上安装Oracle 和 OWB 注意: 如果你使用OWB g R 和Oracle Database g 要确保OWB 安装在一个空目录中 而不是Oracle Home

完成OWB g R 的安装 注意: OWB 包含以下组件:ETL Core feature: 这是随database standard edition 免费提供的核心功能 核心ETL功能随database license提供大量核心功能Enterprise ETL 选项: Enterprise ETL 选项提供支持大型伸缩和复杂部署功能 一些功能包括Type 和 Type SCD 可传输表空间 交互继承和分析影响 以及自定义对象 Data Quality Option: Data quality 选项是为了支持将数据转换成可信赖数据的基础Connectors : Connectors 允许客户快速连接和转换他们的CRM ERP 应用程序 包括以下一些connectors :SAP Oracle EBusiness Suite Peoplesoft / and Siebel需要更多OWB信息 请阅读Oracle Warehouse Builder User s Guide Product Options and Licensing 一章

参考材料以下是有用的参考资料列表:Oracle Warehouse Builder g Release :Document LibraryOracle Technology Neork(OTN): OWB Collateral LibraryOracle University ( 天课程) Oracle Warehouse Builder g Implementation Part ( 天)Oracle Warehouse Builder g Implementation Part ( 天)

Warehouse Builder g 体系结构和组件Oracle Warehouse Builder 是一个信息集成工具 它将数据转换成高质量的信息 Oracle Database 是OWB 体系结构的中心因为它储存著OWB的资源仓库和OWB产生的代码

下面的这张图说明了OWB的主要组件 Design Center 是用户用来完成designing mapping scheduling and deploying ETL processes 的界面 所有的元数据都是储存在OWB的资源仓库中的 资源仓库是建立在Oracle Database上的 你可以用Repository Browser 去查询资源仓库中的元数据 同样的经过ETL过程加载的目标数据库也是建立在Oracle Database 上的

Design CenterDesign Center提供图形界面来处理ETL过程

Control Center ManagerControl Center Manager 是Design Center 的客户端 Control Center Manager是一个全面的部署控制台让你能够查看和管理部署的方方面面

Target Schema目标数据库是你用来装载数据的 它包括Cube dimensions views 和mappings 目标数据库包括Warehouse Builder 组件比如synonyms 用来帮助ETL 过程连接监控和服务包的资源仓库 资源仓库储存所有的目标数据库信息比如执行和部署的信息 注意 目标数据库不是Warehouse Builder 软件的组件而更多的是Oracle Database的已存在的组件 同样的 你可以关联多个目标数据库到同一个资源仓库里 你可以有 比 或 比多的目标仓库对资源仓库关系

Warehouse Builder Repository资源仓库储存所有的元数据定义包括所有的数据源 目标数据库 ETL过程和设计元数据 除了包含设计元数据之外 资源仓库也包括运行时由Control Center Manager 和 Control Center Service 产生的运行数据作为OWB安装的开始 你会使用Repository Assistant 去创建一个资源仓库 你可以把OWB g资源仓库建立在Oracle Database gR 或者Oracle Database g

About WorkspacesWorkspaces定义了资源仓库 你可以创建一个或多个workspace 每一个workspace负责一组用户和他们相关的项目 一个公共的实践是为开发 测试和产品做单独的workspace 用这个实践后 你可以让你的开发人员连接到开发和测试workspace 但是限制他们连接产品级workspace

Repository BrowserRepository Browser是一个WEB用户界面让你查询资源仓库 你可以查看元数据 创建报表 审计运行 *** 作 和交互式分析影响 (perform lineage and impact ysis) Repository Browser被组织用来查看设计相关的或控制中心相关信息

Control Center ServiceControl Center Service用来注册地点(Location)的组件 它可以部署和执行ETL逻辑比如mappings 和process flows

建立项目环境为了部分填充你的资源仓库 你需要执行以下 *** 作:下载设置脚本如果使用Oracle Database gR 创建OWBSYS 用户并且允许连接Control Center 和 workspaces创建Design Center 用户和资源仓库 运行设置脚本

下载设置脚本 下载owbdemo_files

打开owbdemo_files zip 文件 解压到一个你熟悉的地方 注意 : 如果你解压到 d:\ 应该包括以下一些文件 D:\newowbdemo\create_users sqlD:\newowbdemo\createlocs tclD:\newowbdemo\createprj tclD:\newowbdemo\cube_sales tclD:\newowbdemo\dim_channels tclD:\newowbdemo\dim_customers tclD:\newowbdemo\dim_products tclD:\newowbdemo\dim_promotions tclD:\newowbdemo\dim_times tclD:\newowbdemo\load_channels tclD:\newowbdemo\load_customers tclD:\newowbdemo\load_products tclD:\newowbdemo\load_promotions tclD:\newowbdemo\load_sales tclD:\newowbdemo\loadall tclD:\newowbdemo\loadrolapsales tclD:\newowbdemo\loadsale aps tclD:\newowbdemo\loadxsales tclD:\newowbdemo\owbdemoinit tclD:\newowbdemo\sequences tclD:\newowbdemo\sourcefiles\export csvD:\newowbdemo\sourcefiles\expense_categories csv确保 export csv 文件和 expense_categories csv 文件在newowbdemo 文件夹下的 sourcefiles 子文件夹下

可选择性下载xsales zip 文件注意: 这是一个可选项除非你想做额外的练习

如果使用Oracle Database gR 创建OWBSYS 用户并且允许连接Control Center 和 workspaces注意: 如果你使用Oracle Database g R 你需要执行以下 *** 作 如果你使用Oracle g 跳过这一步

你需要运行一个脚本来创建OWBSYS 资源仓库模式 Oracle g 默认自带的 但是Oracle g R 需要手工运行 这个脚本在 <your OWB home>/OWB/UnifiedRepos/cat_owb sql 注意: 你执行sqlplus 的方法非常重要:不要从 Start > Programs > Oracle Database Home Folder 或者Warehouse Builder folder 相反 应该从 Start > Run > cmd exe 输入路径并回车 你需要确定Warehouse Builder是最前面的路径从而让SQL Plus会话从Warehouse Builder 安装的地方执行起 如果不是的话你需要临时制定path 变量 比如Path = <Warehouse Builder home>\bin 然后用具有sysdba 权限的sys 用户登录 比如 在命令行下输入: sqlplus sys/<sys password> as sysdba作为sysdba连接到SQL Plus 实行以下命令:@<your owb home>/owb/UnifiedRepos/cat_owb sql回车 你需要输入OWBSYS 用户所使用的表空间 强烈建议你使用默认的USERS 表空间 输入users 然后回车

       图

当这条命令成功执行后 将会显示下面这句话 If you are NOT using an OWB installed in the Oracle database home please now run reset_owbcc_home

先前 我们建议安装Warehouse Builder在不同于Oracle Database Home目录的地方 为了确保能在Oracle gR 访问Control Center 运行UnifedRepos/reset_owbcc_home sql 并把Warehouse Builder Home 环境变量传给它 这个脚本需要sys 权限的用户 比如键入如下命令:SQL>@c:\oracle\OWB_HOME_ G\owb\UnifiedRepos\reset_owbcc_home;回车确认 你将会要求输入完整的OWB Control Center 安装目录 先注意以下注释 注意:在后面的例子中我们使用 / 即使是在Windows *** 作系统中 完整的路径一定是大小写敏感的 一定要确认驱动符号是大写的 比如 C 并且后面的文件夹名都是大小写敏感的 比如如下例子:C:/oracle/OWB_home_ g输入回车

如果数据库启用的增强密码选项 那么创建OWBSYS之后 你需要解锁(unlock) OWBSYS帐号和解封(unexpired)它的帐号 用第二个或第三个SQLPLUS命令行来解锁 OWBSYS 并给他一个新的密码 alter user OWBSYS account unlock ;alter user OWBSYS identified by OWBSYS ;上面的解释在OWB G Installation Guide documentation 里面有 在 Hosting the Repository on Oracle Database g R 章节

对于每一个Warehouse Builder 客户端安装都需要能够连接到 gR 的workspaces OWB g 的客户端默认的workspaces是建立在 g Database上的 也就是说 Warehouse Builder repository 是假设安装在Oracle g 上的 为了能够连接 gR 的repository和它的workspaces 修改你机器上的<owb_home>/owb/bin/admin/Preference properties文件 如果这个文件不存在用在同一个目录下的示例文件Preference properties tmp 创建它 在preference properties 文件中 添加REPOS_DB_VERSION_ALLOWED 并将它的值设成Oracle g Oracle g (也许 g已经存在了)

创建Design Center 用户和Repository 当第一次登录到OWB Design Center时 你需要创建一个能够登录的用户 创建一个workspace 一个新的workspaces 用户并且安装Warehouse Builder repository 选择 Start > Programs > {your OWB g client home} > Warehouse Builder > Design Center出现Design Center 的登录画面

        图

如果没有看见workspace Management 按钮 点上面的Show Details 按钮 单击Workspace Management 然后出现Repository Assistant 向导的欢迎环面 点Next

        图

在Database Information 里输入如下信息 Host Name 你的ipPort Number Oracle Service Name orcl (或者你的sid)

            图

点击 Next

在Choose Operation 窗口中 选择 Manage Warehouse Builder workspaces

        图

点击Next

在Choose Workspace Operations 窗口 点击Create a new Warehouse Builder workspace

    图

点击 Next

在New or Existing User 窗口中 单击Create a workspace with a new user as workspace owner

    图

单击 Next

在DBA Information 窗口 输入如下值User Name systemPassword oracle

    图

单击Next

在Workspace Owner (New) 窗口 输入如下值:Workspace Owner s User Name rep_ownerWorkspace Owner s Password rep_ownerWorkspace Owner s Password Confirmation rep_ownerWorkspace Name my_workspace

    图

单击Next

在 OWBSYS Information 窗口 输入如下值 User Name OWBSYSPassword owbsys

    图

单击Next

在Select Tablespaces 窗口 接受所有默认的选项 单击Next

    图

在Select Languages 窗口 接受默认值并单击Next

    图

Workspace Users (可选项) 窗口允许你选择已经存在的数据库用户或新创建一个用户来当 workspace user如果你先前没有指定的workspace owner 那你需要新建一个数据库用户来当workspace user 单击Create New User

        图

在Create New Database User 窗口里 输入如下值:

User Name Rep_userPassword Rep_userRe enter Password Rep_userDBA User Name SYSTEMDBA User Password Oracle (你的system 密码)

    图

Workspace Users (可选项)窗口出现 新的 rep_user 在右边的Selected List 里面

    图

单击Next

在 Summary 窗口中 检查所有的信息然后单击Finish

在Installation Progress窗口出现后 安装 OWBSYS 用户和 repository owner 需要花费大概几分钟的时间

在 Installation Successful 窗口出现后 单击 OK Repository Assistant 窗口会关闭 如果Design Center Logon 窗口还在的话 单击 Cancel 关闭它 在Warehouse Builder Warning 窗口中 单击Yes 退出Warehouse Builder 你等会儿要重新登录

Run the Setup Scripts 在你开始之前 你必须要从下载的文件 owbdemo_files zip文件中运行一些脚本 注意:下面的课程中的目录的屏幕截图中我们假设你使用D:盘 如果你使用的是C:盘 替换相应的位置 用sys登录到SQLPlus 并且运行你下载的 D:\newowbdemo| 文件夹下的create_users sql@d:\newowbdemo\create_users sql;

图 退出 SQLPlus注意: create_users sql 脚本将会创建两个用户: xsales 和 eul_from_owb 如果你打算用 xsales 原数据文件进行可选择的课程 你需要也把下载下来的xsales zip 文件解压出来的xsales dmp 导入到数据库 你可以选择性的导入 xsales 数据 注意:导入xsales dmp 文件是可选择性的除非你想要自己做以下练习 如果你想要导入的话 执行以下命令 <database ORACLE_HOME>\BIN\IMP XSALES/XSALES@<ORCL 或者 你的数据库service namefile=<PAHT>\xsales dmp full=y把其中的<ORACLE_HOME>替换成你自己的oracle database home path 并把文件的位置替换到你解压xsales dmp 文件的位置

现在你需要运行一个 tcl 脚本来预定义OWB Project 首先 你需要编辑owbdemoinit tcl 脚本 它定义了一些变量将会被其他的tcl 脚本调用 owbdemoinit tcl 脚本提供给你这些如下这些变量 编辑这些变量以使它满足你的电脑环境变量设置set owbclient rep_ownerset owbclientpwd rep_ownerset sysuser sysset syspwd oracleset host localhostset port set service orclset project OWB_DEMOset sourcedir d:/newowbdemoset dataspace USERSset indexspace USERSset tempspace TEMPset snapspace USERSset sqlpath d:/oracle/ /db_ /BINset sid orclset workspaceOwner rep_ownerset workspaceName my_workspace你需要设置所有的这些变量 set sqlpath 语句应该指向你的Oracle Database home 目录 注意 这个脚本是运行在默认的tablespace 之上的 我们建议你使用默认的tablespace 如果你需要运行这些脚本在你自己的项目上的话 你需要手工编辑多个这样的脚本

为了运行 tcl 脚本 你需要启动 OWB Plus 环境 有两种方法启动 OWB Plus :在Design Center 里面 你可以从 Windows 菜单选择 OWB Plus 然而 对于这次示例 我们选用其他方式来启动OWB Plus 环境 Start > Programs > {Oracle OWB Gr ClientHome> Warehouse Builder > OWB Plus在 OWB+> 提示符下输入cd 命令进入到你的下载文件解压目录cd d:\\newowbdemo\\在这个命令之后 输入source 命令 第一个source 命令执行 owbdemoinit tcl 脚本 它包含预定义的一些环境变量设置 第二个source 命令执行 loadall tcl 脚本 它会依次加载所有的其他脚本 source owbdemoinit tcl输入回车source loadall tcl输入回车这个脚本应该以一个 Disconnected 结束并且最后回到 OMB+> 提示符环境 这个脚本定义了一部分我们需要创建的OWB_DEMO Project的数据 我们等下会在OWB Project 上工作

介绍OWB 程序组组件     你现在需要检查一下你的OWB 安装组成 选择 Start > Programs > {Oracle – OWB gR clientHome} > Warehouse Builder > Administration 这会显示一些OWB 产品的组件

查看一下如下菜单选项Administration Repository Assistant 用来创建和映射OWB repository 和用户的Start/Stop Control Center Service 用来启动和停止OWB Control CenterDesign Center 主要的客户端 用来定义数据源 目标 ETL mapping 和转换的Documentation 这会把你重定向到OWB 的OTN 上 OMB Plus 用来执行tcl 脚本的环境Repository Browser 用来执行查询和检查repository 设计和control center 元数据的

登入到 Design Center为了启动OWB Design Center 执行以下步骤: 选择 Start > Programs > {Oracle – OWBclientHome} > Warehouse Builder > Design Center Design Center Logon 窗口会出现 输入rep_owner 做用户名和密码 默认的Connection details 选项是选上了的 如果你不能看到Connection details 选项 单击Show Details 输入主机名或者你的电脑名字 port : 选择orcl 作为你的数据库service name 单击OK

Design Center 出现了 Design Center 被分成了三个面板 Project Explorer Connection Explorer 和Global Explorer在Project Explorer 面板里面左边包含两个Project: MY_PROJECT 一个OWB创建时就有的默认的空的项目 另一个是 OWB_DEMO 一个我们刚才用脚本预先定义的项目

一个项目是一个包含设计任务的容器 当你创建了一个项目后 你就可以创建其他的OWB 对象了 Warehouse Builder 包含 wizards object editors property sheets 和 object finding tools 来帮助你设计和实现你的商业智能系统 在Project Explorer 面板导航树下面 展开OWB_DEMO project 一大堆的东西出现在树下面 Database Files Applications Data Profiles 等等 展开Database 节点 你将会看到一堆object types 用来设计你的Warehouse 的 :Oracle databases Non_Oracle databases 和 可传输的模块 (Transportable modules)展开Oracle 节点 你将会看到两个已经预先定义的模块 : SALES_WH 和 XSALES 模块 (Modules) 是用来把逻辑上的原数据库定义或者目标数据库定义分组的

展开SALES_WH 模块 一些对象类型出现在了树下 mappings transformations dimensions cubes tables 等等 你可以展开其中一些节点来看看我们预先用脚本定义了哪些东西

lishixinzhi/Article/program/Oracle/201311/16882

ETL 不是一种材料,它是 Extract、Transform、Load 的缩写,是一种数据处理的方法。

ETL 是用于将源系统数据提取(Extract)到目标系统中进行转换(Transform),最后将转换后的数据载入(Load)目标系统的过程。这个过程有助于从不同来源、不同格式和不同质量的数据中创建高质量、一致性的数据集,以便于分析和报告。

ETL 可以广泛应用于数据仓库、商业智能、数据迁移等领域。通过 ETL,我们可以将来自不同数据库、文件、网络等的数据整合起来,进行清洗、加工和转化,使得数据质量更高、更易于使用。

数据库管理员负责各系统数据的灾备工作,研究事务所的数据和信息安全。下面是我整理的数据库管理员工作的基本职责说明。

数据库管理员工作的基本职责说明1

职责

1、负责数据库管理系统的运维管理,完成数据库安装、监控、备份、测试、恢复等基本工作,从而保证数据库管理系统的稳定性、安全性和高性能;

2、监视监控数据库的警告日志,定期做备份审查、归档和删除;

3、监控数据库的日常会话情况,及时发现异常会话进程并积极采取有效处理措施予以解决,从而避免对业务运营造成影响;

4、监控数据库的碎片和剩余表空间情况,及时掌握表空间的扩展速度以及剩余空间分布情况,根据变化动态调整数据库的存储方案以优化资源使用;若有需要提前做出存储介质扩容的方案规划和未来存储需求计划;

5、关注数据库管理系统SQL Server版本的升级信息和与SQL Server相关的漏洞补丁信息,在测试环境中确认不会对业务运营造成影响的前提下实施生产环境下的SQL Server版本升级和补丁补漏,并对整个升级补漏过程进行监控和日志审查,确认升级补漏真正成功完成;

6、制定数据库备份计划,制定灾难恢复计划中的数据恢复相关要求并定期演练,确保灾难出现时能对数据库数据进行有效恢复;

7、对数据库的备份策略要根据业务要求和实际情况进行更改,对数据库的日常备份作业执行进行监控和状态确认,对数据库的备份数据进行验证和介质存放管理,与数据库的设计厂商保持联络和维持技术沟通;

8、制定数据库用户管理要求,建立数据库底层结果和访问模型,制定数据库性能监控标准和指标;对通过数据库管理系统进行的任何针对数据库对象的更改进行统一管理;

9、使用SQL语句对数据库进行管理维护和性能优化;

10、当发现不同用户需求之间互相抵触进而造成进程死锁时,进行处理的同时协助相关人员协调用户需求,配合应用系统的数据库设计人员对系统资源进行合理分配;

11、负责数据库管理系统的管理用户批准和其对应的管理权限设置,采取措施防止数据库被未经授权的访问和破坏;

12、协助有关部门配合相关岗位完成U9系统的项目实施和应用升级、治木软件系统的项目实施和应用升级;

13、完成信息部经理交代的有关任务,协助公司各部门完成相关的工作;

任职要求

1、本科以上学历,计算机相关专业,具备专业的计算机应用知识,年龄不限,性别不限,有SQL Server认证者(MCSA)优先;

2、熟悉SQL Server数据库平台下的数据备份/数据恢复,了解数据库性能监控和优化,掌握SQL代码编写,对数据库安全性有一定认识,理解数据库设计,理解索引设计、索引维护和查询引擎, 懂得容量监控与规划;

3、思维清晰,具备优秀的沟通理解能力;逻辑推算及动手能力强,有独档一面的工作能力,且能承受较大的工作压力;

数据库管理员工作的基本职责说明2

职责:

1负责数据库的安装配置及升级改造,性能监控及优化,故障诊断和排除,数据迁移,数据库备份、复制、镜像等容灾方案的制定和实施,以及数据库的安全管理、帐户权限管理;

2维护线上业务核心数据库的724安全、稳定运行;

3负责数据库的架构规划、评估、实施,实现高可用、可扩展架构;

4熟悉MySQL的运行机制和体系架构, 精通/熟悉SQL,熟悉数据库设计与优化;

5对数据库新增内容进行数据分析和挖掘;

任职要求:

1熟悉数据库管理工具,如Navicat等轻量化管理工具;

2熟练使用MySql,Oracle等数据库相关工具;

3参与MYSQL脚本管理、SQL Advisor、数据质量管理等工具与平台的开发与实现;

4至少熟悉java或Python中的一种开发语言

数据库管理员工作的基本职责说明3

职责:

1、负责公司数据库日常运行监控、管理和性能分析,并进行故障处理和优化。

2、快速处理解决数据库系统运行中出现的故障和问题,保证业务数据安全、可用;

3、负责Oracle数据库的日常运行维护、备份恢复、升级优化、扩容迁移和安全管理工作;

4、为架构/开发团队提供Oracle数据库相关的技术支持服务,包括对象设计、SQL编写规范制定、指导、审核等;

5、负责Oracle数据库平台架构和高可用方案的规划设计工作,并通过分析业务发展趋势,做出相应的容量规划;

6、负责Oracle数据库的业务数据分析与挖掘、性能分析与系统优化、问题跟踪与管理;

7、负责系统软、硬件的部署、监控以及调优,包括 JVM 的调优、中间件调优、底层硬件设备的优化;

8、撰写并维护工作相关的数据库设计文档;

任职要求:

1、计算机或者相关专业本科毕业,5年以上ORACLE数据库维护和优化经验;

2、有大型在线交易系统和企业应用系统(例如:ERP、SRM、WMS等)数据库规划设计和优化经验;

3、熟练安装搭建数据库服务器及集群系统、双机热备,包括SQL Server和Oracle;

4、精通 Oracle数据库原理和运行机制,具有丰富的管理与调优经验;

5、精通RAC、Data Guard、OGG配置管理以及故障排除;

6、熟悉linux ,AIX环境下数据库运行维护;熟悉VERITAS SF文件系统;

7、精通Oracle数据库11g/12c分库,分表,SQL解析,数据路由等。

8、为人正直,工作责任心强,良好的沟通和为人处事的能力、良好的团队合作精神;

9、持有OCP证书;

10、拥有Ansible、python经验者或拥有OCM等证书者优先考虑。

数据库管理员工作的基本职责说明4

职责:

1、负责公司数据库架构规划、容量规划、系统调优;

2、负责数据库日常运维、故障处理,备份恢复、性能调优及补丁升级等;

3、规划、设计、评审和优化数据库设计方案;

4、配合研发制定数据库技术方案,分库分表策略,数据迁移方案 ;

5、指导开发人员完成数据库建模、数据库索引优化,数据库 *** 作语句优化;

任职要求:

1、计算机相关专业本科及以上学历;

2、五年以上DBA相关经验;

3、精通MySQL数据库的在Linux下的安装布署、开发维护、管理及性能调优;

4、熟悉MySQL存储引擎InnoDB、能够进行SQL语句和读写分离的优化分析/设计,并具有高并发下读写分离维护经验。;

5、熟悉MySQL事务和锁,能进行锁分析和分析优化;

6、熟悉其他至少两种关系型数据库SQL Server/Oracle/Postgresql;

7、熟悉ETL概念及过程,有一定的存储过程或ETL相关的开发经验;

8、熟悉Linux,熟悉脚本编写,有自动化经验;掌握至少一门脚本语言(Shell、Python、Perl);

9、熟悉java开发优先考虑。

10、熟悉NoSql优先考虑。

数据库管理员工作的基本职责说明5

职责:

1、负责系统数据库(Oracle、Mysql为主)的数据库规划、部署、优化、故障排查;日常运维及管理工作;

2、负责数据库的存储规划管理,协助系统规划设计、防火墙等网络安全设备的安装调试、故障排除、安装、配置、升级与迁移;

3、负责公司项目数据备份策略制定、实施等相关信息安全工作;

4、负责制定和实施数据库备份恢复策略;

5、负责数据库监控,性能检查和优化工作;

6、负责诊断、故障检测和解决任何数据库相关的问题,配合其他数据库相关管理和维护工作。

7、配合开发人员及其他项目组开展日常技术支持、故障排查、系统日常维护

任职资格:

1、熟悉数据库结构设计,对系统架构和数据库理论有较好的理解;

2、熟悉Oracle或Mysql数据库体系结构和性能优化;

3、熟悉SQL优化原理,具备较好的SQL优化能力;

4、熟悉一种或者多种主流的UNIX/LINUX系统;

从上面看来你应该是一个做技术的吧,我身边有很多EBS的技术顾问都转走了,或者跳槽了,因为这个太容易接触到天花板了。。。毕竟EBS的技术是成型的平台。。并且EBS也会慢慢淘汰了虽然近几年不会,但这是必然的。。。

ETL现在一直很火,并且未来也是趋势。。。

如果想从事数据库就得做DBA,想做非java技术其实我不太能理解,难道你想做php或net?这两个工资必然不如做JAVA,或者EBS这样的信息系统工资高来着。。。毕竟不是技术大牛。。。

所以做ETL还阔以,做EBS至少你有基础几年内不愁吃饭,而且工资也可观,做数据库的话不知道你基础怎样。。。

Pentaho Data Integration (Kettle)是Pentaho生态系统中默认的ETL工具。通过非常直观的图形化编辑器(Spoon),您可以定义以XML格式储存的流程。在Kettle运行过程中,这些流程会以不同的方法编译。用到的工具包括命令行工具(Pan),小型服务器(Carte),数据库存储库(repository)(Kitchen)或者直接使用IDE(Spoon)。

Talend Open Studio是 Talend 开发的ETL工具——Talend 是一家主营数据集成和数据管理解决方案的企业。Talend 采用用户友好型,综合性很强的IDE(类似于Pentaho Kettle 的 Spoon)来设计不同的流程。这些流程可以在IDE内部测试并编译成Java 代码。您可以随时查看并编辑生成的Java代码,同时实现强大的控制力和灵活性。

两者都非常优秀,都属于用户友好型的交叉平台(基于Java的)工具。它们的主要差异在于Kettle 将 ELT 流程编译为 XML 格式,然而Talend Open Studio 则生成 Java 代码。

易用性:

Talend:有 GUI 图形界面但是以 Eclipse 的插件方式提供。

Kettle:有非常容易使用的 GUI,出现问题可以到社区咨询。

技术支持:

Talend:主要在美国

Kettle:在美国,欧洲(比利时,德国,法国,英国),亚洲(中国,日本,韩国)都可以找到相关技术支持人员。

部署:

Talend:创建 java 或perl 文件,并通过 *** 作系统调度工具来运行

Kettle:可以使用 job 作业方式或 *** 作系统调度,来执行一个转换文件或作业文件,也可以通过集群的方式在多台机器上部署。

速度:

Talend:需要手工调整,对特定数据源有优化知识。

Kettle:比 Talend 快,不过也需要手工调整,对 Oracle 和 PostGre 等数据源做了优化,同时也取决于转换任务的设计。

数据质量:

Talend:在 GUI 里有数据质量特性,可以手工写 SQL 语句。

Kettle:在 GUI 里有数据质量特性,可以手工写 SQL 语句、java脚本、正则表达式来完成数据清洗。

监控:

Talend:有监控和日志工具

Kettle:有监控和日志工具

连接性:

Talend:各种常用数据库,文件,web service。

Kettle:非常广泛的数据库,文件,另外可以通过插件扩展

以上就是关于万字详解ETL和数仓建模全部的内容,包括:万字详解ETL和数仓建模、数据采集 ETL 工具 Elasticsearch-datatran v6.3.9 发布、开始使用OracleWarehouseBuilder11g等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9326502.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存