s3_base
s3 테이블 함수와 S3 테이블 엔진, 그리고 이들과 구성을 공유하는 테이블 함수(s3Cluster, gcs, oss)에서 상대 URL을 해석하는 데 사용하는 기준 URL입니다.
설정하면 스킴이 없는 URL은 url_base와 동일한 규칙에 따라 RFC 3986에 따라 s3_base를 기준으로 해석됩니다. 이미 스킴이 포함된 URL은 그대로 사용됩니다.
예를 들어 s3_base가 s3://clickhouse-public-datasets/이면 s3('hits_compatible/hits.csv')는 s3://clickhouse-public-datasets/hits_compatible/hits.csv를 읽습니다.
기준 URL에는 s3 테이블 함수가 허용하는 모든 형식을 사용할 수 있습니다. 예: s3://bucket/, https://bucket.s3.amazonaws.com/ 또는 https://endpoint/bucket/.
s3_check_objects_after_upload
업로드 성공 여부를 확인하기 위해 S3에 업로드된 각 객체에 대해 HEAD 요청을 수행합니다s3_connect_timeout_ms
S3 디스크의 호스트에 대한 연결 타임아웃입니다.s3_create_new_file_on_insert
S3 엔진 테이블에서 각 삽입 시 새 파일을 생성할지 여부를 설정합니다. 활성화하면 각 삽입마다 key를 사용해 다음 패턴과 유사한 새 S3 객체가 생성됩니다. initial:data.Parquet.gz -> data.1.Parquet.gz -> data.2.Parquet.gz 등
가능한 값:
- 0 —
INSERT쿼리는 새 파일을 생성하며, 파일이 이미 존재하고 s3_truncate_on_insert가 설정되지 않은 경우 실패합니다. - 1 —
INSERT쿼리는 s3_truncate_on_insert가 설정되지 않은 경우 각 삽입마다 suffix를 사용해(두 번째 파일부터) 새 파일을 생성합니다.
s3_ignore_file_doesnt_exist
특정 키를 읽을 때 파일이 존재하지 않으면 해당 파일의 부재를 무시합니다. 가능한 값:- 1 —
SELECT는 빈 결과를 반환합니다. - 0 —
SELECT는 예외를 발생시킵니다.
s3_list_object_keys_size
ListObject 요청으로 한 번에 반환할 수 있는 최대 파일 수s3_min_upload_part_size
S3에 멀티파트 업로드를 수행할 때 업로드할 파트의 최소 크기입니다.s3_path_filter_limit
글롭 목록 조회 대신 파일 반복 처리에 사용하기 위해 쿼리 필터에서 추출할 수 있는_path 값의 최대 개수입니다.
0은 비활성화를 의미합니다.
s3_request_timeout_ms
S3로 데이터를 송수신할 때의 유휴 상태 타임아웃입니다. 단일 TCP read 또는 write 호출이 이 시간 동안 블로킹되면 실패합니다.s3_skip_empty_files
S3 엔진 테이블에서 빈 파일을 건너뛸지 여부를 설정합니다. 가능한 값:- 0 — 빈 파일이 요청한 포맷과 호환되지 않으면
SELECT가 예외를 발생시킵니다. - 1 — 빈 파일에 대해
SELECT는 빈 결과를 반환합니다.
s3_slow_all_threads_after_network_error
true로 설정하면 동일한 백업 엔드포인트로 S3 요청을 수행하는 스레드 중 하나에서
socket timeout과 같은 재시도 가능한 네트워크 오류가 발생한 후,
해당 엔드포인트로 S3 요청을 수행하는 모든 스레드의 처리가 느려집니다.
false로 설정하면 각 스레드는 다른 스레드와 관계없이 S3 요청의 백오프를 개별적으로 처리합니다.
s3_strict_upload_part_size
S3에 멀티파트 업로드를 수행할 때 업로드할 파트의 정확한 크기입니다(일부 구현은 가변 크기의 파트를 지원하지 않습니다).s3_throw_on_zero_files_match
ListObjects 요청으로 일치하는 파일을 하나도 찾지 못하면 오류를 발생시킵니다s3_truncate_on_insert
S3 엔진 테이블에서 삽입 전에 truncate를 수행할지 설정합니다. 비활성화하면 S3 객체가 이미 존재할 경우 삽입을 시도할 때 예외가 발생합니다. 가능한 값:- 0 —
INSERT쿼리는 새 파일을 생성하거나, 파일이 이미 존재하고 s3_create_new_file_on_insert가 설정되어 있지 않으면 실패합니다. - 1 —
INSERT쿼리는 파일의 기존 내용을 새 데이터로 대체합니다.
s3_uri_style
S3 endpoint 스타일을 강제로 지정합니다. 가능한 값: auto, virtual_hosted, path.s3_use_adaptive_timeouts
true로 설정하면 모든 S3 요청에 대해 처음 두 번의 시도는 낮은 송신 및 수신 타임아웃으로 수행됩니다.
false로 설정하면 모든 시도가 동일한 타임아웃으로 수행됩니다.