더북(TheBook)

5.4.1.3 Parquet

ORC 파일 포맷과 달리21 Parquet 포맷(http://mng.bz/3IOo)은 별개의 프로젝트로 개발됐다가 이후 하이브와 통합됐다. Parquet는 불필요한 의존 관계를 가지지 않으며 특정 프레임워크에 종속되지 않도록 설계되었다. 이러한 독립성 덕분에 하둡 생태계에서는 ORC 포맷보다 Parquet 포맷을 더 널리 사용한다.

ORC와 마찬가지로 Parquet도 칼럼형 파일 포맷이며 데이터를 압축할 수 있다. 다만 칼럼별로 압축 방식을 지정할 수 있다는 점에서 ORC와 다르다. 또 Parquet는 중첩된(nested) 복합 데이터 구조에 중점을 두고 설계되어서 ORC 파일 포맷보다 이러한 중첩 구조의 데이터셋을 더 효율적으로 다룰 수 있다. Parquet는 LZO, Snappy, GZIP 등 압축 라이브러리를 지원한다. 그리고 각 칼럼의 청크별로 최솟값과 최댓값의 통계를 저장해 쿼리를 실행할 때 일부 데이터를 건너뛸 수 있도록 연산을 최적화한다. 스파크는 Parquet를 기본 데이터 소스로 사용한다.

 

21 역주 ORC는 호튼웍스의 오웬 오말리가 하이브 버전 0.11.0의 일부 기능(HIVE-3874)으로 개발했다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.