# 配置相關 0. 配置存儲 在$HOME目錄下的.hiverc文件中 1. 在提示符中顯示資料庫名 set hive.cli.print.current.db=true; 2. 優先使用本地模式執行 set hive.exec.mode.loacl.auto=true; 3. 列印列名 set h ...
# ------------------配置相關--------------------------
0. 配置存儲
在$HOME目錄下的.hiverc文件中
1. 在提示符中顯示資料庫名
set hive.cli.print.current.db=true;
2. 優先使用本地模式執行
set hive.exec.mode.loacl.auto=true;
3. 列印列名
set hive.cli.print.header=true;
4. (非)嚴格模式
set hive.mapred.mode=strict;
set hive.mapred.mode=nonstrict;
5. 開啟動態分區
set hive.exec.dynamic.partition=true;
# --------------動態分區調整--------------------
-- 設置動態分區模式
set hive.exec.dynamic.partition.mode=strict
-- 設置總的動態分區個數
set hive.exec.max.dynamic.partitions=300000
-- 設置每個節點上動態分區個數
set hive.exec.max.dynamic.partitions.pernode=10000
9. 設置全局可以產生文件的個數
set hive.exec.max.created.files=100000;
10.開啟map site join
set hive.auto.convert.join=true;
11.設置小表大小(位元組)
set hive.mapjoin.smalltable.filesize=25000000
12.強制將數據按照桶結構定義來插入數據
set hive.enforce.bucketing=true
13.limit優化
-- 啟用limit優化
set hive.limit.optimize.enable=true;
-- 限制從最大多少條數據中進行limit
set hive.limit.row.max.size=10000;
-- 限制最多遍歷的文件個數
set hive.limit.optimize.limit.file=10;
14. 壓縮
--開啟中間壓縮(即map到reduce之間的數據壓縮)
set hive.exec.compress.intermediate=true;
-- 開啟hadoop中間壓縮(即map到reduce之間的數據壓縮)
set mapred.compress.map.output=true;
-- 開啟hive最終壓縮(即reduce輸出的數據壓縮)
set hive.exec.compress.output=true;
4. 數據倉庫的存儲地址
hive-default.xml中,不一般不同
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
<description>location of default database for the warehouse</description>
</property>