메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다. 문의사항은 gooper@gooper.com로 메일을 보내주세요.


kudu kudu의 내부 table명 변경하는 방법

gooper 2022.11.10 10:44 조회 수 : 17

create문장으로 kudu table을 변경후 alter table로 table명을 변경하면 impala metastore에 저장된 테이블 명만 변경되고 hive.table_params에 된 kudu정보중 param_key='kudu.table_name'으로 param_value컬럼에 저장된 값은 바뀌지 않는다.

이 값을 변경하기 위해서는 먼저 kudu table 명을 변경후에 hive.table_params테이블의 kudu table 정보를 update해 주어야 한다.

예를 들어 test_db.table_table_tmp을 create한 후 test_db.table_table로 변경하는 방법은 다음과 같다. 


1. kudu table rename

sudo -u kudu kinit -kt /var/lib/keytab/kudu.keytab kudu

sudo -u kudu kudu table rename_table master1.gooper.com:7051,master2.gooper.com:7051,master3.gooper.com:7051 impala::test_db.table_table_tmp impala::test_db.table_table


2. hive metastore정보 변경

update hive.table_params set param_value='impala::test_db.table_table' where param_key='kudu.table_name' and param_value like 'impala::test_db.table_table_tmp';


3. invalidate metadata문을 수행하여 변경 사항을 반영할 수 있게 해준다. 

invalidate metadata est_db.table_table;

A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로