Sqoop 中的时间戳截断



将数据从各种RDBMS导出到Hive时,时间戳中毫秒末尾的0被截断。例如-

Source                     Hive
2015-03-27 23:42:44.300 => 2015-03-27 23:42:44.3
2015-03-27 23:42:44.000 => 2015-03-27 23:42:44.0
2015-03-27 23:42:44.350 => 2015-03-27 23:42:44.35

我在每个表中都有 2 列,creat_dtupdt_dt有这个问题。我应用的临时解决方案是使用 2 步过程对数据进行 sqoop 处理。

  1. Sqoop(eval) 表结构并使用 sed 命令,我添加演员表命令转换为正确的时间戳格式并保存列表变量中的列。
  2. 通过传递步骤 1 中的列值从源 Sqoop(导入)数据。

想知道是否有可以在sqqop中指定的直接方法或命令,这将有助于我实现目标。

谢谢阿肖克

我希望这可能会起作用。

在 sqooping 将其转换为字符串并 sqoop 它时,如果您希望 Hive 中的日期再次使用to_date函数将其转换为日期。

相关内容

  • 没有找到相关文章

最新更新