Skip to main content
Ces paramètres sont disponibles dans system.settings et sont générés automatiquement à partir du source.

allow_aggregate_partitions_independently

Active l’agrégation indépendante des partitions sur des threads séparés lorsque la clé de partitionnement est adaptée à la clé GROUP BY. Cela est utile lorsque le nombre de partitions est proche du nombre de cœurs et que les partitions ont à peu près la même taille. Les heuristiques de ReadFromMergeTree désactivent automatiquement l’optimisation pour les organisations défavorables (trop peu de partitions, trop de partitions ou des tailles de partition fortement déséquilibrées) ; consultez force_aggregate_partitions_independently pour contourner ces vérifications.

allow_archive_path_syntax

Les moteurs File/S3 et la fonction de table analyseront les chemins contenant ’::’ comme <archive> :: <file> si l’archive a l’extension appropriée.

allow_asynchronous_read_from_io_pool_for_merge_tree

Utilise le pool d’E/S d’arrière-plan pour lire les tables MergeTree. Ce paramètre peut améliorer les performances des requêtes limitées par les E/S.

allow_calculating_subcolumns_sizes_for_merge_tree_reading

Lorsqu’il est activé, ClickHouse calcule la taille des fichiers nécessaires à la lecture de chaque sous-colonne afin de mieux dimensionner les tâches et les blocs.

allow_changing_replica_until_first_data_packet

Si ce paramètre est activé, dans les requêtes hedged, nous pouvons établir une nouvelle connexion jusqu’à la réception du premier paquet de données, même si un certain progrès a déjà été réalisé (mais que la progression n’a pas été mise à jour pendant le délai d’expiration receive_data_timeout) ; sinon, nous désactivons le changement de réplique dès qu’un premier progrès a été réalisé.

allow_create_index_without_type

Autorise les requêtes CREATE INDEX sans TYPE. La requête est alors ignorée. Prévu pour les tests de compatibilité SQL.

allow_custom_error_code_in_throwif

Active l’utilisation d’un code d’erreur personnalisé dans la fonction throwIf(). Si true, les exceptions levées peuvent avoir des codes d’erreur inattendus.

allow_ddl

S’il est défini sur true, l’utilisateur est autorisé à exécuter des requêtes DDL.

allow_distributed_ddl

Si ce paramètre est défini sur true, l’utilisateur est autorisé à exécuter des requêtes DDL distribuées.

allow_drop_detached

Autorise les requêtes ALTER TABLE … DROP DETACHED PART[ITION] …

allow_dynamic_type_in_join_keys

Autorise l’utilisation du type Dynamic dans les clés de JOIN. Ajouté pour des raisons de compatibilité. Il n’est pas recommandé d’utiliser le type Dynamic dans les clés de JOIN, car les comparaisons avec d’autres types peuvent produire des résultats inattendus.

allow_execute_multiif_columnar

Autorise l’exécution de la fonction multiIf en mode colonnaire

allow_fuzz_query_functions

Active la fonction fuzzQuery, qui applique des mutations aléatoires de l’AST à une chaîne de requête.

allow_general_join_planning

Autorise un algorithme de planification des jointures plus générique, capable de gérer des conditions plus complexes, mais qui fonctionne uniquement avec le hash join. Si le hash join n’est pas activé, l’algorithme habituel de planification des jointures est utilisé, quelle que soit la valeur de ce paramètre.

allow_get_client_http_header

Permet d’utiliser la fonction getClientHTTPHeader, qui permet d’obtenir la valeur d’un en-tête de la requête HTTP en cours. Elle n’est pas activée par défaut pour des raisons de sécurité, car certains en-têtes, comme Cookie, peuvent contenir des informations sensibles. Notez que les en-têtes X-ClickHouse-*, Authentication et Authorization sont toujours restreints et ne peuvent pas être obtenus avec cette fonction.

allow_hyperscan

Autorise les fonctions qui utilisent la bibliothèque Hyperscan. Désactivez-la pour éviter des temps de compilation potentiellement longs et une consommation excessive de ressources.

