hive에서 테이블의 파티션 드랍시에 비교 연산자를 이용 할 수 있는데,
이때 DDLTask Exception null 오류가 발생하는 경우가 있다.
ALTER TABLE table1 DROP PARTITION (partCol<='20170206');
hive cli 에서는 오류를 정확하게 출력하지 않아서 알 수가 없는데,
로그를 확인해 보면 StackOverflow 오류이다.
파티션의 개수가 많아서 한번에 여러개를 recursive 하게 지우려고 해서 발생하는 것이다.
따라서 한번에 지우는 파티션의 개수를 줄여서 처리하면 된다.
한달 단위 또는 주단위로 지우면 된다.
반응형
'빅데이터 > hive' 카테고리의 다른 글
[hive] 하이브 성능 최적화 방안 (0) | 2017.12.26 |
---|---|
[hive] explode, lateral view 사용 예제 (0) | 2017.12.26 |
[hive] 정규식을 이용하여 문자열 검색 (0) | 2017.12.14 |
[hive] JSON 문자열을 맵으로 변환(json string to map) (0) | 2017.12.12 |
[hive] 하이브 성능 개선#1 - CBO, Stat 를 이용하여 통계 쿼리 성능 개선 (0) | 2017.11.29 |