我有一个sqoop导入脚本,用于将数据从Oracle加载到Hive。
查询
sqoop-import -D mapred.child.java.opts="-Djava.security.egd=file:/dev /../dev/abc" -D mapreduce.job.queuename="queue_name" \
--connect ${jdbc_url} \
--username ${username} \
--password ${password} \
--query "$query" \
--target-dir ${target_hdfs_dir} \
--delete-target-dir \
--fields-terminated-by ${hiveFieldsDelimiter} \
--hive-import ${o_write} \
--null-string '' \
--hive-table ${hiveTableName} \
$split_opt \
$numMapper\
日志
18/02/01 12:38:45 DEBUG hive.TableDefWriter:创建语句:CREATE 表IF NOT NOT EXISTS
db_test.test
(USR_ID
STRING,ENT_TYPE
STRING,VAL
STRING)评论'由sqoop于2018/02/01进口 12:38:45'行格式删除字段终止于' \ 054' LINES 终止于' \ 012'作为文本存储18/02/01 12:38:45调试 hive.TableDefWriter:加载语句:LOAD DATA INPATH ' HDFS:// NN-坐/用户/ test_tmp' OVERWRITE INTO TABLEdb_test.test
18/02/01 12:38:45 INFO hive.HiveImport:将上传的数据加载到 Hive 18/02/01 12:38:45 DEBUG hive.HiveImport:使用进程中的Hive 实例。 18/02/01 12:38:45 DEBUG util.SubprocessSecurityManager: 安装子进程安全管理器使用配置初始化日志记录 罐子:文件:/path/demoapp/lib/demoapp-0.0.1-SNAPSHOT.jar /hive-log4j.properties 确定所需时间:2.189秒将数据加载到表db_test.test 异常java.net.UnknownHostException失败:nn-dev FAILED:执行错误,返回代码1来自 org.apache.hadoop.hive.ql.exec.MoveTask
观察:
nn-sit
,
早些时候是nn-dev
。有人可以告诉我来自Sqoop的地方
读取错误中显示的旧名称节点名nn-dev
消息:异常java.net.UnknownHostException:nn-dev
失败
成功将数据从Oracle导入目标
hdfs path: hdfs://nn-sit/user/test_tmp
。然而,它失败了
加载到Hive表。
以下单个命令从beeline成功。
LOAD DATA INPATH' hdfs:// nn-sit / user / test_tmp' OVERWRITE INTO TABLE db_test.test
非常感谢任何帮助。