Apache Hudi: The Definitive Guide
by Shiyan Xu, Prashant Wason, Bhavani Sudha Saktheeswaran, Rebecca Bilbro
5장. 인덱싱으로 효율성 달성하기
이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com
레이크하우스는 쓰기 효율성과 쿼리 성능을 모두 유지하면서 복잡하고 종종 예측할 수 없는 변이 패턴을 가진 페타바이트 규모의 데이터세트를 관리할 수 있어야 합니다. 이러한 시스템은 분산형 스토리지에서 대규모로 운영되며 분석 및 트랜잭션 워크로드를 혼합하여 지원해야 합니다. 이러한 요구 사항을 충족하기 위해 레이크하우스 테이블에는 OLTP 데이터베이스와 유사한 다목적 인덱싱 기능이 필요합니다. 쓰기 경로에서는 새로운 쓰기가 발생할 때 인덱스를 유지 관리해야 하며, 대규모 데이터 세트에서 업데이트 및 삭제를 위해 기존 레코드를 효율적으로 찾는 데 사용해야 합니다. 읽기 경로에서 인덱스는 다양한 쿼리 패턴을 동일한 효율로 처리해야 합니다. 범위 술어는 파일 통계 정리, 동일성 술어는 인덱스 조회, 함수 기반 술어는 특수 표현식 처리의 이점을 누릴 수 있습니다.
이 글을 쓰는 현재, 색인 기능을 기본적으로 지원하는 레이크하우스 스토리지 시스템은 Apache Hudi가 유일합니다. 이 장에서는 Hudi가 인덱싱 기술을 사용하여 대규모 읽기 및 쓰기 작업의 성능을 유지하는 방법에 대해 설명합니다. 또한 인덱싱 전략을 올바르게 수립하는 것이 왜 실시간에 가까운 레이크하우스 성능을 가능하게 하는지에 대해서도 살펴봅니다. 다뤄보겠습니다:
-
레이크하우스 테이블 인덱싱의 필수 사항과 함께, 리더와 작성기의 인덱싱 기술이 어떻게 성능을 최적화하는지 살펴봅니다.
-
Hudi 메타데이터 테이블을 통한 멀티모달 인덱싱의 작동 방식과 지원되는 다양한 인덱스 유형에 대해 설명합니다.
-
스토리지 오버헤드 없이 쓰기 작업을 최적화하도록 특별히 설계된 작성자 측 인덱스와 각 인덱스의 선택 시점에 대한 가이드
이 장이 끝나면 Hudi의 강력하고 다양한 색인 기능을 포괄적으로 이해하게 될 것입니다. 더 중요한 것은 특정 워크로드를 분석하고 성능, 비용, 운영 복잡성 간의 장단점을 신중하게 비교하여 최적의 인덱스를 선택하는 방법을 배우게 된다는 것입니다. Hudi는 분산 스토리지에서 인덱싱을 구현하는 데 따르는 엄청난 엔지니어링 과제를 추상화하여 사용 사례에 가장 적합한 성능을 제공하는 더 높은 수준의 선택에 집중할 수 있도록 해줍니다.
Hudi의 인덱스 개요
Hudi의 인덱스는 크게 두 그룹으로 분류할 수 있습니다. 첫 번째는 메타데이터 테이블 내에 있는 멀티모달 인덱싱 하위 시스템으로, ...