Skip to main content

Description

Contient des informations sur l’ensemble des paramètres du cache du système de fichiers

Colonnes

  • cache_name (String) — nom du cache
  • path (String) — chemin du répertoire du cache
  • max_size (UInt64) — taille maximale du cache
  • max_elements (UInt64) — nombre maximal d’éléments du cache, par ex. des segments de fichier (limite le nombre de fichiers sur le système de fichiers)
  • max_file_segment_size (UInt64) — taille maximale d’un segment de fichier unique
  • boundary_alignment (UInt64) — alignement des segments de fichier
  • reserve_granularity (UInt64) — taille maximale à réserver par anticipation au-delà de la taille déjà téléchargée d’un segment de fichier, afin d’acquérir moins souvent le verrou du cache. Cette taille part de 0 pour chaque lecteur/écrivain et augmente au fil de ses réservations successives jusqu’à cette valeur. La valeur 0 désactive la réservation anticipée.
  • cache_on_write_operations (UInt8) — active le cache en écriture immédiate (mise en cache lors de INSERT et MERGE)
  • cache_policy (String) — politique d’éviction du cache
  • slru_size_ratio (Float64) — ratio de taille de la politique de cache SLRU entre les éléments protégés et ceux en probation
  • background_download_threads (UInt64) — nombre de threads de téléchargement en arrière-plan. La valeur 0 désactive le téléchargement en arrière-plan
  • background_download_queue_size_limit (UInt64) — nombre maximal de segments de fichier dans la file d’attente de téléchargement en arrière-plan. La valeur 0 signifie aucune limite. Le téléchargement en arrière-plan est désactivé lorsque background_download_threads vaut 0
  • background_download_max_file_segment_size (UInt64) — seuil de préchargement arrondi à l’alignement pour un segment dont le téléchargement a déjà commencé, et non un plafond de la taille totale du segment. En dessous de cette taille, le téléchargement en arrière-plan remplit le segment jusqu’à cette valeur arrondie au multiple supérieur de boundary_alignment. Une fois que downloaded_size atteint ce seuil, le téléchargement en arrière-plan se poursuit jusqu’à downloaded_size arrondi au multiple supérieur de boundary_alignment
  • load_metadata_threads (UInt64) — nombre maximal de threads utilisés pour charger les métadonnées du cache au démarrage du serveur
  • load_metadata_asynchronously (UInt8) — active le chargement asynchrone des métadonnées au démarrage du serveur
  • keep_free_space_size_ratio (Float64) — ratio d’espace libre que le cache tente de maintenir en arrière-plan
  • keep_free_space_elements_ratio (Float64) — ratio d’éléments libres que le cache tente de maintenir en arrière-plan
  • keep_free_space_remove_batch (UInt64) — taille du lot de suppression des éléments du cache effectuée par le thread d’arrière-plan qui maintient le ratio d’espace libre/d’éléments libres
  • keep_free_space_eviction_threads (UInt64) — nombre de threads qui effectuent la suppression effective des segments de fichier (suppression du système de fichiers) afin de maintenir en arrière-plan le ratio d’espace libre/d’éléments libres. Le thread unique en arrière-plan collecte les candidats à l’éviction et libère leurs entrées de la file de priorité, tandis que ces threads effectuent en parallèle la suppression sans verrou
  • invalidated_entries_cleanup_interval_ms (UInt64) — intervalle d’inactivité, en millisecondes, de la tâche d’arrière-plan qui purge les entrées invalidées (supprimées de manière différée) de la file de priorité
  • invalidated_entries_cleanup_threshold (UInt64) — nombre d’entrées invalidées accumulées dans la file de priorité qui déclenche leur suppression en arrière-plan
  • invalidated_entries_cleanup_remove_batch (UInt64) — nombre maximal d’entrées invalidées de la file de priorité supprimées sous un seul verrou d’écriture à chaque itération en arrière-plan
  • enable_filesystem_query_cache_limit (UInt8) — active la limitation de la taille maximale du cache pouvant être écrite dans le cadre d’une requête
  • cache_hits_threshold (UInt64) — paramètre obsolète
  • enable_bypass_cache_with_threshold (UInt8) — Non documenté. Utilisation non recommandée
  • bypass_cache_threshold (UInt64) — Non documenté. Utilisation non recommandée
  • write_cache_per_user_id_directory (UInt8) — paramètre obsolète, ignoré. Le comportement est désormais déterminé automatiquement en fonction de la politique du cache
  • allow_dynamic_cache_resize (UInt8) — Autorise le redimensionnement dynamique du cache du système de fichiers
  • dynamic_resize_lock_wait_ms (UInt64) — délai d’attente, en millisecondes, pour acquérir le verrou exclusif de redimensionnement dynamique avant d’ignorer la tentative de redimensionnement
  • max_size_ratio_to_total_space (Float64) — Rapport entre max_size et l’espace disque total
  • skip_cache_on_disk_failure (UInt8) — Si true, ignore silencieusement les opérations du cache du système de fichiers en cas d’erreurs d’E/S disque. Si false (par défaut), les erreurs d’E/S disque sont propagées comme des échecs au démarrage.
  • use_split_cache (UInt8) — Utilise la séparation des fichiers entre system et data.
  • split_cache_ratio (Float64) — Rapport entre le segment system et la taille totale du cache pour split_cache.
  • system_cache_extensions (String) — Liste d’extensions de fichier séparées par des virgules, classées comme segments de cache système lorsque use_split_cache est activé. Lorsqu’elles sont modifiées, les entrées existantes du cache restent dans leur type de segment précédent et sont évincées naturellement au fil du temps. Un redémarrage est nécessaire pour modifier ce paramètre.
  • overcommit_eviction_evict_step (UInt64) — Pas d’éviction en octets pour la politique d’éviction overcommit. Utilisé pour les paramètres keep_free_space_*_ratio
  • check_cache_probability (Float64) — Fonctionne uniquement avec un build de Débogage ou un sanitizer. Vérifie l’intégrité du cache en le parcourant entièrement et en contrôlant l’état de chaque élément du cache
  • idle_client_ttl_sec (UInt64) — Si différent de zéro et que la politique du cache suit l’utilisation par client, toutes les entrées du cache appartenant à un client (user_id) auquel aucun accès n’a été effectué pendant ce nombre de secondes sont entièrement supprimées du cache. Chaque accès par le client réinitialise le minuteur. La valeur par défaut est 1 semaine. Utilisé par le serveur de cache distribué.
  • idle_client_check_interval_sec (UInt64) — Fréquence d’exécution de la tâche d’éviction des clients inactifs, en secondes. Utile uniquement lorsque idle_client_ttl_sec est différent de zéro. 0 correspond à une valeur automatique (max(1, idle_client_ttl_sec / 10)).
  • idle_client_eviction_threads (UInt64) — Nombre maximal de threads utilisés pour purger le cache des clients inactifs. Utile uniquement lorsque idle_client_ttl_sec est différent de zéro.
  • expose_prometheus_eviction_metrics (UInt8) — Expose les métriques Prometheus relatives à l’activité d’éviction du cache du système de fichiers (filesystem_cache_evictions_total etc.). Désactivé par défaut. Peut être activé ou désactivé à l’exécution via SYSTEM RELOAD CONFIG.
  • expose_prometheus_eviction_metrics_per_user (UInt8) — Expose également des métriques d’éviction par ID utilisateur. Nécessite expose_prometheus_eviction_metrics. La cardinalité augmente avec le nombre d’utilisateurs distincts effectuant des évictions.
  • drop_cache_threads (UInt64) — Nombre maximal de threads utilisés pour supprimer des clés de cache en parallèle lors de SYSTEM DROP FILESYSTEM CACHE. La valeur 1 signifie que la suppression est effectuée uniquement par le thread de requête
  • is_initialized (UInt8) — Indique si le cache a été initialisé avec succès
  • current_size (UInt64) — Taille actuelle du cache
  • current_elements_num (UInt64) — Nombre actuel d’éléments du cache (segments de fichier)