Impala无法删除外部表

时间:2017-02-08 06:27:05

标签: sql hdfs cloudera-cdh impala

我使用错误的(不存在的)路径创建外部表:

create external table IF NOT EXISTS ds_user_id_csv
(
    type string,
    imei string,
    imsi string,
    idfa string,
    msisdn string,
    mac string
)
PARTITIONED BY(prov string,day string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
stored as textfile
LOCATION 'hdfs://cdh0:8020/user/hive/warehouse/test.db/ds_user_id';

我不能放弃桌子:

[cdh1:21000] > drop table ds_user_id_csv
         > ;
Query: drop table ds_user_id_csv
ERROR:
ImpalaRuntimeException: Error making 'dropTable' RPC to Hive Metastore:
CAUSED BY: MetaException: java.lang.IllegalArgumentException: Wrong FS: hdfs://cdh0:8020/user/hive/warehouse/test.db/ds_user_id, expected: hdfs://nameservice1

那么如何解决这个问题?谢谢。

1 个答案:

答案 0 :(得分:2)

使用以下命令更改位置

ALTER TABLE name ds_user_id_csv SET LOCATION '{new location}';