hive -e 是執行指定sql,-f 是執行指定hql檔案。因為cdh上棄用了hive cli,但因為一些企業任在使用,他們使用cli連線其他程式容易出錯,所以會警告提示。hive -e / -f 會出現wrn:
warn: the method class org.apache.commons.logging.impl.slf4jlogfactory#release() was invoked.
warn: please see for an explanation.
只在cli上查詢是不會有warn的,但如果將cli的結果跟其他程式連線時,就會出現這樣情況。
原因是cdh上執行的hive載入了spark的jar包到它的classpath下:
# add spark assembly jar to the classpath
if [[ -n "$spark_home" && !("$hive_skip_spark_assembly" = "true") ]]
then
sparkassemblypath=`ls $/lib/spark-assembly-*.jar`
classpath="$:$"
fi
有時需要重定向輸出結果時,檔案末尾會帶這兩個warn,對資料處理不太友好
1. 使用 grep -v 過濾掉warn
hive -e "show databases; exit;" | grep -v "warn" > /liujinhe/bak/databases/database
2. 直接從hive匯出到資料
insert overwrite local directory '/liujinhe/bak/databases/database/table'
row format delimited fields terminated by '\t'
select * from test.words;
3. 設定 hive_skip_spark_assembly=truecdh支援了hive_skip_spark_assembly引數設定,所以可以設定這個引數來關閉warn提示。
echo "export hive_skip_spark_assembly=true" >> /etc/profile
source /etc/profile
參考料 解壓war包和重新壓縮war包
public class warutils else in.close catch filenotfoundexception e catch archiveexception e catch ioexception e 判斷war包是否已經存在,若存在則刪除 param filepath publ...
war檔案解釋
1.war其實就是.zip格式,你用winzip都可以做乙個,想壓縮成.zip再把字尾名改為war就行了,只不過需要注意壓縮的層次和相應的配置檔案的位置。一般都用開發工具的生成嚮導做乙個。2.war包一般就是乙個用於發布的檔案,一般是不會在其他工程中匯入的,只有jar包才會匯入到其它工程中,在工程屬...
Linux下打包壓縮war,解壓war和jar命令
環境 redhat linux 9 vwware 8.0 ssh 3.2.9 putty 0.62 問題linux下打包壓縮war 解壓war包和jar命令 解決把project a資料夾下的檔案打包成project.war 1,打包 jar xvf project.war project a c ...