gpt4 book ai didi

hadoop - Sqoop Hive 表导入,表数据类型与数据库不匹配

转载 作者:可可西里 更新时间:2023-11-01 14:14:23 25 4
gpt4 key购买 nike

使用 Sqoop 将数据从 oracle 导入到 hive,它工作正常,但它在 hive 中创建的表只有 2 个数据类型 String 和 Double。我想将 timeStamp 用作某些列的数据类型。我该怎么做。

bin/sqoop import --table TEST_TABLE --connect jdbc:oracle:thin:@HOST:PORT:orcl --username USER1 -password password -hive-import --hive-home /user/lib/Hive/

最佳答案

除了上述答案外,我们可能还需要观察错误何时出现,例如

在我的例子中,我有两种导致错误的数据列:json 和 binary

对于 json 列,在导入过程的最开始,Java 类正在执行时出现错误:

/04/19 09:37:58 ERROR orm.ClassWriter: Cannot resolve SQL type

对于二进制列,在导入到 hive 表时抛出错误(在数据导入并放入 HDFS 文件之后)

16/04/19 09:51:22 ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: Hive does not support the SQL type for column featured_binary

To get rid of these two errors, I had to provide the following options

--map-column-java column1_json=String,column2_json=String,featured_binary=String --map-column-hive column1_json=STRING,column2_json=STRING,featured_binary=STRING

总而言之,我们可能必须提供

--map-column-java 

--map-column-hive

取决于故障。

关于hadoop - Sqoop Hive 表导入,表数据类型与数据库不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21324643/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com