精华内容
下载资源
问答
  • ETL Automation

    2020-03-26 19:31:24
    // 目录: 第一部分:ETL Automation简介 第二部分:ETL Automation架构 第三部分:ETL Automation环境变量说明 ...第七部分:ETL Automation GUI工具 第八部分:ETL任务调度 第九部分:常见问题...

    //
    目录:
    第一部分:ETL Automation简介
    第二部分:ETL Automation架构
    第三部分:ETL Automation环境变量说明
    第四部分:ETL Automation目录结构说明
    第五部分:ETL Automation服务说明
    第六部分:ETL Automation知识库说明
    第七部分:ETL Automation GUI工具
    第八部分:ETL任务调度
    第九部分:常见问题讨论
    /
    /
    第一部分:ETL Automation简介
    1、Teradata公司开发的ETL流程调度产品(product);
    2、使用Perl程序开发,运行环境需要安装Perl软件及DBI、DBD插件;
    3、C/S服务器架构
    4、ETL Automaiton由以下几部分组成:
    (1)、ETL Automation服务
    (2)、ETL Automation目录架构
    (3)、ETL Automation知识库
    (4)、ETL Automation环境变量
    (5)、ETL Administrator / ETL monitor管理工具(GUI)
    第二部分:ETL Automation架构

    第三部分:ETL Automation环境变量说明
    变量名称

    说明

    举例说明

    AUTO_DB

    ETL知识库名称,默认为ETL

    AUTO_DB=PETL

    AUTO_DSN

    ETL Automation连接数据库的ODBC DSN

    AUTO_DSN=ETLDB

    AUTO_HOME

    ETL主目录路径

    AUTO_HOME=D:\DWETL

    AUTO_JOB_COUNT

    ETL流程调用任务的最大并行数

    AUTO_JOB_COUNT=10

    AUTO_PERL

    Perl的安装路径

    AUTO_PERL=C:\PERL

    AUTO_PRIMARY_SERVER

    ETL Automation的主服务器标识:1-主Server 0-Client

    AUTO_PRIMARY_SERVER=1

    AUTO_SERVER

    ETL服务器名称标识

    AUTO_SERVER=DWLOAD

    AUTO_SERVER_IP

    ETL服务器的IP地址

    AUTO_SERVER_IP=192.168.6.76

    AUTO_SLEEP

    ETL服务轮询的时间间隔

    AUTO_SLEEP=60

    第四部分:ETL Automation目录结构说明
    /ETL (Automation 主目录)
    |—/APP 存放ETL任务脚本。在此目录下先建子系统目录,然后建ETL任务目录
    |—/DATA
    |------/complete 存放已成功执行过的数据. 以系统名称以及日期来建立子目录
    |------/fail
    |---------/bypass 存放不须执行的档案.以系统名称以及日期来建立子目录
    |---------/corrupt 存放大小不符合的档案. 以系统名称以及日期来建立子目录
    |---------/duplicate 存放重复接收的档案. 以系统名称以及日期来建立子目录
    |---------/error 存放执行作业过程中产生错误的档案. 以系统名称以及日期来建立子目录
    |---------/unknown 存放未定义在 ETL Automation 机制中的档案. 以日期来建立子目录
    |------/message 存放要发送讯息通知的控制文件
    |------/process 存放正在执行中的作业所使用的数据文件及控制档
    |------/queue 存放准备要执行的作业所使用的数据文件及控制档
    |------/receive 用来接收各来源系统所传送来的数据文件及控制文件
    |—/LOG 存放 ETL Automation 系统程序及各作业在执行时所产生的记录档案
    |—/bin 存放 ETL Automation 系统程序的执行文件
    |—/etc 存放 ETL Automation 机制的一些设定档案
    |—/lock 存放 ETL Automation 系统程序及各作业在执行时所产生的 lock 档案
    |—/tmp 临时缓冲目录,存放临时文件
    第五部分:ETL Automation服务说明
    服务名称

    说明

    etlagent.exe

    负责执行远程操作的动作。另外该服务对应的日志文件能够提供一定的审

    计功能。

    etlclean.exe

    负责执行数据清除 (House Keeping) 的动作

    etlmaster.exe

    负责处理由 etlrcv.pl 所交付的档案。etlmaster.exe 会找出档案所对应的作业

    并在作业的执行条件满足时呼叫 etlslave_nt.pl 或 etlslave_unix.pl 来执行作业

    etlmsg.exe

    负责发送讯息通知 (Message Notification) 的动作,可选方式为短信或EMAIL

    etlrcv.exe

    负责处理从各来源系统所传送来的档案. 当档案通过检查后, 会将档案交由

    etlmaster.exe来处理

    etlwdog.exe

    在主要服务器(Primary erver) 上是负责接收各次 要服务器 (Secondary

    Server)所传送来的存活封包(Heartbeat Packet) 以判断各服务的状态并 更新

    记录。而在发现有次要服务器未能在一段时间内送来存活封包的话, 则会认

    定此次要服务器 为停止状态, 而会将当时正在此部次要服务器上执行的作

    业的状态设成失败(Failed)。 而在次要服务器(Secondary Server)上则是定时

    发送存活封包(Heartbeat Packet) 至主要服务器 (Primary Server)上以通知目前

    次要服务器的状态

    etlschedule.exe

    负责提交定时任务作业的动作

    1、etlrcv
    
    2、etlmas
    
    3、etlschedule
    

    第六部分:ETL Automation知识库说明
    知识库是ETL Automation最重要的组件之一。
    包括但不限于以下信息存储在ETL知识库中:ETL服务器标识、 ETL任务的定义、任务之间的关系、任务运行状态历史、ETL记录日志、ETL文件接收日志及ETL事件日志等。
    ETL知识库中比较重要的表如下:
    1、ETL服务器配置表:ETL_Server
    2、ETL子系统表:ETL_Sys
    3、任务定义表:ETL_Job、ETL_Job_Source、ETL_Job_TimeWindow;
    4、任务关系表:ETL_Job_Dependency、ETL_Job_Stream、ETL_RelatedJob
    5、任务运行状态历史表:ETL_Job_Status
    6、ETL记录日志表:ETL_Record_Log
    7、ETL文件接收表:ETL_Received_File
    8、ETL事件表:ETL_Event
    第七部分:ETL Automation GUI工具
    ETL Automation GUI工具包括ETL Administrator和ETL Monitor。
    ETLAdmin用来定义并管理在 ETL Automation 中的作业及作业关连性。ETLMonitor用来监看ETL服务器的状态、作业的执行状态及其它异常情况。

    由于GUI工具使用Java语句编写,因此在运行工具之前,必须安装Java的运行环境(Runtime Environment ),需要安装的Java运行环境版本为1.3.1及以上。
    你可以至 Sun 的网站去下载最新的 Java 执行环境版本。
    第八部分:ETL任务调度
    ETL Automation通过控制文件对ETL任务自动调度
    文件命名规则
    作业的脚本文件与控制文件的命名必须与ETL Automation资料库表中的相关定义一致。其对应关系如下表所示:

    文件或目录

    资料库中的对应表和字段

    作业目录名

    ETL_Job.Etl_Job

    作业脚本名

    ETL_Job.Etl_Job

    receive目录下的控制文件名

    ETL_Job_Source.Source

    queue目录下的控制文件名

    ETL_Job_Source. Conv_File_Head

    process目录下的控制文件名

    ETL_Job_Source. Conv_File_Head

    第九部分:常见问题讨论
    1、通过Automation调度作业时,作业为何无法启动?
    ETL Automation的系统程序,以及所有作业脚本在正常执行时,都会在目录HOME/etl/lock.locklock.lockETLMonitorHOME/etl/lock下生成一个.lock文件,因此当重复启动一个系统程序或作业脚本时,都会首先检查到lock目录下已经有相应的.lock文件,这就避免了程序或作业的重复调用。 也可以通过ETL Monitor工具观察到这一错误。 解决方法:将目录HOME/etl/lock下的对应文件清除。
    2、Automation的作业调度性能为何会下降?
    当Automation的receive、queue、process等目录下积压的控制文件过多时,或者资料库表ETL_Job_Queue中存储的记录过多时,etlrcv、etlmas以及etlschedule等进程的执行效率会降低,从而使得Automation对作业的调度能力显著下降。
    例如在EMS项目组,曾出现过作业由pending状态转为running状态耗时45分钟的情况。
    解决方法:加强对Automation目录结构的维护,对运行失败的作业及时进行处理,避免由于作业失败而导致上述目录中的控制文件产生积压。同时要尽量减少资料库表ETL_Job_Queue中的记录数。
    3、有数据文件的作业加载失败后,为何无法重新启动?
    当作业带有需要处理的数据文件时,在读取数据文件之前,Automation会首先将该数据文件的信息存入到资料库表ETL_Received_File中。
    由于数据文件格式错误导致作业失败后,Automation会自动将数据文件移入error目录。之后,当数据文件的格式修改无误,并将数据文件和控制文件重新移入receive目录后,作业仍然无法执行。
    解决方法:将资料库表ETL_Received_File中的对应记录删除。
    4、定时触发的作业突然开始执行,且执行完后还会再次反复执行。
    这是由于从库表ETL_TimeTrigger中直接删除了该作业的定时触发记录,而没有同步更新ETL_Job表中TimeTrigger字段的值。
    Etlschedule进程首先检查ETL_Job表,认为当前作业是时间触发的。随后检查ETL_TimeTrigger表时,无法找到该作业的触发时间,此时默认其为0,而当前时间通常大于等于0,因此系统认为触发条件满足,该作业被不断触发。
    解决方法:更新ETL_JOB表,同时将ETL_Job_Queue中已插入的对应记录删除。并且今后尽量通过GUI工具操作,避免直接对资料库表进行update。

    展开全文
  • ETL Automation 是由 Teradata 公司发布的 ETL 流程调度产品,使用 JAVA 程序开发,支持跨平台部署,安装、维护简单。
  • 主流ETL工具

    2014-12-10 14:26:00
    主流ETL产品: Ascential公司的Datastage(Datastage在2005年被IBM收购)、Informatica公司的Powercenter、 NCR Teradata公司的...ETL工具有: OWB(Oracle Warehouse Builder)、ODI(Oracle Data Integrator)、Inf...
    主流ETL产品:
      Ascential公司的Datastage(Datastage在2005年被IBM收购)、Informatica公司的Powercenter、 NCR Teradata公司的ETL Automation(一套ETL框架、主要关注“抽取”)。
    ETL工具有:
      OWB(Oracle Warehouse Builder)、ODI(Oracle Data Integrator)、Informatic PowerCenter(Informatica公司)、AICloudETL、
    DataStage(Ascential公司)、Repository Explorer、Beeload、Kettle、DataSpider、ETL Automation(NCR Teradata公司)、
    Data Integrator(Business Objects公司)、DecisionStream(Cognos公司)
    展开全文
  • ETL工具Kettle

    2018-06-13 10:10:57
    转载自 https://www.cnblogs.com/SunHuaJ/p/7593239.htmlETL是EXTRACT(抽取)、TRANSFORM(转换)、LOAD(加载)的简称,实现数据从多个异构...当前知道的ETL工具有informatica, datastage,kettle,ETL Automation...

    转载自 https://www.cnblogs.com/SunHuaJ/p/7593239.html


    ETL是EXTRACT(抽取)、TRANSFORM(转换)、LOAD(加载)的简称,实现数据从多个异构数据源加载到数据库或其他目标地址,是数据仓库建设和维护中的重要一环也是工作量较大的一块。当前知道的ETL工具有informatica, datastage,kettle,ETL Automation,sqoop,SSIS等等。这里我们聊聊kettle的学习吧(如果你有一定的kettle使用,推荐看看Pentaho Kettle解决方案,这里用kettle实践kimball的数据仓库理论。)。

     

      内容有:认识kettle、安装kettle、简单入门实例、进阶实例、Linux中kettle部署、kettle发邮件、常见错误

     

      认识kettle

      kettle是纯java开发,开源的etl工具。可以在Linux、windows、unix中运行。有图形界面,也有命令脚本还可以二次开发。(官方社区:http://forums.pentaho.com/;官网wiki:http://wiki.pentaho.com/display/COM/Community+Wiki+Home;源码地址:https://github.com/pentaho/pentaho-kettle)

     

      安装kettle

      1、kettle是基于java开发的,所以需要java环境(下载jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html)

      

      2、kettle使用时,需要访问相关的关系型数据库,则需要下载对应的链接驱动。比如我们访问MySQL,则下载相应的驱动解压后放入kettle文件的lib目录下

      

      3、下载kettle并解压到自定义位置。kettle其实是以前的叫法,现在官方称为:PDI(Pentaho Data Integeration)。在windows中,双击目录中的Spoon.bat启动kettle.

      

     

      简单的kettle实例

       1、新建作业/转换(功能区:文件 --> 新建 --> 作业;新建-->转换)

        一个作业(job,文件以kjb结尾)的主体是转换(transform,以ktr结尾),job主要来设置调度,可以有影子拷贝,任一拷贝信息修改所有拷贝的都被修改;transform做主体的内容,控件名称唯一。

      2、三个控件(start、转换、成功)和流程线(hop);

        start:job开始的地方,可以设置开始的时间、频率、周期等(但要求kettle不能关闭,有点挫)

        转换:后续详解

        成功:job结束

        流程线:关联两个控件(实体),指定数据流。同时还可以设置是否可用、分发模式、错误输出等;添加方式:按住shift进行鼠标拖动

        

      3、转换的工作

        新建的转换:job中需引用该转换文件

        加入我们现在要同步MySQL中的一张表。在转换中要有输入和输出。

        

        > 表输入:先配置链接(完成后测试一下是否OK),再输入查询sql(比如:select id from tab2 limit 10;)

        

        >excel输出。,指定输出路径

        

        > 完成转换的配置后保存,在job中引用保存的文件。我们来跑一下吧~

        

        

        > 完成,结束!

        

         进阶实例:

        百度上看到了一篇关于kettle的作业,但是没有详细的过程。这里以此说明,全图过程如下。

        

        作业说明:生成 100 个随机数,随机数取值于[0,100)之间, 计算小于等于 50 的随机数个数和 大于50 的随机数个 数。 并把这两个统计数字放在数据库表的一行的两列中, 即输出的结果有一行,一行包括两列,每列是一个统 计值。

        第一步:生成随机数(输入-->生成随机数;需要生成100个随机数,右击控件,选择"改变开始开始...数量"为100)

        

        第二步:增加常量(转换-->增加常量;给变量取个名称,类型和值。)

        

        第三步:计算器(转换-->计算器;给出你的计算逻辑和计算出的字段;)

        

        第四步:两个分支,一个输出;一个过滤;输出指定Excel,并执行数据发送模式(√:复制发送模式)

        第五步:设置过滤(流程-->过滤记录);并双击控件填写对应的条件;

        

        第六步:分组(统计-->分组),双击控件后有两个需要关注,一个是分组(相当于group by);一个是聚合(相当于count、sum等函数)

         第七步:记录关联(连接-->记录关联(笛卡尔输出));这是一个join操作,但是没有on条件;但是控件中提供了sql中where条件的刷选

         

        第八步:输出

     

        Linux上部署kettle任务

        kettle的"开始"控件虽然可以进行调度,但要求程序一直运行。在实际工作中通常在windos中测试,放到Linux中以crontab的方式进行调度。在Linux中以kitchen.sh执行job任务,pan.sh执行transform任务;这里我们以上面为实例,如何在Linux中进行部署。

        第一步:通过WinSCP将kettle拷贝到Linux中,在拷贝路径中执行. kitchen.sh ,如果有参考消息输出则没有问题

        

        第二步:对于已在windos中执行成功的地址、文件名、用户等参数进行变量替换。执行export KETTLE_HOME=/home/shj,会生成/home/shj/.kettle目录,通过编辑目录下的kettle.properties文件来设置变量。实例中,我们仅仅需要替换两个输出文件的地址为变量即可。

        

        第三步:修改kettle目录下的.sh文件权限为可执行(chmod a+x  *.sh);并执行文件。

        

        这里说明:/norep:表示不往资源库中写日志,Do not log into the repository

               /file:使用文件,The filename (Job XML) to launch

        第四步:验证结果。

        

     

         kettle中发送邮件

         kettle发送邮件还是比较简单的,我们需要一个邮件发送的控件和对应的账号密码等自有信息

        简单的流程:

        

        需要配置发送邮件控件:

        

        

        这样执行后,邮件就发送出去了。那么如何在kettle生产中利用邮件功能呢?我们可以将kettle的转换信息、统计信息、错误信息以文件的形式放入到指定的位置(或形成指定的参数),使用邮件以附件形式发送这些信息。

        流程:

        

        1、这里我们新增控件:添加文件到结果文件中;配置转换中的输出的文件

        2、发送邮件中我们增加附件的配置,如下图

        

        补充:如果觉得kettle发送的正文信息太多,可以配置邮件信息中,只发送邮件注释(注释信息需要自己写,如果是动态的话需要开发)

        

     

        常见错误

        第一种:Timestamp:Unable to get timestamp from resultset at index 3**,如图。这个错误需要在db链接的选线中设置命令参数zeroDateTimeBehavior(值:convertToNull  )

        

        

        第二种:字段的空被替换成了null值。这是kettle默认的设置,需要我们在kettle.properties中增加设置(KETTLE_EMPTY_STRING_DIFFERS_FROM_NULL=Y)。

        

        补充,在设计流程时我们并不希望出错了作业就停止了,而是继续执行并将错误信息以某种方式反馈出来。这时,我们可以通过“定义错误处理”来实现。

        

        并将错误信息输出,供后续引用。

        

    展开全文
  • 问题:连接超时可能回导致这种情况发生 解决方法: 直接重启ETL服务。 登录到ETL服务文件目录 sh Autostop.sh sh Autostart.sh

    问题:连接超时可能回导致这种情况发生
    错误情况
    解决方法:
    直接重启ETL服务。
    登录到ETL服务文件目录
    sh Autostop.sh
    sh Autostart.sh

    展开全文
  • ETL AUTOMATION进程假死问题进展

    千次阅读 2011-08-09 21:18:16
    使用TERADATA自带的ETL工具ETL AUTOMATION一直有个很头疼的问题,就是进程假死,所有任务都是pending状态,不会变成running,经常早上上班发现一片pending,重启一下服务就正常调度了,一直找不出原因,没办法治根,...
  • ETL工具主流产品

    2014-11-14 12:00:00
    主流ETL产品:Ascential公司的Datastage(Datastage在2005年被IBM收购)、Informatica公司的Powercenter、 NCR Teradata公司的...ETL工具有:OWB(Oracle Warehouse Builder)、ODI(Oracle Data Integrator)、Informa...
  • 三大主流ETL工具选型

    千次阅读 2014-07-10 16:41:35
    三大主流ETL工具选型  公司目前在ETL这个环节上基本处于手工开发的原始阶段,领导已经不满意了,估计以后会选择一种工具进行开发,所以先看一下ETL工具的选型。据说同业使用Datastage的比较多,不过看了这篇文章...
  • ETL工具--kettle篇

    千次阅读 2018-08-24 11:09:03
    ETL是EXTRACT(抽取)、TRANSFORM(转换)、LOAD(加载)的...当前知道的ETL工具有informatica, datastage,kettle,ETL Automation,sqoop,SSIS等等。这里我们聊聊kettle的学习吧(如果你有一定的kettle使用,推荐看...
  • ETL工具-----kettle

    2019-02-15 18:14:24
    一、Kettle简介: ETL是EXTRACT(抽取)、TRANSFORM(转换)、LOAD(加载)的简称,实现数据从多个异构数据源...当前知道的ETL工具有informatica, datastage,kettle,ETL Automation,sqoop,SSIS等等 Kettle是一...
  • 在此,主要列举三种主流ETL产品:Ascential公司的Datastage、Informatica公司的Powercenter、 NCR Teradata公司的ETL Automation ETL(extract,transform and load)产品乍看起来似乎并不起眼,单就此项...
  • ETL是EXTRACT(抽取)、TRANSFORM(转换)、LOAD(加载)的简称,...当前知道的ETL工具有informatica, datastage,kettle,ETL Automation,sqoop,SSIS等等。这里我们聊聊kettle的学习吧(如果你有一定的kettle使用,推...
  • etl产品 etl 卖点

    2018-04-11 17:35:23
    etl产品主流ETL产品:Ascential公司的Datastage(Datastage在2005年被IBM收购)、Informatica公司的Powercenter、 NCR Teradata公司的ETL... ETL工具有:OWB(Oracle Warehouse Builder)、ODI(Oracle Data Integrator...
  • 教程名称:数据抽取转换(ETL)教程大全课程目录:【】2.0数据仓库与ETL技术【】BI项目中ETL设计与思考【】DataStage(ETL)...ETL工具kettle【】ETL数据抽 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
  • 数据仓库ETL算法详解

    2017-11-08 17:38:33
    1. ETL的定义:是数据抽取(Extract...2. 常用的ETL工具:主要有三大主流工具,分别是Ascential公司的Datastage、Informatica公司的Powercenter、NCR Teradata公司的ETL Automation.还有其他开源工具,如PDI(Kettle)等。
  • ETL、BI、MMP数据库

    2018-08-29 11:24:55
    [url=https://blog.csdn.net/wowotuo/article/details/80766422]ETL、BI、MMP数据库[/url] 1、ETF工具: Informatica、Datastage、ODI ,OWB、微软DTS、Beeload、Kettle、久其...Teradata的ETL Automation、Busin...
  • ETL调度原理浅析及最佳实践

    千次阅读 2010-11-17 23:04:58
    ETL 调度原理浅析及最佳实践 前言: 最早的调度应用是 ...NCR ETL Automation 的方式此后一直是业界效仿的原因 (SPSS 的 climentine 严格意义上它讲不再是 etl 调度工具,而是数据挖掘工具 ) ...
  • 合并等使用AXIOM进行各种任务,包括: - 数据刮擦- 数据输入 - 提取,转换和加载任务(ETL) - 建立社交媒体机器人 - 应用程序之间的数据 - 没有API的自动化 - 自动化Web应用程序中的工作流程此扩展可访问Axiom ...
  • ETL工具:IBM Datastage Informatica PowerCenter Teradata ETL Automation OLAP(on-line analytical processing) 微软相关产品:SSAS OLAP——ROLAP——MOLAP 相关(自己找的): OLAP(on-Line ...
  • Kettle下载安装教程

    千次阅读 2019-01-26 15:26:00
    ETL是EXTRACT(抽取)、TRANSFORM(转换)、LOAD(加载)的简称,...当前知道的ETL工具有informatica, datastage,kettle,ETL Automation,sqoop,SSIS等等。这里我们聊聊kettle的学习 一、下载 找到官网下载Kettle...
  • ETL是EXTRACT(抽取)、TRANSFORM(转换)、LOAD(加载)的...当前知道的ETL工具有informatica, datastage,kettle,ETL Automation,sqoop,SSIS等等。这里我们聊聊kettle的学习吧(如果你有一定的kettle使用,推荐看...
  • kettle基础教程

    千次阅读 2018-05-02 10:03:07
    ETL是EXTRACT(抽取)、TRANSFORM(转换)、LOAD(加载)的简称,...当前知道的ETL工具有informatica, datastage,kettle,ETL Automation,sqoop,SSIS等等。这里我们聊聊kettle的学习吧(如果你有一定的kettle使用,推...
  • 数据仓库开发需求

    2018-01-07 23:36:57
    1. 熟悉数据仓库模型,主要的模型有哪些 2. 数据仓库建设, etl搭建,数据维度提取,数据...3. 熟悉etl开发, 掌握其中一种etl工具(kettle, datastage, informatica, automation etc) 4. 数据仓库的日常监控和管理
  • 的发布 全新Neo4j-JDBC驱动3。0 解决了您的许多Neo4j数据集成问题。...你们中的许多人都有各种各样的需求来将Neo4j与其他数据源、商业智能套件、ETL和报告工具以及特定的系统组件集成在一起。 虽然...

空空如也

空空如也

1 2
收藏数 30
精华内容 12
关键字:

etl工具automation