SELECT explode(context_ngrams(sentence(lower(val)),array(" he",null),10))AS x FROM kafka;

时间:2016-07-13 02:34:10

标签: hive apache-pig

在查询中

SELECT explode(context_ngrams(sentences(lower(val)), array("he", null), 10)) AS x 
FROM kafka;

这个例子中array("he", null)做了什么?

1 个答案:

答案 0 :(得分:0)

从基本的Hive函数中,代码array("he", null)只创建一个两元素数组,其中第一个值是字符串“he”,第二个值是null。

如果你的意思是“它对context_ngrams函数做了什么”,那么Hive statistics page上的文档就会有以下(略微重新格式化)的描述:

SELECT context_ngrams(
     sentences(lower(tweet)),
     array("i","love",null),
     100, [, 1000]
) FROM twitter;
     

上面的命令将在Twitter推文的假设数据库中返回“我喜欢”一词后面的前100个单词列表。每个null指定n-gram组件的位置以进行估计;因此,每个查询必须在上下文数组中包含至少一个null。

因此,对于您的示例,查询将返回单词“he”之后的前10个单词。