Program Tip

Hive 파티션을 업데이트 / 드롭하는 방법?

programtip 2020. 12. 14. 20:48
반응형

Hive 파티션을 업데이트 / 드롭하는 방법?


Hive외부 테이블파티션을 추가 한 후 어떻게 업데이트 / 삭제할 수 있습니까?


예를 들어 다음과 같이 Hive 파티션을 업데이트 할 수 있습니다.

ALTER TABLE logs PARTITION(year = 2012, month = 12, day = 18) 
SET LOCATION 'hdfs://user/darcy/logs/2012/12/18';

이 명령은 이전 데이터를 이동하지 않으며 이전 데이터를 삭제하지도 않습니다. 단순히 파티션을 새 위치로 설정합니다.

파티션을 삭제하려면 다음을 수행하십시오.

ALTER TABLE logs DROP IF EXISTS PARTITION(year = 2012, month = 12, day = 18);

도움이 되었기를 바랍니다.


또한 하나의 문에서 여러 파티션을 삭제할 수 있습니다 ( Impala / Hive에서 여러 파티션 삭제 ).

위 링크에서 추출 :

hive> alter table t drop if exists partition (p=1),partition (p=2),partition(p=3);
Dropped the partition p=1
Dropped the partition p=2
Dropped the partition p=3
OK

편집 1 :

또한 조건 기호 (>, <, <>)를 사용하여 대량으로 삭제할 수 있습니다. 예를 들면 다음과 같습니다.

Alter table t 
drop partition (PART_COL>1);

외부 파티션이있는 폴더에 파일을 복사하거나

INSERT OVERWRITE TABLE tablename1 PARTITION (partcol1=val1, partcol2=val2...)...

성명서.

참고 URL : https://stackoverflow.com/questions/13815179/how-to-update-drop-a-hive-partition

반응형