hive配置詳解

2021-09-12 03:23:24 字數 1355 閱讀 9011

hive中有許多配置將幫助我們提公升效能,其詳細配置如下:

1、hive.auto.convert.join  預設值為true

是否根據輸入小表的大小,自動將 reduce 端的 common join 轉化為 map join,從而加快大表關聯小表的 join 速度。 

2、hive.groupby.skewindata 預設值為false

用於決定 group by 操作是否支援傾斜的資料,即將資料進行負載均衡。原理是,在group by中,對一些比較小的分割槽進行合併。

3、hive.default.fileformat 預設值為textfile

hive 預設的輸出檔案格式,與建立表時所指定的相同,可選項為 'textfile' 、 'sequencefile' 或者 'rcfile'

4、hive.mapred.mode 預設值為nonstrict

map/redure 模式,如果設定為 strict,將不允許笛卡爾積

5、hive.exec.reducers.max 預設值為999

用於設定reducer 個數的上限

6、hive.exec.compress.output 預設值為false

決定查詢中最後乙個 map/reduce job 的輸出是否為壓縮格式

7、hive.exec.parallel和hive.exec.parallel.thread.number

hive.exec.parallel用於設定job是否並行執行,預設hive.exec.parallel為false

hive.exec.parallel.thread.number 預設值為8,這個是要在hive.exec.parallel=true的情況才起效果,這個是用於設定並行度

8、hive.exec.max.dynamic.partitions  預設值為1000

所允許的最大的動態分割槽的個數。可以手動增加分割槽。

9、hive.exec.max.dynamic.partitions.pernode 預設值為 100

單個 reduce 結點所允許的最大的動態分割槽的個數

10、hive.exec.default.partition.name 

預設的動態分割槽的名稱,當動態分割槽列為''或者null時,使用此名稱:'__hive_default_partition__'11、

set hive.exec.max.created.files 預設值為100000

這個是用於設定檔案個數,當檔案個數超過預設值時,程式會報如下錯誤:

total number of created files now is 100013, which exceeds 100000

簡單解決方法是設定更大值就行

先寫這麼多,後續再加

hive配置詳解

hive中有許多配置將幫助我們提公升效能,其詳細配置如下 hive.auto.convert.join 預設值為true 是否根據輸入小表的大小,自動將 reduce 端的 common join 轉化為 map join,從而加快大表關聯小表的 join 速度。2 hive.groupby.ske...

Hive配置項的含義詳解

認為在執行hive sql時可以根據資料情況進行設定,當然還有一些join的優化的配置需要單獨研究。mapred.reduce.tasks 每個作業的reduce任務數,預設是hadoop client的配置1個 hive.exec.reducers.bytes.per.reducer 每個redu...

HIVE基礎詳解

tinyint 1byte,128 127 smallint 2byte,32,768 32,767 int 4byte 2,147,483,648 2,147,483,647 bigint 8byte 9,223,372,036,854,775,808 9,223,372,036,854,775,...