본문 바로가기
데엔(Data-Engineering)/하이브(Hive)

파티션

by KwonSoonBin 2022. 12. 30.
더보기

파티션은 데이터를 디렉토리로 분리하여 저장하는 것을 말한다. 하이브 같은 파일 기반 테이블은 기본적으로 테이블의 모든 roww 정보를 읽기 때문에 데이터가 많아지면 속도가 느려진다. 파티션 칼럼은 where 조건에서 컬럼 처럼 이용할 수 있기 때문에 처음에 읽어 들이는 데이터를 줄여서 처리 속도를 향상 시켜 준다.

파티션 종류

  • 고정 파티션(static)

고정 파티션은 테이블에 데이터를 입력하는 시점에 파티션 정보를 전달하기 때문에 입력되는 파티션을 알 수 있다.

  • 동적 파티션(dynamic)

동적 파티션은 칼럼의 정보를 이용하여 동적으로 파티션이 생성되기 때문에 쿼리 시점에는 파티션을 알 수 없다. 데이터를 입력할 때 고정 파티션, 동적 파티션을 단독으로 이용할 수도 있고, 고정과 동적 파티션을 혼합하여 사용할 수도 있다고 한다.

※주의※

하이브에서 동적 파티션을 이용하기 위해서는 hive.exec.dynamic.partition.mode설정을 nonstrict로 변경해야 한다.

-- 동적 파티션만을 이용하여 데이터를 입력을 사용하기 위한 설정, 기본값은 strict 로 동적
set hive.exec.dynamic.partition.mode=nonstrict;

'데엔(Data-Engineering) > 하이브(Hive)' 카테고리의 다른 글

Hive 동적 파티션 작업  (0) 2023.04.09
하이브란?  (0) 2022.12.30

댓글