gpt4 book ai didi

Hadoop:如果 Pig 中的字段为空,则创建空包

转载 作者:可可西里 更新时间:2023-11-01 14:25:22 24 4
gpt4 key购买 nike

我有以下数据的例子

id : long,
list: {(itemId: Long, itemName: charArray)}

在我的数据中,list 可以是一包元组或 null。我想把null改成一个空包(由0个元素组成)

我试过类似的东西:

answer = FOREACH data
GENERATE (list is null ? {} : list) AS list;

它说 {} 和 list 是不兼容的架构。我想知道如何创建一个具有兼容架构的空包

我最终这样做了并且成功了:

answer = FOREACH data
GENERATE (list is null ? (bag{tuple(long,chararray)}){} : list) AS list:{(itemId: long, itemName: charArray)};

最佳答案

{} 没有任何类型。袋子里面总是有一个元组类型。 list 和你的空包需要有相同的类型。

不幸的是,我没有 Pig up 可以为你测试这个,我不确定具体怎么做,但它会是这样的......我不能'找不到关于如何设置包类型的好文档...

也许试试这个?

answer = FOREACH data
GENERATE (list is null ? (bag{tuple(long,chararray)}){} : list) AS list;

关于Hadoop:如果 Pig 中的字段为空,则创建空包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20509581/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com