在PutHiveStreaming之前修改Insert语句

时间:2017-11-15 13:50:15

标签: hive apache-nifi

我的CSV文件包含DATE TIME格式的列,如12-10-2017 11:30

现在使用puthivestreaming我可以轻松插入这些记录,但我的要求是从这个&中删除TIME。保持只有12-10-2017

我可以在插入时使用带有substr()方法的Hive命令行来实现这一点,不确定Nifi是否支持它

我也考虑过ReplaceText,但由于我在单行上有多个类似于DateTIMe的列,我不能这样做。

我怎样才能实现这一目标?。

1 个答案:

答案 0 :(得分:1)

您可以使用getDelimitedField轻松获取所需的列。

https://nifi.apache.org/docs/nifi-docs/html/expression-language-guide.html#getdelimitedfield

输入 - > 1,12-10-2017 11:30,23

<\ n>在replaceText中,只需提供${Input:getDelimitedField(2):substringBefore(' ')}

它使用12-10-2017生成流文件内容。

希望这对你有帮助。