目標はHiveスキーマを破棄することですが、データは下に保持します。
たとえばスクリプト1で作成されたHive外部テーブルを指定すると、スクリプト2でドロップできます。これにより、データが削除されます(/user/me/data/
フォルダーが削除されます)。このフォルダは、他のプロジェクトで使用するために残しておく必要があります。
長い検索ではこれまで何も得られません...
スクリプト1:外部テーブルを作成する
CREATE EXTERNAL TABLE external_Hive_table(
column1 STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY
'\t'
STORED AS TEXTFILE
LOCATION
'/user/me/data/'
TBLPROPERTIES (
"skip.header.line.count"="1");
スクリプト2:外部テーブルのドロップ(データのドロップ)
ALTER TABLE
external_Hive_table
SET TBLPROPERTIES (
'EXTERNAL'='FALSE');
DROP TABLE external_Hive_table;
編集:スクリプト3:外部テーブルを削除(データを保持)
DROP TABLE external_Hive_table;
このステートメントのみを使用してください(alter tableなし):
DROP TABLE external_Hive_table;
iF WE are drop external table it drop drop data will be available in HDFS schema is deleted。Script 2:外部テーブルの削除(データの削除)
ALTER TABLE external_Hive_table SET TBLPROPERTIES( 'EXTERNAL' = 'FALSE');
DROP TABLE external_Hive_table