分享知识,分享快乐

0%

修改Kudu表名,和映射在impala的表名

修改Kudu表名,和映射在impala的表名

kudu的表名和impala的表名是两码事

修改kudu表名

方法一、在linux中kudu节点执行

1
kudu table rename_table 172.20.85.113:7051 impala::kd_baofoo_cm.cm_entry_tmp impala::kd_baofoo_cm.cm_entry

方法二、在presto中执行

1
ALTER TABLE kudu.default."impala::kd_baofoo_cm.cm_entry" RENAME TO kudu.default."impala::kd_baofoo_cm.cm_entry_tmp"

修改了kudu的表名后 在impala查询kudu会报错,需要修改

修改映射的impala表名

1
2
alter table kd_baofoo_cm.cm_entry set tblproperties('kudu.table_name'='impala::kd_baofoo_cm.cm_entry_tmp');
alter table kd_baofoo_cm.cm_entry rename to kd_baofoo_cm.cm_entry_tmp;

其他参考:改成外部表,删除重建。

1.将表从内部切换到外部,并删除。

1
2
alter table kd_baofoo_cm.cm_entry  set tblproperties('EXTERNAL'='true');
drop table kd_baofoo_cm.cm_entry

2.将kudu中的表映射到impala中:

1
2
3
4
5
6
CREATE EXTERNAL TABLE kd_baofoo_cm.cm_entry_tmp
STORED AS KUDU
TBLPROPERTIES (
'kudu.master_addresses' = 'cdh85-111:7051,cdh85-112:7051,cdh85-113:7051',
'kudu.table_name' = 'impala::kd_baofoo_cm.cm_entry_tmp'
);