본문 바로가기
빅데이터/hive

[하이브] 파티션 복구 하기(repair partitions)

by hs_seo 2016. 7. 11.

하이브는 기본적으로 폴더 구조이기 때문에

다른쪽에서 처리한 데이터나, 기존에 백업해둔 파일을 복사해서

사용할 수도 있다.


hadoop fs -put 명령을 이용하여 기존 파티션 위치에 동일하게 복사하면,

데이터 조회가 가능하다.


이때 기존에 등록되어 있던 파티션인 경우는 상관없지만,

추가되는 경우 파티션을 새로 등록해주어야 한다.


ALTER TABLE ADD PARTITION

명령으로 개별적으로 추가해 줄 수도 있지만,

추가해야할 파티션이 많은 경우 다음의 명령을 이용하여 한꺼번에 처리하면 된다.


MSCK REPAIR TABLE table_name;

ALTER TABLE table_name RECOVER PARTITIONS;


위의 두 명령중 하나를 이용하면 테이블의 로케이션을 검색하여 파티션을 추가해준다.


AWS EMR 에서는 아래의 명령은 동작하지 않으므로, 위의 명령을 이용한다.

데이터가 많을 경우 처리에 시간이 좀 걸린다.




반응형