[논문 리뷰] DualTable: A Hybrid Storage Model for Update Optimization in Hive
DualTable는 HDFS를 사용해 효율적인 배치 스캔을, HBase를 사용해 빠른 랜덤 왤을 지원하는 하이브리드 스토리지 모델로, Hive가 쿼리 성능을 희생시키지 않고도 업데이트 및 삭제 작업을 효율적으로 지원할 수 있도록 한다. 실험 결과, 표준 Hive 대비 업데이트 및 삭제 작업을 최대 10배 빠르게 처리함을 입증하였다.
Hive is the most mature and prevalent data warehouse tool providing SQL-like interface in the Hadoop ecosystem. It is successfully used in many Internet companies and shows its value for big data processing in traditional industries. However, enterprise big data processing systems as in Smart Grid applications usually require complicated business logics and involve many data manipulation operations like updates and deletes. Hive cannot offer sufficient support for these while preserving high query performance. Hive using the Hadoop Distributed File System (HDFS) for storage cannot implement data manipulation efficiently and Hive on HBase suffers from poor query performance even though it can support faster data manipulation.There is a project based on Hive issue Hive-5317 to support update operations, but it has not been finished in Hive's latest version. Since this ACID compliant extension adopts same data storage format on HDFS, the update performance problem is not solved. In this paper, we propose a hybrid storage model called DualTable, which combines the efficient streaming reads of HDFS and the random write capability of HBase. Hive on DualTable provides better data manipulation support and preserves query performance at the same time. Experiments on a TPC-H data set and on a real smart grid data set show that Hive on DualTable is up to 10 times faster than Hive when executing update and delete operations.
연구 동기 및 목표
- 기업 환경에서 전통적인 RDBMS로의 마이그레이션을 방해하는 Hive의 효율적인 업데이트 및 삭제 지원 부족 문제를 해결하기 위해.
- 복잡한 기업 워크로드에서 빠른 업데이트와 높은 쿼리 성능이 동시에 요구되는 상황에서 HDFS(랜덤 왤 불가)와 HBase(배치 스캔 느림)의 한계를 극복하기 위해.
- 비용과 액세스 패턴에 기반해 데이터를 HDFS 또는 HBase에 선택적으로 저장함으로써 혼합 워크로드에 최적화된 성능을 달성하는 스토리지 모델을 설계하기 위해.
- 스마트 그리드 애플리케이션과 같이 데이터 조작 작업 비율이 높은 복잡한 저장 프로시저를 효율적으로 실행할 수 있도록 하기 위해.
- ACID 확장 기능이 아직 완료되지 않은 상황에서도 Hive의 확장성과 저비용 배포 특성을 유지하면서 업데이트 및 삭제에 대한 ACID 유사 기능을 추가하기 위해.
제안 방법
- DualTable는 신규 레코드를 효율적인 배치 스캔을 위해 HDFS에 쓰고, 업데이트는 랜덤 왤 성능을 위해 HBase에 델타 레코드로 저장하는 하이브리드 스토리지 아키텍처를 사용한다.
- 동적 비용 모델은 워크로드 특성과 성능 트레이드오���을 고려해 각 데이터 수정 작업에 대해 HDFS 또는 HBase 중 최적의 저장 위치를 결정한다.
- 시스템은 HDFS 또는 HBase에 변경 사항을 적용함으로써 UPDATE 및 DELETE 작업을 지원하며, 쿼리 엔진이 두 스토리지 계층에 대해 투명하게 액세스하도록 쿼리 재작성 기능을 제공한다.
- 모델은 Hive의 실행 엔진과 통합되어 표준 HiveQL 쿼리가 HDFS와 HBase에서 동시에 데이터에 액세스할 수 있도록 하며, 스키마나 쿼리 변경 없이도 가능하다.
- 전체 실행 효율성을 향상시키기 위해 기존의 Hive 최적화 기법(쿼리 재작성, DAG 구조 최적화 등)을 활용한다.
- HDFS에 대한 INSERT OVERWRITE나 HBase에 대한 직접 DML 연산을 통해 증분 데이터 조작을 지원함으로써, 전체 파일 재작성 대비 I/O 오버헤드를 최소화한다.
실험 결과
연구 질문
- RQ1Hive가 배치 쿼리 성능을 희생시키지 않고도 업데이트 및 삭제 작업을 어떻게 효율적으로 지원할 수 있는가?
- RQ2혼합 분석 및 운영 워크로드에 적합한 HDFS(빠른 스캔)와 HBase(빠른 랜덤 왤)의 강점을 균형 잡는 하이브리드 스토리지 전략은 무엇인가?
- RQ3비용 기반 동적 라우팅 메커니즘이 I/O와 실행 시간을 최소화하기 위해 업데이트를 HDFS 또는 HBase에 저장할지 효과적으로 결정할 수 있는가?
- RQ4실제 기업 워크로드에서 데이터 조작 작업 비율이 높은 상황에서 제안된 DualTable 모델은 어떤 성능을 보이는가?
- RQ5기존의 Hive INSERT OVERWRITE 기반 업데이트 패턴에 비해 DualTable은 I/O 오버헤드를 얼마나 줄일 수 있는가?
주요 결과
- DualTable는 동일한 하드웨어에서 표준 Hive 대비 업데이트 및 삭제 작업을 최대 10배 빠르게 처리하며, 특히 복잡한 워크로드에서 뚜렷한 성능 향상을 보였다.
- TPC-H 벤치마크와 실제 스마트 그리드 데이터에서 DualTable은 업데이트 중심 시나리오에서 Hive를 크게 앞서며, 실행 시간을 수시간에서 수분 이내로 단축시켰다.
- 읽기 중심 작업에서 HDFS의 효율적인 배치 스캔 기능을 활용함으로써 하이브리드 모델은 높은 쿼리 성능을 유지한다.
- 비용 기반 라우팅 메커니즘이 왤 성능과 쿼리 효율성의 균형을 효과적으로 유지하며 불필요한 데이터 이동을 최소화한다.
- 소규모 업데이트에 대해 전체 파일 재작성 방식을 피함으로써 기존 Hive 업데이트 패턴의 주요 병목 현상인 I/O 오버헤드를 줄였다.
- DualTable는 스마트 미터 1,700만대 이상, 월간 600억 건 이상의 측정 데이터를 처리하는 스마트 그리드 애플리케이션과 같은 기업 규모의 애플리케이션에서, 엄격한 시간 창(예: 오전 1시~오전 7시) 내에 복잡한 저장 프로시저를 완료할 수 있도록 한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.