如何检查pig udf中的数据类型

ddhy6vgd  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(337)

我是新手。
我想写一个过滤器自定义项,而不考虑列的数据类型。

iput_data = load data '/emp.csv' using PigStorage(',') as (empid int, name chararray);

output = FILTER input_data by FilterUDF(empid);//data type is int

input_data1 = load data '/dept.csv' using pigStorage(',') as (deptid chararray, deptname chararray);

output1 = FILTER input_data by FilterUDF(deptid); //data type is chararray

现在,在pigudf中,如何识别输入参数的数据类型(i、 e.输入的数据类型(get(0))

import org.apache.pig.FilterFunc;
import java.io.IOException;
import org.apache.pig.data.Tuple;

public class FilterUDF extends FilterFunc {

    public Boolean exec(Tuple input) throws IOException {
        //How to check data type inside UDF
    }
}
a0x5cqrl

a0x5cqrl1#

您可能需要使用gettype()方法来查找元组中各个元素的数据类型。查看此链接
像这样的

if (input.getType(0) == INTEGER) {
    // Do something here
}

希望这有帮助。

相关问题