亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

hive擴展函數開發的實現方法

發布時間:2021-12-01 15:12:59 來源:億速云 閱讀:119 作者:柒染 欄目:云計算

這期內容當中小編將會給大家帶來有關 hive擴展函數開發的實現方法,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

提供以下兩種實現方式:a繼承org.apache.hadoop.hive.ql.exec.UDF類

代碼包為:packageorg.apache.hadoop.hive.ql.udf

實現evaluate方法,根據輸入參數和返回參數類型,系統自動轉換到匹配的方法實現上。

例如:

?    UDFTestLength.java:

importorg.apache.hadoop.io.IntWritable;

importorg.apache.hadoop.io.Text;

public classUDFTestLength extends UDF {

  IntWritable result = new IntWritable();

  public IntWritable evaluate(Text s) {

    if (s== null) {

      return null;

    }

    result.set(countUDF8Characters(s));

    return result;

  }

}

b繼承org.apache.hadoop.hive.ql.udf.generic.GenericUDF類

代碼包為:packageorg.apache.hadoop.hive.ql.udf. generic

實現initialize ,evaluate,    getDisplayString方法

例如:

@Description(name = "url_to_map", value = "_FUNC_(text,delimiter1, delimiter2) - "      

public class GenericUDFUrlToMap extends GenericUDF{

HashMap<Object,Object> ret = new HashMap<Object, Object>();

@Override

public ObjectInspector initialize(ObjectInspector[]arguments)

        throwsUDFArgumentException {

     … …

     returnObjectInspectorFactory.getStandardMapObjectInspector(

            PrimitiveObjectInspectorFactory.javaStringObjectInspector,

            PrimitiveObjectInspectorFactory.javaStringObjectInspector);

}

@Override

public Object evaluate(DeferredObject[]arguments) throws HiveException {

     ret.clear();

     … …

     return ret;

}

@Override

public String getDisplayString(String[]children) {

     StringBuildersb = new StringBuilder();

     sb.append("url_to_map(");

     assert (children.length <= 3);

     boolean firstChild = true;

     for (String child :children) {

        if (firstChild) {

            firstChild= false;

        }else {

            sb.append(",");

        }

        sb.append(child);

     }

     sb.append(")");

     return sb.toString();

}

}

上述就是小編為大家分享的 hive擴展函數開發的實現方法了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

汉川市| 威海市| 桓仁| 北宁市| 中西区| 周口市| 阿尔山市| 罗平县| 湖口县| 轮台县| 蛟河市| 沅江市| 洱源县| 张家港市| 佛坪县| 巨鹿县| 柘荣县| 岳西县| 灌云县| 海宁市| 呼伦贝尔市| 修水县| 安泽县| 北宁市| 科尔| 登封市| 进贤县| 赤城县| 米泉市| 涟源市| 南开区| 宁南县| 平顺县| 崇阳县| 若尔盖县| 辽阳市| 芒康县| 交城县| 安福县| 恩平市| 武清区|