2016-10-06 35 views
0

我正在通過shell腳本運行配置單元查詢。我想使用hive -hiveconf來設置特定的蜂巢配置。不過,我想進入像多個Java選項:Hive Shell多個Java選項

hive -hiveconf set tez.am.java.opts=-option1 -option2

不幸的是,shell腳本需要-option2作爲一個shell命令以及因爲它不理解它,它失敗。我如何列出我想包含在其中的所有java.opts?我嘗試使用引號,但沒有奏效。我也無法編寫set tez.am.java.opts=的多個實例。

+0

嘗試雙引號(「) – leftjoin

+0

試過了,沒有工作 – user3124181

+0

你可以在腳本中運行多個集合作爲單獨的語句嗎? – Andrew

回答

0

當你使用hiveconf命名空間來傳遞變量時,你應該在你的腳本里面寫下這樣的所有變量:${hiveconf:variable}。這看起來不完全是你想要達到的。

有時腳本非常大,包括數十個設置和SQL腳本。

我建議的解決方案是準備一個帶有參數集的文件,然後在HQL腳本中調用source my_script_params.hql。在執行HQL腳本之前,您還可以從數據庫生成此腳本。