본문 바로가기
Data Engineering/Hive

[Hive] Table Migration 하기

by keyhong-DE 2023. 11. 26.

Hive Table Migration

1. 파티션 확인

show PARTITIONS <테이블명>;

2. External에서만 drop 하기 (메타 데이터 drop)

ALTER TABLE <테이블명> DROP IF EXISTS PARTITION (<파티션 컬럼> = <value>);
  • ☆ 주의점 !! : 만약 EXTERNAL='FALSE' 설정시 테이블을 drop하면 실제 물리적 파일도 같이 삭제된다.
  • 따라서 Internal에서 drop 하기 전에는 반드시 메타데이터와 실제 물리적 데이터의 연결을 해제해줘야 한다.
ALTER TABLE <테이블명> SET TBLPROPERTIES('EXTERNAL' = 'TRUE');

3. 테이블 이름 변경

ALTER TABLE <이전 테이블명> RENAME TO <새로운 테이블명>;

4. 기존 폴더에 있던 파일들을 새로 옮기려는 테이블의 경로로 물리적 파일을 Move

5. 파일 경로 설정

ALTER TABLE <새로운 테이블명> SET LOCATION <경로> 'hdfs:/DM/soss.db/DW_PCEL_TMZN_SXDS_AGGR_TY_STT'

6. 파티션 생성

ALTER TABLE <새로운 테이블명> ADD PARTITION (<파티션 컬럼명> = <value>);

7. Internal 파티션 폴더 통계 정보 기입

ANALYZE TABLE <새로운 테이블명> PARTITION (<파티션 컬럼> = <value>) COMPUTE STATISTICS;

'Data Engineering > Hive' 카테고리의 다른 글

[Hive] Bucketing & Table Sampling  (0) 2023.12.14
[Hive] 데이터베이스, 테이블 기본 명령어  (0) 2023.12.12
[Hive] Beeline 쿼리 실행  (0) 2023.11.26
[Hive] Architecture  (0) 2023.07.01
[Hive] 기본 개념 정리  (0) 2023.07.01