hive - sqoop 导入配置单元表错误
问题描述
您好,我尝试将 as400 表插入配置单元表,因此我创建了一个与 as400 表具有相同架构的配置单元表,但我添加了一个已处理的列(时间戳)这是我的配置单元表:
CREATE external TABLE IF NOT EXISTS default.AS400TEST (
One INT,
Two STRING,
..
N INT
)
PARTITIONED BY (processedate TIMESTAMP)
STORED AS TEXTFILE
location '/tmp/AS400TEST;
我运行这个 sqoop 命令:
sqoop import --verbose --driver $DRIVER_CLASS --connect $URL --username $LOGIN --password $PASSWORD \
--table $TABLE \
--target-dir $DIR \
-m 1 --hive-import --hive-table default.AS400TEST \
--hive-partition-key "processedate"
我的问题是地图保持在 0% 的时间超过 30 分钟,我就干掉了这份工作。我需要改变什么吗?
另一个问题:如何用sqoop插入列时间戳?
解决方案
您的表可能很大,一个映射器 ( -m 1
) 无法在合理的时间内完成任务。尝试增加此参数(请参阅文档中的详细信息)。
要插入时间戳列,请使用--map-column-hive 'timestamp_column_name=TIMESTAMP'
.
推荐阅读
- c++ - 在调用时仅指定一些模板参数
- ssl - 设置 nginx 以使用多个 ssl 证书而无需多个服务器
- javascript - 浏览器获取请求 404,但适用于 Postman 应用程序
- python - 如何通过 Selenium/Python 选择没有 ID 的 Web 元素
- firebase - Firebase Firestore:有没有办法强制集合中所有文档的必填字段?
- javascript - 函数内部的函数不等待javascript中的承诺
- python - 为什么使用 MLP 的 4 个输入 2 个输出函数逼近的损失如此之高?
- c++ - 除了使用#define 进行条件编译之外,还有其他选择吗?
- sql - 具有否定 (NOT) 模式匹配的 OrientDB MATCH 查询
- html - 如何将锚标签居中在父元素内,锚占据父元素的所有空间