2017-06-15 110 views
0

我想爲某些用戶或用戶組設置(強制執行)某些Hive參數。例如,我想設置hive.mapred.mode = strict,並對所有可能傾向於編寫構造不佳的Hive查詢的「新」用戶執行此操作。這樣我就不會讓這樣的用戶在非常大的桌子上進行不必要的完整掃描,並且分區非常清晰。是否可以設置用戶/組/表級Hive配置參數?

我不一定希望在整個羣集級別設置此選項,因爲它可能對所有用戶(特別是知道他們在做什麼的高級用戶)的限制太大。我也不能依靠這些用戶在會話級別自行設置它們。

那麼我有什麼選擇可以實現呢?

+0

在用戶的'.bash_profile'中創建一個別名,例如'hive ='hive --hiveconf hive.mapred.mode = strict'' – philantrovert

+0

這將從邊緣節點起作用。但是如果用戶使用HUE接口,它不會。 –

+0

從技術上講,你應該只提供'impala'作爲'hue'中的查詢界面。你的_not-so-technical_人只會執行'select's,我猜想它會更快。 – philantrovert

回答

0

您可以對所有用戶製作hive.mapred.mode = strict。

知道自己在做什麼的用戶在運行查詢之前會將其更改爲hive.mapred.mode = nonstrict。他們將能夠通過在同一會話中運行這兩個語句來完成此操作。

+0

哈哈,簡單! :)。雖然我不確定所有現有代碼需要更改的位置。任何有這種影響的方式只會影響到新組,並且不會在其他地方引發迴歸問題? –

相關問題