Skip to main content

Descrição

Contém informações sobre todas as configurações do cache do sistema de arquivos

Colunas

  • cache_name (String) — Nome do cache
  • path (String) — Caminho do diretório do cache
  • max_size (UInt64) — Tamanho máximo do cache
  • max_elements (UInt64) — Número máximo de elementos do cache, por exemplo, segmentos de arquivo (limita o número de arquivos no filesystem)
  • max_file_segment_size (UInt64) — Tamanho máximo de um único segmento de arquivo
  • boundary_alignment (UInt64) — Alinhamento de segmento de arquivo
  • reserve_granularity (UInt64) — Tamanho máximo a ser reservado antecipadamente além do tamanho já baixado de um segmento de arquivo, para adquirir o bloqueio do cache com menos frequência. Começa em 0 para cada leitor/escritor e cresce a cada nova reserva até atingir esse valor. 0 desabilita a reserva antecipada.
  • cache_on_write_operations (UInt8) — Habilita o cache write-through (cache em INSERT e MERGE)
  • cache_policy (String) — política de cache
  • slru_size_ratio (Float64) — Razão de tamanho da política de cache SLRU entre elementos protegidos e probatórios
  • background_download_threads (UInt64) — Número de threads de download em segundo plano. O valor 0 desabilita o download em segundo plano
  • background_download_queue_size_limit (UInt64) — Número máximo de segmentos de arquivo na fila de download em segundo plano. O valor 0 significa sem limite. O download em segundo plano é desabilitado quando background_download_threads é 0
  • background_download_max_file_segment_size (UInt64) — Limiar de pré-busca arredondado pelo alinhamento para um segmento já iniciado, e não um limite do tamanho total do segmento. Abaixo desse tamanho, o download em segundo plano preenche até o valor arredondado para cima ao múltiplo de boundary_alignment. Quando downloaded_size atinge esse valor, o download em segundo plano continua até downloaded_size arredondado para cima ao múltiplo de boundary_alignment
  • load_metadata_threads (UInt64) — Número máximo de threads usadas para carregar os metadados do cache na inicialização do servidor
  • load_metadata_asynchronously (UInt8) — Habilita o carregamento assíncrono de metadados na inicialização do servidor
  • keep_free_space_size_ratio (Float64) — Razão de espaço livre que o cache tentará manter em segundo plano
  • keep_free_space_elements_ratio (Float64) — Razão de elementos livres que o cache tentará manter em segundo plano
  • keep_free_space_remove_batch (UInt64) — Tamanho do lote de remoção de elementos do cache feito pela thread em segundo plano que mantém a razão de espaço livre/elementos
  • keep_free_space_eviction_threads (UInt64) — Número de threads que realizam a remoção efetiva de segmentos de arquivo (exclusão no filesystem) para manter em segundo plano a razão de espaço livre/elementos. A única thread em segundo plano coleta candidatos à remoção e libera suas entradas da fila de prioridade, enquanto essas threads realizam a remoção sem bloqueio em paralelo
  • invalidated_entries_cleanup_interval_ms (UInt64) — Intervalo ocioso, em milissegundos, da tarefa em segundo plano que faz a limpeza de entradas invalidadas (removidas de forma preguiçosa) da fila de prioridade
  • invalidated_entries_cleanup_threshold (UInt64) — Número de entradas invalidadas acumuladas na fila de prioridade que aciona sua remoção em segundo plano
  • invalidated_entries_cleanup_remove_batch (UInt64) — Número máximo de entradas invalidadas da fila de prioridade removidas sob um único bloqueio de escrita por iteração em segundo plano
  • enable_filesystem_query_cache_limit (UInt8) — Habilita a limitação do tamanho máximo de cache que pode ser gravado em uma consulta
  • cache_hits_threshold (UInt64) — Configuração obsoleta
  • enable_bypass_cache_with_threshold (UInt8) — Não documentado. Uso não recomendado
  • bypass_cache_threshold (UInt64) — Não documentado. Uso não recomendado
  • write_cache_per_user_id_directory (UInt8) — Configuração obsoleta, ignorada. O comportamento agora é determinado automaticamente com base na política de cache
  • allow_dynamic_cache_resize (UInt8) — Permite o redimensionamento dinâmico do cache do sistema de arquivos
  • dynamic_resize_lock_wait_ms (UInt64) — Tempo limite, em milissegundos, para adquirir o bloqueio exclusivo de redimensionamento dinâmico antes de ignorar a tentativa de redimensionamento
  • max_size_ratio_to_total_space (Float64) — Razão entre max_size e o espaço total em disco
  • skip_cache_on_disk_failure (UInt8) — Se true, ignora silenciosamente as operações do cache do sistema de arquivos em caso de erros de E/S de disco. Se false (padrão), os erros de E/S de disco são propagados como falhas de inicialização.
  • use_split_cache (UInt8) — Usa a separação de arquivos entre sistema e dados.
  • split_cache_ratio (Float64) — Razão entre o segmento do sistema e o tamanho total do cache para split_cache.
  • system_cache_extensions (String) — Lista de extensões de arquivo separadas por vírgulas que são classificadas como segmentos de cache do sistema quando use_split_cache está habilitado. Quando alterada, as entradas de cache existentes permanecem no tipo de segmento anterior e são removidas naturalmente ao longo do tempo. É necessário reiniciar para alterar esta configuração.
  • overcommit_eviction_evict_step (UInt64) — Passo de remoção, em bytes, para a política de remoção por overcommit. Usado nas configurações keep_free_space_*_ratio
  • check_cache_probability (Float64) — Funciona somente em compilação de debug ou com sanitizer. Verifica a integridade do cache percorrendo todo o cache e verificando o estado de cada elemento do cache
  • idle_client_ttl_sec (UInt64) — Se diferente de zero e a política de cache rastrear o uso por cliente, todas as entradas de cache que pertencem a um cliente (user_id) que não foi acessado por essa quantidade de segundos serão totalmente removidas do cache. Cada acesso pelo cliente reinicia o temporizador. O padrão é 1 semana. Usado pelo servidor de cache distribuído.
  • idle_client_check_interval_sec (UInt64) — Frequência, em segundos, de execução da tarefa de remoção de clientes ociosos. Relevante apenas quando idle_client_ttl_sec é diferente de zero. 0 significa um valor automático (max(1, idle_client_ttl_sec / 10)).
  • idle_client_eviction_threads (UInt64) — Número máximo de threads usadas para limpar o cache de clientes ociosos. Relevante apenas quando idle_client_ttl_sec é diferente de zero.
  • expose_prometheus_eviction_metrics (UInt8) — Expõe métricas do Prometheus para a atividade de remoção do cache do sistema de arquivos (filesystem_cache_evictions_total etc.). Desativado por padrão. Pode ser alternado em tempo de execução via SYSTEM RELOAD CONFIG.
  • expose_prometheus_eviction_metrics_per_user (UInt8) — Além disso, expõe métricas de remoção por ID de usuário. Requer expose_prometheus_eviction_metrics. A cardinalidade aumenta com a quantidade de usuários distintos que efetuam remoções.
  • drop_cache_threads (UInt64) — Número máximo de threads usadas para remover chaves do cache em paralelo em SYSTEM DROP FILESYSTEM CACHE. O valor 1 significa que a remoção é realizada somente pela thread da consulta
  • is_initialized (UInt8) — Indica se o cache foi inicializado com sucesso
  • current_size (UInt64) — Tamanho atual do cache
  • current_elements_num (UInt64) — Número atual de elementos do cache (segmentos de arquivo)