impala+kudu 修改内部表表名详细步骤。

背景:因为感觉有的表数据量不是很大,hash分区给到16个不合理,而且,在mysqlbinlog、PG CDC kafka 方式实时录入kudu,磁盘IO很高,怀疑是这个问题,就将表重建 hash分区给到4个。

然鹅,在操作过程中遇到一些问题,起初建表都是直接impala 建的内部表,更改表名的时候一直不给通过。下面给一个详细步骤,一步都不能少。

1、将内部表更改为外部表(impala 操作)

alter table ods_old_table_name set tblproperties('EXTERNAL'='true');

2、更改表名(impala操作)

ALTER TABLE ods_old_table_name rename to ods_new_table_name;

3、查看新表的建表语句,必须执行(impala操作)

show create table ods_new_table_name;

4、更改kudu 里面imala::kudu表名(kudu master服务器操作)

kudu table rename_table master2 impala::kudu.ods_old_table_name impala::kudu.ods_new_table_name

5、更改impala 建表语句中的kudu.name(impala操作)

alter table ods_new_table_nameset set tblproperties('kudu.table_name'='impala::kudu.ods_new_table_name');

6、更改回表为内部表(impala操作)

alter table ods_new_table_name set tblproperties('EXTERNAL'='false');

posted @ 2022-07-01 14:53  Family_zp  阅读(135)  评论(0)    收藏  举报