/04/19 09:37:58 ERROR orm.ClassWriter: Cannot resolve SQL type
对于二进制列,导入到配置单元表时抛出错误(在数据导入并放入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
3条答案
按热度按时间iyfamqjs1#
除上述答案外,我们可能还必须观察错误何时出现,例如。
在我的例子中,有两种类型的数据列导致了错误:json和binary
对于json列,在导入过程的最开始执行java类时出现错误:
对于二进制列,导入到配置单元表时抛出错误(在数据导入并放入hdfs文件后)
为了消除这两个错误,我必须提供以下选项
总之,我们可能必须提供
或者
取决于故障。
4ioopgfo2#
可以使用参数
--map-column-hive
覆盖默认Map。此参数需要一个逗号分隔的键值对列表,用=分隔,以指定哪列应与配置单元中的哪种类型匹配。r9f1avp53#
sqoop-2103/sqoop1.4.5中添加了一个新特性,允许您使用map column hive参数调用十进制精度。例子:
此语法将字段定义为
DECIMAL(20,2)
. 这个%2C
用作逗号,如果从bashshell提交,则参数必须用单引号括起来。我试着不加修改地使用十进制,结果得到了一个好结果
Decimal(10,0)
作为默认值。