我正在尝试将一个文件作为parquet导入到配置单元中,--map column hive column\u name=timestamp被忽略。“column\u name”列最初在sql中是datetime类型,它将其转换为parquet中的bigint。我想通过sqoop将其转换为时间戳格式,但它不起作用。
sqoop import \
--table table_name \
--driver com.microsoft.sqlserver.jdbc.SQLServerDriver \
--connect jdbc:sqlserver://servername \
--username user --password pw \
--map-column-hive column_name=timestamp\
--as-parquetfile \
--hive-import \
--hive-table table_name -m 1
当我在配置单元中查看表时,它仍然显示具有原始数据类型的列。
我尝试了column_name=string,但也没有成功。
我认为这可能是一个问题,转换文件Parquet,但我不确定。有人有解决办法吗?
我在运行命令时没有收到任何错误,它只是完成导入,就好像命令不存在一样。
1条答案
按热度按时间vktxenjb1#
在Hive1.2版本之前,Parquetsorde中的TimesMap支持不可用。1.1.0中仅提供二进制数据类型支持。
请检查链接
请将您的版本升级到1.2和之后,它应该工作。