0

ハイブに外部テーブルがあり、その場所を毎日変更したいと考えています。ハイブスクリプトで直接以下のようなことをしたい:

 set current_day = from_unixtime(unix_timestamp(), 'yyyy_mm_dd');
 ALTER TABLE myTable ADD PARTITION (dt=${hiveconf:current_day})
 LOCATION concat('s3://.../',${hiveconf:current_day});

Hive の正しいスクリプトを教えてください。

ベスト、

4

1 に答える 1

0

この pythonスクリプト
を見 てください。外部テーブルのルートの場所に新しいフォルダーが作成されるたびに、外部テーブルの新しいパーティションを作成する必要があります。

スクリプトがニーズに合わない場合は、正しい文字列形式で日付を受け入れて実行する簡単な bash スクリプトをいつでも作成できます。

hive -e "use myDB; alter table myTable add partition ($SOMEDATE);"

次に、このスクリプトを に追加crontabして、毎日実行できます。

于 2013-10-05T12:16:01.290 に答える