Hive 如何去除蜂巢桌扣

Hive 如何去除蜂巢桌扣,hive,hiveql,partitioning,hiveddl,Hive,Hiveql,Partitioning,Hiveddl,我错误地使用表stocks执行了以下ALTER语句: ALTER TABLE stocks CLUSTERED BY (exchange, symbol) INTO 48 BUCKETS; 如何撤消此命令?如果表是管理的,则将其设置为外部: ALTER TABLE stocks SET TBLPROPERTIES('EXTERNAL'='TRUE'); 描述表格并注明其位置、serde属性,并检查其是否为外部: describe formatted stocks; 然后删除表格并再次创

我错误地使用表
stocks
执行了以下
ALTER
语句:

ALTER TABLE stocks
CLUSTERED BY (exchange, symbol)
INTO 48 BUCKETS;

如何撤消此命令?

如果表是管理的,则将其设置为外部:

ALTER TABLE stocks SET TBLPROPERTIES('EXTERNAL'='TRUE');
描述表格并注明其位置、serde属性,并检查其是否为外部:

describe formatted stocks;  
然后删除表格并再次创建指定位置,数据将保留在外部表格中:

   DROP TABLE stocks; 

    CREATE EXTERNAL TABLE stocks(
            columns definition)
        STORED AS TEXTFILE --use the same DDL 
        location '/table_location_path'; --use the same path from describe table
或者,您可以创建另一个名称指向同一位置的表,检查它是否工作,将第一个表设置为外部表,将其删除,然后使用重命名第二个表


ALTER TABLE tablename RENAME TO stocks

您是否尝试创建一个新表,如
CREATE TABLE new\u TABLE as SELECT*从您的带扣\u表中
然后放下带扣\u表并重命名新的\u表您无法
撤消ALTER