allow_iceberg_remove_orphan_files

Permet d’utiliser ALTER TABLE ... EXECUTE remove_orphan_files() pour les tables Iceberg.

allow_insert_into_iceberg

Alias : allow_experimental_insert_into_iceberg Permet d’exécuter des requêtes insert dans Iceberg.

allow_introspection_functions

Active ou désactive les fonctions d’introspection pour le profilage des requêtes. Valeurs possibles :
  • 1 — Fonctions d’introspection activées.
  • 0 — Fonctions d’introspection désactivées.
Voir aussi

allow_key_condition_coalesce_rewrite

Permet à la clé primaire MergeTree et aux skip indexes d’exclure des granules pour les prédicats WHERE/PREWHERE qui utilisent coalesce ou ifNull. Sans ce paramètre, ces prédicats sont opaques pour l’analyse des index et ne permettent pas d’exclure de granules, de sorte que des granules qui ne peuvent pas correspondre sont quand même lus. Cela n’affecte que les granules lus ; le résultat de la requête reste inchangé, car les lignes sont toujours filtrées par le prédicat d’origine. Deux formes de prédicats sont réécrites avant l’analyse des index :
  • Une comparaison avec coalesce/ifNull, telle que coalesce(a, b) = 5, devient une disjonction afin qu’un index sur chaque argument puisse exclure des granules : a = 5 OR (a IS NULL AND b = 5), avec extension à davantage d’arguments.
  • Un coalesce/ifNull avec une constante par défaut falsy (zéro) utilisée directement comme condition, telle que ifNull(a = 5, 0) ou coalesce(a = 5, 0), est ramené à son prédicat interne a = 5. De tels wrappers ramènent le résultat ternaire du prédicat interne à un booléen déterminé (en faisant correspondre NULL à false).

allow_limit_by_partitions_independently

Active l’évaluation indépendante de LIMIT BY pour chaque partition sur des threads séparés lorsque l’expression de partition est une fonction déterministe des colonnes de LIMIT BY.

allow_materialized_view_with_bad_select

Autorise CREATE MATERIALIZED VIEW avec une requête SELECT faisant référence à des tables ou colonnes inexistantes. Elle doit toutefois rester syntaxiquement valide. Ne s’applique pas aux MV actualisables. Ne s’applique pas non plus si le schéma de la MV doit être inféré à partir de la requête SELECT (c.-à-d. si le CREATE ne comporte ni liste de colonnes ni table TO). Peut être utilisé pour créer une MV avant sa table source.

allow_minmax_index_for_json

Autorise la création d’index de saut minmax sur les colonnes JSON (Object). Désactivé par défaut, car le mécanisme de sérialisation de l’index minmax ne peut pas prendre en charge les valeurs de Field hétérogènes que peuvent contenir les colonnes JSON.

allow_named_collection_override_by_default

Autorise par défaut la surcharge des champs des collections nommées.

allow_non_metadata_alters

Permet d’exécuter des opérations ALTER qui affectent non seulement les métadonnées des tables, mais aussi les données sur le disque

allow_nonconst_timezone_arguments

Autorise des arguments de fuseau horaire non constants dans certaines fonctions liées au temps, comme toTimeZone(), fromUnixTimestamp*() et snowflakeIDToDateTime*(). Ce paramètre existe uniquement pour des raisons de compatibilité. Dans ClickHouse, le fuseau horaire est une propriété du type de données, ou plus précisément de la colonne. L’activation de ce paramètre donne à tort l’impression que différentes valeurs d’une même colonne peuvent avoir des fuseaux horaires différents. Par conséquent, veuillez ne pas activer ce paramètre.

allow_nullable_tuple_in_extracted_subcolumns

Détermine si les sous-colonnes extraites de type Tuple(...) peuvent être typées comme Nullable(Tuple(...)).
  • false : renvoie Tuple(...) et utilise les valeurs de tuple par défaut pour les lignes où la sous-colonne est absente.
  • true : renvoie Nullable(Tuple(...)) et utilise NULL pour les lignes où la sous-colonne est absente.
