Hiveのユーザ変数はhiveconfとhivevar、どちらを使うのが良い?

Hiveで変数を使う時にhiveconfかhivevarかどちらを使うか迷う場合があるのですが、なんとなくユーザ変数の場合はhiveconfを使わない方がいいようです。
LanguageManual VariableSubstitution
公式ドキュメントを読むとユーザ変数は、hivevar、system、envを使うとなってます。

hivevarを使うメリットとしては、namespaceが不要で${var}のみで変数展開できるところでしょうか。hiveconfの場合は${hiveconf:var}となりコードがやや読み辛くなります。

hive (testdb)> set hiveconf:var01=aaa;
hive (testdb)> set hivevar:var01=bbb;
hive (testdb)> select '${var01}';
OK
bbb
Time taken: 0.769 seconds, Fetched: 1 row(s)
hive (testdb)> select '${hiveconf:var01}';
OK
aaa
Time taken: 0.521 seconds, Fetched: 1 row(s)



関連記事

Comment

(編集・削除用)
管理者にだけ表示を許可

Trackback

URL
https://nosource.blog.fc2.com/tb.php/168-ca927fab
この記事にトラックバック(FC2Blog User)

カテゴリ

Amazon

アクセスランキング

[ジャンルランキング]
コンピュータ
249位
アクセスランキングを見る>>

[サブジャンルランキング]
プログラミング
38位
アクセスランキングを見る>>

RSSリンクの表示

ブロとも申請フォーム

Copyright © nopgm