Iceberg 최적화 프로세스
적응형 최적화 프로그램 Apache Iceberg는 데이터 파일을 지속적으로 감사하고 더 빠른 쿼리와 더 낮은 저장 비용을 위해 데이터 파일을 구성하고 저장하는 방식을 최적화하는 지능형 에이전트입니다.
Qlik은 Qlik 오픈 레이크하우스의 Iceberg 테이블의 성능과 관리 용이성을 향상시키기 위해 최적화 프로세스를 사용합니다. 이러한 프로세스는 효율적인 저장을 유지하고 최상의 쿼리 성능을 보장하도록 설계되었습니다. 백그라운드에서 레이크하우스를 자동으로 최적화함으로써 작업을 수동으로 모니터링하고, 문제를 해결하고, 유지 관리하는 데 따른 작업 오버헤드가 줄어듭니다.
적응형 최적화 프로그램
적응형 최적화 프로그램은 가장 큰 효과를 제공하는 Iceberg 테이블을 최적화하는 방법을 결정하기 위해 알고리즘 분석을 실행합니다. 에이전트는 Iceberg 데이터를 언제 어떻게 최적화할지 결정하고, 데이터 프로필, 테이블 속성, 행 수준 변경 빈도, 비용 및 성능 특성과 같은 요소를 기반으로 파일을 삭제할 시기를 계산합니다.
적응형 최적화 프로그램은 고급 알고리즘을 사용하여 이러한 요소를 지속적으로 평가하고 결합하여 각 테이블에 대해 가능한 가장 좋은 최적화를 생성하여 쿼리 속도를 높게 유지하고 저장 비용을 낮게 유지합니다. 수집 및 축약 중에 적응형 최적화 프로그램은 각 테이블을 분석할 필요 없이 테이블 통계를 수집하고 새로 고칩니다. 이러한 통계는 쿼리 엔진이 Iceberg 테이블에 대한 쿼리를 계획하고 실행하는 데 도움이 됩니다.
지능형 최적화는 데이터에 맞게 고유하게 조정되어 레이크 위생 및 쿼리 성능을 개선합니다. 데이터 레이크하우스에서는 모든 테이블이 동일하게 만들어지는 것은 아니므로 적응형 최적화 프로그램은 원시 데이터의 개별 특성에 맞게 조정됩니다. 각 테이블을 독특하게 구성, 구성, 최적화합니다.
다음 주요 최적화 프로세스는 Qlik에 의해 자동으로 수행되며 개입이 필요하지 않습니다.
연속 축약
축약 프로세스는 지속적으로 진행되며 스트리밍 데이터에 맞게 특별히 최적화되어 있지만 모든 워크로드를 지원합니다. 축약에는 다음이 포함됩니다.
-
모니터링 및 선택: 잠재적인 축약 기회를 정기적으로 확인합니다.
-
최적화 기준: 예측된 쿼리 성능 향상과 비용 절감 효과가 가장 큰 축약을 선택합니다. 이러한 결정은 축약을 수행하는 데 드는 비용에 상대적인 것으로, 이 접근 방식은 불필요한 계산 비용을 발생시키지 않고도 Iceberg 테이블이 쿼리 성능을 위해 최적화된 상태를 유지하도록 보장합니다.
스냅샷 만료
Iceberg 작업은 사용자 쿼리에 사용할 수 있는 새로운 스냅샷을 생성합니다. 스냅샷을 사용하면 시간 여행과 같은 기능을 사용할 수 있습니다. 하지만 이러한 스냅샷을 저장하면 저장 공간 요구 사항이 증가할 수 있습니다. 이를 관리하기 위해 Qlik은 자동으로 오래된 스냅샷을 제거합니다. 정리 프로세스는 몇 시간마다 실행되어 저장소 사용을 최적화하는 데 필요한 스냅샷만 보존됩니다.
쓸모없는 파일 정리
Iceberg 작업 중에 파일이 참조되지 않거나 "쓸모없는" 경우가 있습니다. 쓸모없는 파일이 누적되면 저장소 비용이 증가하게 됩니다. Qlik은 추가 저장 비용을 줄이기 위해 감지된 쓸모없는 파일을 매일 정리합니다. 정리 작업은 테이블 저장 위치에서 쓸모없는 파일을 자동으로 찾아 제거하여 깔끔하고 비용 효율적인 저장 환경을 유지합니다.