Ce paramètre contrôle uniquement le comportement des sous-colonnes extraites. Il ne détermine pas si des colonnes Nullable(Tuple(...)) peuvent être créées dans des tables ; cela est contrôlé par enable_nullable_tuple_type. ClickHouse utilise la valeur de ce paramètre chargée au démarrage du serveur. Les modifications effectuées avec SET ou la clause SETTINGS au niveau de la requête ne changent pas le comportement des sous-colonnes extraites. Pour modifier le comportement des sous-colonnes extraites, mettez à jour allow_nullable_tuple_in_extracted_subcolumns dans la configuration du profil de démarrage (par exemple, users.xml) et redémarrez le serveur.

allow_rank_dense_rank_arguments

Autorise le passage d’arguments aux fonctions de fenêtre RANK et DENSE_RANK pour assurer la rétrocompatibilité. Selon la norme SQL, RANK et DENSE_RANK ne prennent aucun argument — elles classent les lignes uniquement en fonction de la fenêtre OVER (ORDER BY ...). Dans les versions de ClickHouse antérieures à la 26.5, des requêtes telles que RANK(x) OVER (...) acceptaient et ignoraient silencieusement l’argument, ce qui prêtait à confusion (l’argument visible laissait penser qu’il influençait le classement, mais ce n’était pas le cas). Lorsque ce paramètre est false (valeur par défaut), RANK et DENSE_RANK rejettent tout argument et renvoient NUMBER_OF_ARGUMENTS_DOESNT_MATCH. Lorsqu’il est défini sur true, le comportement permissif legacy est rétabli — les arguments sont silencieusement ignorés, comme avant la version 26.5.

allow_reorder_prewhere_conditions

Lors du déplacement des conditions de WHERE vers PREWHERE, autoriser leur réordonnancement afin d’optimiser le filtrage

allow_replace_partition_from_empty_source

Autorise ALTER TABLE ... REPLACE PARTITION ... FROM ... à supprimer silencieusement la partition de destination lorsque la source n’a aucune part dans cette partition. Par défaut, ce n’est pas autorisé : un REPLACE PARTITION à partir d’une source qui ne contient aucune donnée dans la partition demandée lève une exception, car dans ce cas l’opération revient en pratique à un DROP PARTITION silencieux sur la destination (les données de destination sont supprimées et rien ne les remplace), ce qui est une cause fréquente de perte accidentelle de données (voir #23727). Activez ce paramètre pour rétablir le comportement précédent, par exemple si vous utilisez volontairement une partition source vide pour effacer les données de destination. Pour une suppression inconditionnelle, préférez ALTER TABLE ... DROP PARTITION ....

allow_settings_after_format_in_insert

Détermine si SETTINGS après FORMAT dans les requêtes INSERT est autorisé ou non. Il n’est pas recommandé d’utiliser ce paramètre, car une partie de SETTINGS peut être interprétée comme des valeurs. Exemple :
Mais la requête suivante ne fonctionne qu’avec allow_settings_after_format_in_insert :
Valeurs possibles :
  • 0 — Interdire.
  • 1 — Autoriser.
Utilisez ce paramètre uniquement à des fins de rétrocompatibilité si vos cas d’usage dépendent de l’ancienne syntaxe.

allow_simdjson

Permet d’utiliser la bibliothèque simdjson dans les fonctions ‘JSON*’ si les instructions AVX2 sont disponibles. Si cette option est désactivée, rapidjson sera utilisé.

allow_special_serialization_kinds_in_output_formats

Permet de produire des colonnes avec des types de sérialisation spéciaux comme Sparse et Replicated sans les convertir en représentation complète de colonne. Cela permet d’éviter des copies de données inutiles lors de la mise en forme.

allow_unrestricted_reads_from_keeper

Autorise les lectures sans restriction (sans condition sur le path) depuis la table system.zookeeper ; cela peut être pratique, mais n’est pas sans risque pour ZooKeeper
Dernière modification le 24 juillet 2026