s3queue_* 서버 설정

s3queue_* 서버 설정

이 설정들은 ClickHouse 서버의 S3Queue 테이블 동작과 s3queue_log 시스템 테이블 구성을 제어해요. ClickHouse 소스 코드에서 자동으로 생성된 참조 문서예요.

출처: 문서

본문

이 설정들은 ClickHouse 서버를 구성하며 ClickHouse 소스 코드에서 자동으로 생성돼요.

s3queue_disable_streaming

테이블이 생성되어 있고 materialized view가 연결되어 있어도 S3Queue에서 스트리밍을 비활성화해요.

s3queue_log

s3queue_log 시스템 테이블의 설정이에요.

다음 설정은 하위 태그로 구성할 수 있어요:

설정 설명 기본값 참고
database 데이터베이스 이름.
table 시스템 테이블 이름.
engine 시스템 테이블의 MergeTree 엔진 정의. partition_by 또는 order_by가 정의되어 있으면 사용할 수 없어요. 지정하지 않으면 기본으로 MergeTree가 선택돼요
partition_by 시스템 테이블의 사용자 지정 파티셔닝 키. 시스템 테이블에 engine이 지정되어 있으면 partition_by 파라미터를 'engine' 안에 직접 지정해야 해요
ttl 테이블 TTL 지정. 시스템 테이블에 engine이 지정되어 있으면 ttl 파라미터를 'engine' 안에 직접 지정해야 해요
order_by 시스템 테이블의 사용자 지정 정렬 키. engine이 정의되어 있으면 사용할 수 없어요. 시스템 테이블에 engine이 지정되어 있으면 order_by 파라미터를 'engine' 안에 직접 지정해야 해요
storage_policy 테이블에 사용할 스토리지 정책 이름(선택). 시스템 테이블에 engine이 지정되어 있으면 storage_policy 파라미터를 'engine' 안에 직접 지정해야 해요
settings MergeTree 동작을 제어하는 추가 파라미터(선택). 시스템 테이블에 engine이 지정되어 있으면 settings 파라미터를 'engine' 안에 직접 지정해야 해요
flush_interval_milliseconds 메모리 버퍼에서 테이블로 데이터를 플러시하는 주기. 7500
max_size_rows 로그의 최대 라인 수. 플러시되지 않은 로그가 max_size에 도달하면 로그가 디스크로 덤프돼요. 1048576
reserved_size_rows 로그를 위해 미리 할당하는 메모리 크기(라인 수). 8192
buffer_size_rows_flush_threshold 라인 수 임계값. 이 임계값에 도달하면 로그를 디스크로 플러시하는 작업이 백그라운드에서 시작돼요. max_size_rows / 2
flush_on_crash 크래시 발생 시 로그를 디스크로 덤프할지 여부. false

또한 모든 시스템 로그 테이블의 기본 플러시 정책을 제어하는 서버 수준 설정이 있어요:

<default_system_log_flush_policy>
    <skip_alias_columns>true</skip_alias_columns>
</default_system_log_flush_policy>
설정 설명 기본값
skip_alias_columns true이면 ALIAS 열이 시스템 로그 테이블 스키마에서 제외돼요. S3 기반 시스템 로그에 필요해요. false

기본 설정은 다음과 같아요:

<s3queue_log>
    <database>system</database>
    <table>s3queue_log</table>
    <partition_by>toYYYYMM(event_date)</partition_by>
    <flush_interval_milliseconds>7500</flush_interval_milliseconds>
</s3queue_log>

더 알아보기 (Learn more)