Cloudera Impala中的分割函数无法工作

5

当我尝试使用Cloudera Impala的split函数时,不断出现“split unknown”的AnalysisException。在内置函数页面上,它似乎是一个有效的函数。为参考,我正在使用Hue与Impala交互。有人知道这个问题的原因吗?


你能提供出现问题的函数和具体的错误吗?这些信息会很有帮助 :) - greedybuddha
例如,像这样的查询:select count(*) from tab1 where length(split(",", col1)) > 0; 会出现错误AnalysisException: split unknown。显然,这是文档中的一个错误,因为在https://github.com/cloudera/impala/blob/master/common/function-registry/impala_functions.py中没有列出split函数。 - Emre Colak
看起来这是一个bug。错误明显是“找不到该方法”,因此“split”可能不存在。 - greedybuddha
我在Google群组中问了同样的问题,然后得到了官方回复。基本上,split()不被支持是因为它会返回一个数组,而Impala尚不支持复杂类型... - Emre Colak
太好了,那你应该回答自己的问题 :) - greedybuddha
哦,是的,我忘了你可以这样做,就是这样... - Emre Colak
3个回答

4

嗯,虽然我很感谢你的意见,但这根本没有回答问题 + split_part 只返回拆分后的第 n 个元素。 - Markus

3

我在谷歌小组里提出了同样的问题,并得到了官方回复。基本上,这是文档中的错误印刷。split()不受支持,因为它将返回一个数组,而Impala尚不支持复杂类型。


0

分割和复杂类型支持已经在CDH 5.5中引入到Impala。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接