下面例子是自己在实验udaf写法,中间踩了不少坑,写在这里做个笔记
udaf类实现
package com.test.newsevent;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import org.apache.hadoop.hive.ql.exec.UDAF;
import org.apache.hadoop.hive.ql.exec.UDAFEvaluator;
@SuppressWarnings("deprecation")
public class GetNewsTitleInfoStatistics extends UDAF {
// 记录新闻标题统计信息
public static class NewsTitleInfo implements Serializable {
private String title;// 标题名称
private String url;// url
private String isCredible;// 新闻来源是否可信 "no":不可靠 "yes":可靠
private int total;// 该条新闻的总数
public NewsTitleInfo() {
}
public NewsTitleInfo(String title, int total, String isCredible, String url) {
super();
this.title = title;
this.total = total;
this.isCredible = isCredible;
this.url = url;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getIsCredible() {
return isCredible;
}
public void setIsCredible(String isCredible) {
this.isCredible = isCredible;
}
public int getTotal()