Tech Tips

  1. プログラミング
  2. 1245 view

HiveでExternal Tableを削除する方法メモ

Gerd AltmannによるPixabayからの画像
HiveのExternal TableはDrop Tableだと、オリジナルのテーブルに書き込み権限があればオリジナルのテーブルが消えてしまう恐れがあり、権限がなければDrop TableしてもExternal Tableが消えません。 いろいろなサイトを見ても今自分がやっている方法にダイレクトに辿りつかなかったので、忘れる前にメモを残しておきます。
 ALTER TABLE old_dummy_table SET TBLPROPERTIES ( 'EXTERNAL'='FALSE');

 ALTER TABLE old_dummy_table SET LOCATION
 "hdfs:///user/zuqqhi2/tmp/dummy";

 ALTER TABLE old_dummy_table PARTITION (service_id = "1", dt
 >= "2019-01-01") SET LOCATION
 "hdfs:///user/zuqqhi2/tmp/dummy";

 ALTER TABLE old_dummy_table DROP PARTITION (service_id = "1",
 dt >= "2019-01-01");

 DROP TABLE old_dummy_table;
 
Partitionがあるテーブルを想定しているので、PartitionのLocationも変更していますが、もちろんPartitionがないテーブルならPartitionのLocation変更は不要です。 Alter TableでPartitionを選択する時には”=”以外にも”>=”や”<>”なども使えるので、複数のPartitionが設定されている時にはそれらの記号が非常に便利です。

プログラミングの最近記事

  1. M5Stack Core2 for AWS – ESP32 IoT開発キットで…

  2. D3.js v7 で点・線・テキスト・ツールチップ・ズームを設定する方法

  3. Amazon Lex V2 で入力させる内容を分岐する方法

  4. Google Calendar API で自分のカレンダーの予定を取得する方法

  5. LeetCode の問題リストページで Like/Dislike 数を表示するだけの雑な …

関連記事

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

PAGE TOP