Hive中的 hiverc檔案及命令執行方式

2021-07-06 01:33:14 字數 2026 閱讀 6696

在$/bin目錄下有個.hiverc檔案,它是隱藏檔案,我們可以用linux的ls -a命令檢視。我們在啟動hive的時候會去載入這個檔案中的內容,所以我們可以在這個檔案中配置一些常用的引數,如下:

#在命令列中顯示當前資料庫名

set hive.cli.print.current.db=true;

#查詢出來的結果顯示列的名稱

set hive.cli.print.header=true;

#啟用桶表

set hive.enforce.bucketing=true;

#壓縮hive的中間結果

set hive.exec.compress.intermediate=true;

#對map端輸出的內容使用bzip2編碼/解碼器

set mapred.map.output.compression.codec=org.apache.hadoop.io.compress.bzip2codec;

#壓縮hive的輸出

set hive.exec.compress.output=true;

#對hive中的mr輸出內容使用bzip2編碼/解碼器

set mapred.output.compression.codec=org.apache.hadoop.io.compress.bzip2codec;

#讓hive盡量嘗試local模式查詢而不是mapred方式

set hive.exec.mode.local.auto=true;

命令的執行方式:1.在linux命令列下使用hive -e "sql語句"的方式執行:

注:從圖中可以看出這種方式並不需要進入hive直接在linux命令列執行,這可以避免切換狀態帶來的不便。

2.把查詢結果匯出到檔案中,也是在linux命令中使用hive -e "***" > a.txt

3.是執行語句安靜的執行,使用hive -s -e "***"

附:從上面我們可以看到和hql語句執行相關的日誌都不會輸出了。

4.在linux命令列中使用hive -f "檔案"執行寫在某個檔案中的hql語句。

5.執行寫在shell指令碼中的查詢語句

6.在hive終端使用source 檔名的形式執行寫在檔案中的語句

注:這個命令是在hive終端執行的,且檔案不需要使用雙引號!

7.顯示分布式快取中的jar包,在hive終端使用list jar命令

hive中建立hive json格式的表及查詢

在hive中對於json的資料格式,可以使用get json object或json tuple先解析然後查詢。也可以直接在hive中建立json格式的表結構,這樣就可以直接查詢,實戰如下 hive 2.3.0版本 1.準備資料來源 將以下內容儲存為test.txt class teacher cl...

hive中的檔案格式的簡介

注意 hive預設的檔案格式是textfile,可通過set hive.default.fileformat 進行配置 結論 由上圖可知 行式儲存一定會把同一行資料存到同乙個塊中,在select查詢的時候,是對所有欄位的查詢,不可以單獨查詢某一行 列式儲存同一列資料一定是儲存到同乙個塊中,換句話說就...

hive配置檔案中的引數描述

hive.exec.max.created.files 說明 所有hive執行的map與reduce任務可以產生的檔案的和 預設值 100000 hive.exec.dynamic.partition 說明 是否為自動分割槽 預設值 false hive.mapred.reduce.tasks.sp...