1、Designer:用来建立和编辑DataStage作业和表的定义。Designer中的“Job Sequencer”控制作业的执行,其他作业成功完成(或失败,等)的条件。Administrator:用来执行管理任务,如建立DataStage用户、建立和删除工程并且建立清洗标准。Manager:用来编辑管理用户工程的DataStage资料库。Director:用来验证、时序安排、运行和监测企业版作业。第2章 日常操作2.1 登录客户端2.1.1 登录Datastage Administrator 客户机点击图标选择需要登录的服务器,输入用户名,密码登录进去后点击项目,可进行项目增加,删除,设置项
2、目属性2.1.2 登录Datastage Designer客户机选择需要登录的域,输入用户名,密码,选择需要登录的项目登录成功:2.1.3 登录Datastage Director客户机2.2 启停服务端以dsadm用户进入,执行以下命令:1) Server启动命令:$HOMEDIR/uv admin -start注意:启动前,需要查看端口是否被释放,通过netstat af inet |grep ds查看,如果有连接,则需要等待操作系统自动释放后在启动服务。2) Server停止命令:$HOMEDIR/uv admin /stop停止前最好确保没有Client连接,可以通过onstat a
3、|grep ds查看,是否还存在Client连接,否则要通知相应登录的client端彻底退出。2.3 Job编译登录Datastage Designer客户机,参见,打开欲编译的Job,具体Job编译方法有两种:1)选择菜单栏的【文件】-【编译(M)】,快捷键为F7。2)点击工具栏的编译图标。2.4 Job运行Datastage Job运行有两种方式:一种在Designer中,一种在Director中。1)登录Designer客户机,打开欲运行的Job,选择菜单栏的【文件】-【运行(R)】,快捷键为Ctrl+F5或者点击工具栏的运行图标2)登录Director客户机,选中欲运行的作业,选择菜单
4、栏的【作业(J)】-【立即运行(N)】,或者点击工具栏的立即运行图标2.5 监视作业登录Director客户机,选中欲监视的作业,右键选择【监视】,可以查看作业的运行情况。如下图所示:2.6 查看日志登录Director客户机,选中欲查看日志的作业,右键选择【查看日志】出现:2.7 作业解锁2.7.1 方法如遇到断网等一些情况可能导致作业被某一锁定,从而无法对作业进行修改。解锁方法:在浏览器输入Server端IP地址跟端口,如,出现如下界面:输入用户名,密码,登录后选择【管理】-【会话管理】-【活动会话】,对那个被锁定作业的会话,选择【断开链接】2.7.2 方法1 用管理员用户登录DataSt
5、age Administrator2 打开对应PROJECT的【命令()】3 执行查看Locks4 通过最后一列item id找到被锁的对应的作业名5 执行下面命令解锁 UNLOCK USER Userno ALL其中username 为 所列出的信息中对应的Userno 。2.8 Job导入登录Designer客户机,选择菜单栏的【导入(I)】-【Datastage组件(C)】,选择所需导入的dsx文件,界面如下:2.9 Job导出登录Designer客户机,导出Datastage Job有两种方法:(1)选择菜单栏的【导出(X)】-【Datastage组件(C)】,界面如下:点击添加按钮,
6、选择所需的导出的Datastage Job,在要导出的作业组件一般选择“导出不带可执行文件的作业设计”,在导出到文件中选择本地的保存路径跟文件名。(2)在所需导出的Job上右键单击,在弹出菜单中选择【导出(X)】,在如上界面中的导出到文件选择本地的保存路径跟文件名。2.10 数据库表定义导入datastage【表定义(T)】-【插件元数据定义()】选择表定义所在的数据库,输入用户名,密码选择【导入()】第3章 Datastage配置3.1 常见目录说明1)主机下发数据目录:/appdata/DATA#DATE2)Datastage转码生成公共数据集目录:/appdata/DSDATA/$DAT
7、E/3)DataStage的配置目录,/usr/datastage/InformationServer/Configurations,其下有其配置文件,可以设置运行结点数,Dataset数据文件目录,Dataset日志文件目录。 node node1 fastname T219N2V3 pools resource disk /appdata/DSDATA/DATASET pools resource scratchdisk /appdata/DSDATA/SCRATCH node2Dataset数据文件目录:resource disk Dataset日志文件目录:resource scrat
8、chdisk 4)DataStage的引擎所在目录,/usr/datastage/InformationServer/DSEngine,其下有bin,lib等,其中include里面有个很有用,定了很多错误,遇到错误,可以到文件里面找,不过这里只能找到常见错误,一些unexpected error无法在里面找到错误原因。3.2 DataStage Administrator配置登录Administrator客户机,选择【项目】标签,选择要配置的project,在General-Enviroment中1. 在General类型下: TMPDIR=XXX (将其指向一个相对较大的目录,不填写就是指
9、缺省的/tmp目录,此处需要讨论)。2. 在Parallel类型下: APT_CONFIG_FILE,配置文件及其运行节点数,其配置文件为:/usr/datastage/InformationServer/Configurations/,这里需要检查一下指向的内容是否正确。具体详见中DataStage的配置目录。 APT_STRING_PADCHAR= (缺省值是0x0,我们需要填写一个空格)3. 在Parallel-Operator Specific类型下 APT_COPY_TRANSFORM_OPERATOR设置为True,在做多结点运行时需要设置。4. 在User Defined类型下:
10、 APT_IMPEXP_ALLOW_ZERO_LENGTH_FIXED_NULL设置为1。(如果目前数据统一为定长无分隔符,或者说不要设置定长的Null值,就不需要设置)。第4章 附录:常见问题FAQ4.1 SQL Loader 导入数据时候报错问题描述:通过oracle stage,把文本数据写到数据库时候报错:SQL*Loader-925: Error while uldlpim: OCIStmtExecute;SQL*Loader-2026: the load was aborted because SQL Loader cannot continue.实际上数据是装入成功了。问题解决:
11、这个问题的原因是客户端和服务器端的版本不一致,装了和服务器一样版本的client后就可以了。问题分类:系统环境问题详细描述:ORA_S_CRD_CICIFADR,0: SQL*Loader-925: OCIStmtExecute SQL*Loader-2026: the load was aborted because SQL Loader cannot continue. The call to sqlldr failed; the return code = 256;ORA_S_CRD_CICIFADR,1: SQL*Loader: Release 10.2.0. - Production
12、 on Wed Apr 11 19:31:09 2007Copyright (c) 1982, 2005, Oracle. All rights reserved.Character Set UTF8 specified for all input. File processing option string: FIX 363 Discard File: none specified (Allow all discards)Number to load: ALLNumber to skip: 0Errors allowed: 50Continuation:Path used: Direct -
13、 with parallel option.Table S_CRD_CICIFADR, loaded from every logical record.Insert option in effect for this table: APPEND Column Name Position Len Term Encl Datatype- - - - - -CI_CUST_NO 1:40 40 CHARACTER NULL if 1:40 = BLANKSCIADR_LL 41:46 6 PACKED DECIMAL (10, 0) NULL if 41:46 = 0X000000000000(c
14、haracter )CI_ADDR_COD 47:52 6 CHARACTER NULL if 47:52 = BLANKSCIADR_DB_TIMESTAMP 53:86 34 CHARACTER NULL if 53:86 = BLANKSCI_ADDR 87:246 160 CHARACTER NULL if 87:246 = BLANKSCI_POSTCOD 247:258 12 CHARACTER NULL if 247:258 = BLANKSCI_TEL_NO 259:298 40 CHARACTER NULL if 259:298 = BLANKSFILLER 299:362
15、64 CHARACTER NULL if 299:362 = BLANKSORA-00904:MESSAGE_NUM: invalid identifierTable S_CRD_CICIFADR: 128381 Rows successfully loaded. 0 Rows not loaded due to data errors. 0 Rows not loaded because all WHEN clauses were failed. 0 Rows not loaded because all fields were null.Bind array size not used i
16、n direct path.Column array rows : 5000Stream buffer bytes: 256000Read buffer bytes: 1048576Total logical records skipped:Total logical records read: 128381Total logical records rejected:Total logical records discarded:Total stream buffers loaded by SQL*Loader main thread: 72Total stream buffers load
17、ed by SQL*Loader load thread:Run began on Wed Apr 11 19:Run ended on Wed Apr 11 19:15 2007Elapsed time was: 00:00:CPU time was:4.2 Error calling subroutine:DSR_JOB(Action=5) 无法打开作业,无法建立job 原因是机器系统资源耗尽,提高机器性能或者等到机器空闲时候再登陆。4.3 This item has no design time information打开作业看作业的详细设计,结果报错:this item has no
18、design time information导出作业的时候没有把job design打上勾(见图),打上勾就能看作业的设计了datastage环境导出的时候,得把job design打上勾4.4 Failed to connect to JobMonApp on port 134xx在运行Job时无法显示运行状态(成功的变成绿色、记录条数等都看不见),在日志中提示“Failed to connect to JobMonApp on port 134xx”,或者日志显示Failed to initialize job monitoring。1.在/etc/host里面,是否有localhost
19、,如果没有添加 2. 手工启动/home/ap/dsadm/Ascential/DataStage/PXEngine/java下面的jobmoninit程序。先执行./jobmoninit stop,再./jobmoninit start 注:datastage默认的监控端口是13400和13401,如果被占用会顺序使用134024.5 Transformer 报错:The numer of reject datasets “0” is less than the number of input datasets “1”在transformer中使用到系统的变量,结果报错。系统变量不能直接使用
20、,必须用使用函数 GetEnviroment来导入系统变量datastage问题出问题的作业如下:使用Row Generator生成随机数据,通过transformer传送到Sequential File中,在tranformer中添加一列,如下图所示:该列使用系统级的参数,编译不能通过。如果使用作业级的参数,则可以通过。最后通过使用函数 GetEnviroment(“LoadDate”)4.6 The Connection was refused or the RPC daemon is not running连接datastage工程的时候报错:Faile to connect the h
21、ost:project:UV datastage没有正确启动。 当还有进程与服务器相连的情况下,重新启动datastage服务,就会出现这个问题,因为有进程挂起了。解决方法:1.重启服务器(推荐,比较快)。2.手工杀掉ds相关的进程,然后重新启动datastage服务。3.等待操作系统自动把挂起的进程清除(等待一段时间),然后在重启服务。 建议在执行 uv -admin -stop前,先执行ps -ef|grep ds,看看有没有什么ds的进程还在,如果有就少等一会儿,或者把进程杀掉。然后在stop4.7 Failed to intialize job monitoring. Monitor
22、information will not be generated.在运行job的时候,日志显示:Failed to intialize job monitoring. Monitor information will not be generated.同时ds designer里面作业运行结束后,没有出现绿线。 在启动服务的时候,监控程序(datastage自带的监控程序)没有正确启动。解决方法是:手工启动/home/ap/dsadm/Ascential/DataStage/PXEngine/java下面的jobmoninit程序。4.8 ERROR: Open Job failed! er
23、rno= -1004在运行作业的时候报错datastage 的内部管理库是用universe有关,这种数据库本身不是很成熟,datastage很久未重新启动,可能导致类似作业打开失败、作业不存在等错误,重做则可以,有的作业虽然已经执行完成,但datastage在重置作业状态是有问题导致作业长时间挂住等。解决办法是datastage定期重起4.9 No conductor nodes found in export node pool作业运行过程中报No conductor nodes found in export node pool1.检查该作业对应的apt文件(/home/ap/dsadm
24、/Ascential/DataStage/Configurations/)内容,确认里面写得hostname都是可以访问的机器。SQF_ecif_ods_f1130_add_wr: Error when checking operator: No conductor nodes found in export node pool.4.10 DS作业失败,对某些行成功,而对另外一些行则失败,造成进程CoreDumpDS作业失败,对某些行成功,而对另外一些行则失败,造成进程CoreDump作业逻辑设计不严密,特别是transform,在一些数据上(空值)调用了非法操作造成,认真检查字段。作业设计4
25、.11 作业运行失败,错误信息显示为写文件失败或者buffer失败 报写文件失败或者out of buffer原因是1Scratch空间不足2输出文件的文件系统空间不足;3文件系统最大文件参数错误(ulimit);4.12 作业Link信息取不到运行job后,发现log里面的统计信息指都是0(在window下体现为job运行成功去没有绿线,连线上面也没有统计信息)1. /etc/hosts中无localhost项 (详见问题4)2DS Monitor进程宕掉 (详见问题4)4.13 带有Oracle组件的作业在RAC环境下无法运行,APT_ORAInstSet:fail()运行带有ORACLE Stage的作业报出错误:APT_ORAInstSet:在ORACLE使用到了RAC,必须设置一个变量,方法:dsadmin -envadd APT_ORACLE_NO_OPS -type STRING -prompt no oracle parellel -value 0 projname
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1