S3 업로드 세션 설정

S3 업로드 세션 설정 (s3_upload_*)

이 페이지에서는 S3로 데이터를 업로드할 때의 동작을 제어하는 s3_upload_* 세션 설정들을 다뤄요. 사용할 체크섬 알고리즘과 업로드 파트 크기 증가 방식을 설정해요. 이 설정들은 system.settings 테이블에서 확인할 수 있으며 ClickHouse 소스에서 자동 생성돼요.

출처: 문서

본문

이 설정들은 system.settings에서 확인할 수 있으며 소스에서 자동 생성돼요.

s3_upload_checksum_algorithm

ClickHouse가 S3로 데이터를 업로드할 때 사용하는 체크섬 알고리즘이에요. CRC32SHA256은 유연한 x-amz-checksum-* 헤더로 전송되고, MD5Content-MD5 헤더로 전송돼요. 기본적으로 값은 비어 있고 ClickHouse는 AWS SDK가 Content-MD5를 계산하도록 해요. FIPS 모드에서는 MD5를 사용할 수 없으므로 SDK는 이를 조용히 생략하고 업로드에 체크섬이 전혀 없어져요. 대신 CRC32 또는 SHA256을 설정해서 유연한 체크섬을 붙여요. 이 설정이 적용되는 곳에서는 명시적 MD5가 거부돼요. S3 클라이언트가 생성될 때 적용되므로 s3 테이블 함수, BACKUP ... TO S3 같은 쿼리 범위 사용에 적용돼요. 이후의 쿼리별 SET은 S3 디스크 같은 이미 생성된 수명이 긴 클라이언트를 재구성하지 않아요. S3Express 버킷은 유연한 체크섬이 필요하며 Content-MD5를 받아들이지 않아요: 명시적 CRC32 또는 SHA256은 존중되고, 빈 값은 CRC32를 사용하며, 명시적 MD5는 거부돼요. GCS 엔드포인트(storage.googleapis.com)는 AWS x-amz-checksum-* 헤더를 실은 SigV4 서명 요청을 거부하므로 이 설정을 완전히 무시하고 SDK의 Content-MD5 동작을 유지해요. 서버 측 복사는 이 설정을 무시해요.

s3_upload_part_size_multiply_factor

S3에 대한 단일 쓰기에서 s3_multiply_parts_count_threshold 파트가 업로드될 때마다 s3_min_upload_part_size에 이 인자를 곱해요.

s3_upload_part_size_multiply_parts_count_threshold

이 횟수만큼 파트가 S3에 업로드될 때마다 s3_min_upload_part_sizes3_upload_part_size_multiply_factor에 곱해져요.

더 알아보기 (Learn more)