You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle 11g Sqoop导入作业失败:org.kitesdk.data.ValidationException错误

解决Sqoop导入Oracle表时的ValidationException错误

我来帮你搞定这个Sqoop导入的问题!你遇到的报错核心是:Sqoop自动生成的数据集名称里包含了点号(.),而Kite SDK要求数据集名称只能由字母、数字和下划线组成,这就触发了校验失败。

这个问题的根源很明确——你导入的Oracle表带了schema前缀(C46010.HISTCONTACT里的C46010是schema),Sqoop默认会把schema和表名用点号拼接作为数据集名称,刚好违反了Kite的命名规则。

下面是直接可行的解决办法:

  • 手动指定合法的数据集名称:在你的Sqoop命令里添加--dataset-name参数,把点号替换成下划线或者其他符合规则的字符。比如我们把数据集名称设为C46010_HISTCONTACT。
    修改后的完整命令示例如下(我补全了你命令里截断的-as-p为常见的--as-parquetfile,如果你的实际格式不同,替换成你原本的即可):

    $ sqoop job --create ingest_amsp_histcontact -- import --connect "jdbc:oracle:thin:@<IP>:<PORT>/<SID>" --username "c46010" -P --table C46010.HISTCONTACT --check-column ITEM_SEQ --target-dir /tmp/junk/amsp.histcontact --as-parquetfile --dataset-name C46010_HISTCONTACT
    
  • 额外提醒:以后导入带schema的Oracle表时,记得都加上这个参数,避免重复踩坑。Kite的命名规则是硬性校验,必须严格遵守字母、数字、下划线的组合要求。

内容的提问来源于stack exchange,提问作者Yusata

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:56:28