hive變數命名空間

2021-08-29 04:40:36 字數 1277 閱讀 3933

hive變數命名空間有四個:hivevar,hiveconf,system,env。

(上圖來自《hive程式設計指南》)

hive cli啟動時可通過--define和--hivevar、--hiveconf來自定義變數。

其中--define和--hivevar的作用是一樣的,都是在hivevar命名空間定義變數。

hive cli --define y=1

hive cli --hivevar y=1

hive> set y;

y=1hive> set hivevar:y;

hivevar:y=1

hive> set hiveconf:y;

hiveconf:y is undefined as a hive configuration variable

query returned non-zero code: 1, cause: null

通過set檢視y的值,發現這個變數y是定義在hivevar命名空間。

在hive cli啟動時也可定義hiveconf命名空間的變數

hive cli --hiveconf y=2
驗證一下

hive> set y;

y=2hive> set hivevar:y;

hivevar:y is undefined as a hive variable

query returned non-zero code: 1, cause: null

hive> set hiveconf:y;

hiveconf:y=2

進入hive之後,通過set直接修改的變數都是在hiveconf內生效。

hive> set hiveconf:y;

hiveconf:y=2

hive> set y=3;

hive> set y;

y=3hive> set hiveconf:y;

hiveconf:y=3

因此,set hive.cli.print.current.db=true;這種配置都是在hiveconf空間生效。

若要自定義變數,建議在hivevar中定義,如set hivevar:y=4;使用變數只需 $

tensorflow 變數與命名空間

在tensorflow裡,有兩種命名空間和兩種變數宣告函式 with tf.name scope as scope with tf.variable scope as scope tf.get variable tf.variablename scope 為了更好的管理變數的命名空間而提出,比如在t...

命名空間定義變數 C 名字空間

編寫程式過程中,名稱 name 可以是符號常量 變數 函式 結構 列舉 類和物件等等。工程越大,名稱互相衝突性的可能性越大。另外使用多個廠商的類庫時,也可能導致名稱衝突。為了避免,在大規模程式的設計中,以及在程式設計師使用各種各樣的 c 庫時,這些識別符號的命名發生衝突,標準 c 引入關鍵字 nam...

C 命名空間 預設命名空間與匿名命名空間

2.匿名命名空間 預設命名空間也叫全域性命名空間,所有沒有置於某一具體命名空間下的 即在預設命名空間下,例如func main 函式。include void func void intmain int argc,char ar void func void 需要注意的是 這個就是類似於c語言裡簡單...