HIVE UDF保持前一行的价值

时间:2014-08-06 11:32:19

标签: java hadoop hive hiveql

我有一个应返回上一行内容的UDF。我用以下代码实现了它。不幸的是,它总是返回参数second的当前行的值。有谁知道我做错了什么?

@UDFType(stateful = true)   

public class Strip extends UDF {    

private Text result = new Text();
private static ArrayList<Text> lst;
int count=0;

public Strip(){
    result.set("");
}
public Text evaluate(Text first, Text second) {

    if (str == null | stripChars == null) {
return null;
}
if (lst == null)
{
    lst = new ArrayList<Text>();
    lst.add(second);        
    return first;
}

result=lst.get(lst.size()-1);
lst.add(second);    
return result;

}

提前致谢。

0 个答案:

没有答案