<@U0A71G31CDV> CN모드로 S3랑 함께할때 Parquet파일 합치는건 자동으로 ...
# questions-and-troubleshooting
s
@Rocky CN모드로 S3랑 함께할때 Parquet파일 합치는건 자동으로 수행하나?
r
네, StarRocks의 *공유 데이터(Shared-data) 아키텍처(CN 모드)*에서 S3와 같은 객체 스토리지를 사용할 때, 데이터 파일(Parquet 등 내부 포맷)의 병합(Compaction)은 자동으로 수행됩니다. 주요 작동 방식과 특징은 다음과 같습니다. 1. 자동 수행 메커니즘 공유 데이터 모드에서는 FE(Frontend)가 전체적인 컴팩션 스케줄링을 담당하고, CN(Compute Node)이 실제 병합 작업을 실행합니다. * 스코어링: FE는 각 파티션의 데이터 버전(Rowset) 개수를 바탕으로 '컴팩션 점수(Compaction Score)'를 계산합니다. * 자동 트리거: 점수가 임계치(기본값 10)를 넘으면 FE가 자동으로 컴팩션 작업을 생성하여 CN에게 할당합니다. * 백그라운드 실행: CN은 할당받은 작업을 백그라운드 스레드에서 실행하여 작은 파일들을 더 큰 파일로 병합하고 S3에 다시 저장합니다. 2. 주요 제어 파라미터 자동으로 수행되지만, 시스템 부하에 따라 다음 파라미터로 속도를 조절할 수 있습니다. * FE 설정 (
lake_compaction_max_tasks
):
클러스터 전체에서 동시에 실행될 수 있는 최대 컴팩션 작업 수입니다. 기본값 `-1`은 CN 노드 수에 맞춰 자동 조절됨을 의미합니다. * CN 설정 (
compact_threads
):
각 CN 노드에서 컴팩션을 위해 사용하는 스레드 수입니다. (기본값 4) 3. 모니터링 방법 컴팩션이 잘 이루어지고 있는지 확인하려면 다음 SQL을 사용할 수 있습니다 (v3.1+ 기준): * 파티션 상태 확인:
SELECT * FROM information_schema.partitions_meta
(AvgCS, MaxCS 점수 확인) * 진행 중인 작업 확인:
SELECT * FROM information_schema.be_cloud_native_compactions
요약 따라서 사용자가 수동으로 파일을 합칠 필요가 없으며, 시스템이 데이터 최적화를 위해 백그라운드에서 자동으로 관리합니다. 만약 데이터 로딩 직후 쿼리 성능을 위해 즉시 병합하고 싶다면
ALTER TABLE ... COMPACT
명령어를 통해 수동으로 트리거할 수도 있습니다. 참고: StarRocks Compaction for Shared-data Referencesadministration/management/compaction.mdknowledge/admin_and_operation/shared_data_compaction.md