首頁 >常見問題 >hive自備的函數有哪些

hive自備的函數有哪些

(*-*)浩
(*-*)浩原創
2019-12-21 10:55:053568瀏覽

hive自備的函數有哪些

Hive的內建函數

# 定義:                          建議  #

UDF(User-Defined-Function),用户自定义函数对数据进行处理。
UDTF(User-Defined Table-Generating Functions) 用来解决 输入一行输出多行(On-to-many maping) 的需求。
UDAF(User Defined Aggregation Function)用户自定义聚合函数,操作多个数据行,产生一个数据行。
用法:

1、UDF函數可以直接套用於select語句,對查詢結構做格式化處理後,再輸出內容。

2、寫UDF函數的時候需要注意幾點:

a)自訂UDF需要繼承org.apache.hadoop.hive.ql.UDF。

b)需要實作evaluate函。

c)evaluate函數支援重載。

hive的本地模式:

大多數的Hadoop job是需要hadoop提供的完整的可擴展性來處理大數據的。

不過,有時hive的輸入資料量是非常小的。在這種情況下,為查詢出發執行任務的時間消耗可能會比實際job的執行時間要多的多。

對於大多數這種情況,hive可以透過本機模式在單一機器上處理所有的任務。對於小資料集,執行時間會明顯縮短。

如此一來,對資料量比較小的操作,就可以在本地執行,這樣要比提交任務到叢集執行效率要快很多。


配置如下參數,可以開啟Hive的本地模式:

hive> set hive.exec.mode.local.auto=true;(默认为false)

當一個job滿足如下條件才能真正使用本地模式:

hive自備的函數有哪些job的輸入資料大小必須小於參數:hive.exec.mode.local.auto.inputbytes.max(預設128MB)

job的map數必須小於參數: hive.exec.mode.local.auto.tasks.max(預設4)

job的reduce數必須為0或1

以上是hive自備的函數有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn