파일 시스템 캐시 관련 설정

파일 시스템 캐시 관련 설정

파일 시스템 캐시의 동작을 세밀하게 제어하는 설정들이에요. 백그라운드 다운로드, 캐시 정렬, 세그먼트 배치 크기, 다운로드 최대 크기, 공간 예약 대기 시간 등을 다룬답니다. 이 설정들은 system.settings 테이블에서 확인할 수 있고 소스 코드에서 자동 생성된 값들이에요.

출처: 문서

본문

이 설정들은 system.settings에서 확인할 수 있고, 소스 코드에서 자동 생성된 값들이에요.

filesystem_cache_allow_background_download

파일 시스템 캐시가 원격 스토리지에서 읽은 데이터의 백그라운드 다운로드를 대기열에 넣을 수 있게 해요. 현재 쿼리/세션의 다운로드를 포그라운드로 유지하려면 비활성화하세요.

filesystem_cache_boundary_alignment

파일 시스템 캐시 경계 정렬이에요. 비-디스크 읽기(예: 원격 테이블 엔진/테이블 함수의 캐시)의 경우 0은 정렬 없음을 의미해요. 디스크 읽기(예: 캐시가 있는 디스크의 MergeTree 테이블)의 경우 0은 캐시 구성의 boundary_alignment이 사용됨을 의미해요.

filesystem_cache_enable_background_download_during_fetch

ClickHouse Cloud에서만 효과가 있어요. 파일 시스템 캐시에서 공간 예약을 위해 캐시를 잠글 때까지의 대기 시간이에요.

filesystem_cache_enable_background_download_for_metadata_files_in_packed_storage

ClickHouse Cloud에서만 효과가 있어요. 파일 시스템 캐시에서 공간 예약을 위해 캐시를 잠글 때까지의 대기 시간이에요.

filesystem_cache_max_download_size

단일 쿼리가 다운로드할 수 있는 최대 원격 파일 시스템 캐시 크기예요.

filesystem_cache_name

stateless 테이블 엔진이나 데이터 레이크에 사용할 파일 시스템 캐시 이름이에요.

filesystem_cache_prefer_bigger_buffer_size

파일 시스템 캐시가 활성화되어 있을 때 더 큰 버퍼 크기를 선호해요. 캐시 성능을 떨어뜨리는 작은 파일 세그먼트를 쓰는 것을 피하기 위함이에요. 반면 이 설정을 켜면 메모리 사용량이 증가할 수 있어요.

filesystem_cache_reserve_space_wait_lock_timeout_milliseconds

파일 시스템 캐시에서 공간 예약을 위해 캐시를 잠글 때까지의 대기 시간이에요.

filesystem_cache_segments_batch_size

읽기 버퍼가 캐시에 요청할 수 있는 단일 배치 파일 세그먼트 크기의 제한이에요. 너무 낮으면 캐시에 대한 요청이 과도해지고, 너무 크면 캐시에서의 eviction이 느려질 수 있어요.

filesystem_cache_skip_download_if_exceeds_per_query_cache_write_limit

별칭: skip_download_if_exceeds_query_cache

쿼리 캐시 크기를 초과하면 원격 파일 시스템에서 다운로드를 건너뛰어요.

filesystem_cache_verbose_logging

모든 파일 시스템 캐시 버퍼 리필에 대해 TEST-레벨 로그 메시지를 생성해요(읽기 상태, 읽어야 할 남은 크기, 읽은 바이트). 디버깅 전용이에요. 메시지는 읽기마다 한 번씩 포맷되므로, 작은 캐시 읽기를 많이 하는 쿼리에서 이를 켜면 많은 로깅 오버헤드가 추가돼요. 메시지는 로그 레벨이 어쨌든 test일 때만 보여요(send_logs_level 참조).

filesystem_cache_wait_for_concurrent_download_timeout_milliseconds

동시 쿼리가 파일 시스템 캐시로 다운로드 중인 파일 세그먼트를 기다리는 최대 시간이에요. 타임아웃에 도달하면 해당 범위의 읽기는 파일 시스템 캐시를 우회하고 원격 스토리지에서 직접 읽으며, 동시 다운로드는 계속 캐시를 채워요. 값 0은 전혀 기다리지 않음을 의미해요. 필요한 범위가 아직 다운로드되지 않았으면 즉시 캐시를 우회해요. 이 값을 낮추면, 그렇지 않으면 다른 쿼리의 다운로드 속도를 기다리게 되는 캐시 적중 읽기의 꼬리 지연을 제한하지만, 원격 스토리지에 대한 추가 요청 비용이 들어요.

더 알아보기 (Learn more)