ODS_ETL常见问题分析及解决方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ODS_ETL常见问题分析及解决方法1II常见抽取错误及处理方法
1.1 SQL3015N
问题描述:
问题分析:源系统删除提供给II抽取用的授权用户问题解决:联系源系统人员,增加指定授权用户1.2 SQL3015N
问题描述:
问题分析:源系统表结构发生变更,导致NICKNAME不可用
问题解决:通知ODS相关人员,重建NICKNAME
1.3 SQL1822N
问题描述:
SQL1822N Unexpected error code "-805" received from data source "BANKA". Associated test and tokens are "SQL0805N Package "NULLID .SYSSN200" was not found .SQ".SQLSTATE=560BD
问题分析:II在连接400前需要进行绑定
问题解决:
db2 bind @db2ubind.lst blocking all grant public
db2 bind @db2cli.lst blocking all grant public
db2 bind db2schema.bnd blocking all grant public
1.4 SQL3022N
问题描述:
db2 "EXPORT TO /gpfs/file/output/20081121/CP/NICK_N_CP_APEDU.tmp OF DEL LOBS TO /gpfs/file/output/20081121/CP/LOBFILE a_cp_apedu_20081121 MODIFIED BY coldel0x03 nochardel datesiso LOBSINFILE MESSAGES /gpfs/file/output/20081121/CP/NICK_N_CP_APEDU.msg SELECT * FROM NICK_N_CP_APEDU where 1=1 WITH UR" SQL3022N An SQL error "-204"
occurred while processing the SELECT string in the Action String parameter.1024 export NICK_N_CP_APEDU 出错
问题解决:
1)复制日志中的SELECT语句直接在IIDB上执行,即可看见详细的错误信息,一般为配置表中的筛选条件出错。
2)编辑抽取配置表中相应信息
3)重新调度作业,启动作业。
2数据已抽取,但对应作业未运行
问题现象:作业流未运行完,同时既没有作业在Running没有作业Failed,这时就要查看该作业流下哪个表还未运行,通过作业流总体监控可以看到数据日期下哪些作业还未运行,如下图所示,点击作业流名称即可
找到还未运行的作业,通过作业名可以判断哪个系统的哪个表数据抽取有问题。
问题分析:
1)个别表出现这种情况:
由于在抽取时为export方式,字段值中存在回车换行,导致抽取出的数据文件记录数与就绪文件中记录数不符,filemonitor在监控到该种情况时不会调起作业2)大部分表出现这种情况:
ETLPLUS知识库连接出现问题,导致Filemonitor异常
问题解决:
1)以SQC方式重新抽取:
以iiuser用户登陆II服务器,连接IIDB
更新II配置表中指定源表的RTN_COL字段为’Y’,以表DSMSA为例,如下图所示:
确认更新成功,如下图所示:
然后进入目录/gpfsii/file/output/#work_date#/源系统简称/,找到该表所对应的文件,然后将其重命名,如下图所示:
登陆iiuser用户ETLPLUS,找到表对应的作业,然后重新启动即可。
2)通知ODS相关人员,解决ETLPLUS知识库问题,然后重新启动Filemonitor:以dsadm用户登陆Filemonitor服务器,按如图所示进行操作:
然后查看日志,出现如下所示样子的日志即可。
3DataStage入库作业长时间处于Running状态
问题现象:
在作业流未执行完时通过作业总体监控,查看是否有作业Failed和Running,发现某个作业运行时间超长
点击作业名称
进入作业操作界面,点击查看作业属性
进入作业属性界面,可以看到作业类别为ds job
问题分析:DataStage自身问题,不定时出现
问题解决:清除掉程序进程,然后在ETLPLUS中重新启动作业,具体操作步骤如下:停止DataStage Job有两种方式,一种是Stop方式,另一种是清除进程资源,具体如下所述:
从客户端登陆DataStage Director
1)选中正在运行的作业,发现会有一个Stop的按钮,点击即可,如下图所示:
如果JOB已经运行很长时间,使用此方式时间会比较久,建议使用第二种方式。2)选中正在运行的作业,在菜单Job下选择Cleanup Resources,如下图所示:
进入Job Resources窗口,会发现刚才选中的作业进程,点击Logout按钮即可清楚该作业进程,如下图所示:
4主键重复
问题现象:
当发现作业Failed时,查看作业日志出现如下图所示情况时,说明是由于主键重复导致程序Failed
问题分析:1)数据问题:由于在II抽取数据时业务系统有删除然后插入的状况,导致抽取的数据有删除前和删除后新插入两条数据
2)主键设置错误
问题解决:同ODS相关人员确认如何处理
5SQC程序运行时报时间戳冲突错误
问题现象:在日志中报如下错误,SQL0818N A timestamp conflict occurred.
SQLSTATE=51003
问题分析:包名重复导致
问题解决:通知ODS相关人员查找是哪个程序使用了同样的包名。临时解决方法为重新编译或绑定。