Ces paramètres sont disponibles dans system.settings et sont générés automatiquement à partir du code source.
parallel_replicas_allow_in_with_subquery
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 24.3 | 1 | Si la valeur est true, la sous-requête de IN sera exécutée sur chaque réplique suiveuse |
Si la valeur est true, la sous-requête de IN sera exécutée sur chaque réplique suiveuse.
parallel_replicas_allow_materialized_views
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 25.12 | 1 | Autoriser l’utilisation des vues matérialisées avec les répliques parallèles |
Autoriser l’utilisation des vues matérialisées avec les répliques parallèles
parallel_replicas_allow_view_over_mergetree
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 26.4 | 0 | Nouveau paramètre |
Permet aux répliques parallèles d'exécuter la requête externe d'une vue simple basée sur des tables MergeTree (au lieu de la requête interne de la vue), ce qui améliore la parallélisation entre les nœuds. S'applique également aux vues UNION ALL dont les branches lisent toutes dans des tables MergeTree différentes.
parallel_replicas_connect_timeout_ms
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 25.6 | 300 | Délai de connexion distinct pour les requêtes avec répliques parallèles |
Délai d’expiration, en millisecondes, pour établir une connexion à une réplique distante lors de l’exécution d’une requête avec des répliques parallèles. Si le délai expire, la réplique correspondante n’est pas utilisée pour l’exécution de la requête
parallel_replicas_count
Il s'agit d'un paramètre interne qui ne doit pas être utilisé directement et qui correspond à un détail d'implémentation du mode « répliques parallèles ». Pour les requêtes distribuées, ce paramètre est automatiquement défini par le serveur initiateur sur le nombre de répliques parallèles participant au traitement de la requête.
parallel_replicas_custom_key
Une expression entière arbitraire qui peut être utilisée pour répartir le travail entre les répliques d’une table donnée. La valeur peut être n’importe quelle expression entière.
Il est préférable d’utiliser des expressions simples basées sur les clés primaires.
Si ce paramètre est utilisé sur un cluster composé d’un seul shard avec plusieurs répliques, ces répliques seront converties en shards virtuels.
Sinon, il se comportera comme pour la clé SAMPLE et utilisera plusieurs répliques de chaque shard.
parallel_replicas_custom_key_range_lower
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 24.6 | 0 | Ajoute des paramètres permettant de contrôler le filtre de plage lors de l’utilisation de répliques parallèles avec des shards dynamiques |
Permet au filtre de type range de répartir uniformément la charge entre les répliques à partir de la plage personnalisée [parallel_replicas_custom_key_range_lower, INT_MAX].
Utilisé conjointement avec parallel_replicas_custom_key_range_upper, il permet au filtre de répartir uniformément la charge entre les répliques sur la plage [parallel_replicas_custom_key_range_lower, parallel_replicas_custom_key_range_upper].
Remarque : ce paramètre n’entraîne aucun filtrage de données supplémentaire pendant le traitement des requêtes ; il modifie simplement les points auxquels le filtre de plage découpe la plage [0, INT_MAX] pour le traitement parallèle.
parallel_replicas_custom_key_range_upper
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 24.6 | 0 | Ajoute des paramètres pour contrôler le filtre de plage lors de l’utilisation de répliques parallèles avec des shards dynamiques. Une valeur de 0 désactive la limite supérieure |
Permet au filtre de type range de répartir uniformément le travail entre les répliques en fonction de la plage personnalisée [0, parallel_replicas_custom_key_range_upper]. Une valeur de 0 désactive la borne supérieure et la fixe à la valeur maximale de l’expression de clé personnalisée.
Lorsqu’il est utilisé conjointement avec parallel_replicas_custom_key_range_lower, ce paramètre permet au filtre de répartir uniformément le travail entre les répliques sur la plage [parallel_replicas_custom_key_range_lower, parallel_replicas_custom_key_range_upper].
Remarque : ce paramètre n’entraîne pas le filtrage de données supplémentaires pendant le traitement des requêtes ; il modifie plutôt les points auxquels le filtre de plage découpe la plage [0, INT_MAX] pour le traitement parallèle
parallel_replicas_filter_pushdown
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 26.2 | 0 | Nouveau paramètre |
Permet le pushdown des filtres sur la partie de la requête que les répliques parallèles choisissent d'exécuter
parallel_replicas_for_cluster_engines
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 25.3 | 1 | Nouveau paramètre. |
Remplacer les moteurs de fonction de table par leurs équivalents -Cluster
parallel_replicas_for_non_replicated_merge_tree
Si la valeur est true, ClickHouse utilisera également l’algorithme des répliques parallèles pour les tables MergeTree non répliquées
parallel_replicas_index_analysis_only_on_coordinator
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 24.12 | 1 | L’analyse d’index n’est effectuée que sur la réplique coordinatrice et est ignorée sur les autres répliques. Prend effet uniquement lorsque parallel_replicas_local_plan est activé |
| 24.10 | 1 | L’analyse d’index n’est effectuée que sur la réplique coordinatrice et est ignorée sur les autres répliques. Prend effet uniquement lorsque parallel_replicas_local_plan est activé |
L’analyse d’index n’est effectuée que sur la réplique coordinatrice et est ignorée sur les autres répliques. Prend effet uniquement lorsque parallel_replicas_local_pla
parallel_replicas_insert_select_local_pipeline
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 25.5 | 1 | Utiliser le pipeline local lors d'un INSERT SELECT distribué avec des répliques parallèles. Actuellement désactivé en raison de problèmes de performances |
| 25.4 | 0 | Utiliser le pipeline local lors d'un INSERT SELECT distribué avec des répliques parallèles. Actuellement désactivé en raison de problèmes de performances |
Utiliser le pipeline local lors d'un INSERT SELECT distribué avec des répliques parallèles
parallel_replicas_local_plan
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 24.9 | 0 | Utiliser un plan local pour la réplique locale dans une requête avec des répliques parallèles |
| 24.11 | 1 | Utiliser un plan local pour la réplique locale dans une requête avec des répliques parallèles |
| 24.10 | 1 | Utiliser un plan local pour la réplique locale dans une requête avec des répliques parallèles |
Construire un plan local pour la réplique locale
parallel_replicas_mark_segment_size
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 24.9 | 0 | La valeur de ce paramètre est désormais déterminée automatiquement |
| 24.1 | 128 | Ajout d'un nouveau paramètre pour contrôler la taille des segments dans la nouvelle implémentation du coordinateur de répliques parallèles |
Les parts de données sont divisées virtuellement en segments, qui sont répartis entre les répliques pour la lecture parallèle. Ce paramètre contrôle la taille de ces segments. Il est déconseillé de le modifier à moins d'être absolument sûr de ce que vous faites. La valeur doit être comprise dans la plage [128 ; 16384]
parallel_replicas_min_number_of_rows_per_replica
Limite le nombre de répliques utilisées dans une requête à (nombre estimé de lignes à lire / min_number_of_rows_per_replica). Le maximum reste toutefois limité par 'max_parallel_replicas'
parallel_replicas_mode
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 24.10 | read_tasks | Ce paramètre a été introduit dans le cadre du passage en Beta de la fonctionnalité des répliques parallèles |
Type de filtre à utiliser avec la clé personnalisée pour les répliques parallèles. default - utilise l'opération modulo sur la clé personnalisée, range - utilise un filtre de plage sur la clé personnalisée en utilisant toutes les valeurs possibles du type de valeur de la clé personnalisée.
parallel_replicas_only_with_analyzer
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 25.2 | 1 | Les répliques parallèles ne sont prises en charge que lorsque l’analyseur est activé |
L’analyseur doit être activé pour utiliser les répliques parallèles. Lorsque l’analyseur est désactivé, l’exécution de la requête retombe sur une exécution locale, même si la lecture parallèle depuis les répliques est activée. L’utilisation des répliques parallèles sans l’analyseur activé n’est pas prise en charge
parallel_replicas_plan_based
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 26.7 | 0 | Nouveau paramètre |
Détermine s’il faut utiliser des répliques parallèles et à quels endroits en analysant le plan de requête, plutôt qu’en se basant sur l’arbre de requête. Par conséquent, un fragment de plan est envoyé aux répliques distantes au lieu d’une requête SQL. Expérimental.
parallel_replicas_prefer_local_join
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 24.2 | 1 | Si cette option est true, que JOIN peut être exécuté avec l’algorithme des répliques parallèles et que toutes les tables de la partie droite du JOIN sont de type *MergeTree, un JOIN local est utilisé à la place de GLOBAL JOIN. |
Si cette option est true, que JOIN peut être exécuté avec l’algorithme des répliques parallèles et que toutes les tables de la partie droite du JOIN sont de type *MergeTree, un JOIN local est utilisé à la place de GLOBAL JOIN.
parallel_replicas_prefer_local_replica
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 26.5 | 1 | Nouveau paramètre. Lorsqu’il est désactivé, les répliques pour la lecture parallèle sont sélectionnées uniquement par l’algorithme de répartition de charge, sans imposer l’inclusion de la réplique locale dans l’ensemble. |
Lorsqu’il est activé (par défaut), la réplique locale est toujours incluse dans l’ensemble des répliques utilisées pour la lecture parallèle.
Lorsqu’il est désactivé, la réplique locale ne bénéficie d’aucune préférence et les répliques sont sélectionnées uniquement par l’algorithme de répartition de charge.
Cela permet d’acheminer les requêtes avec max_parallel_replicas = 1 vers un autre hôte, ce qui peut améliorer la localité du cache lorsque de nombreuses requêtes courtes sont réparties sur un cluster.
parallel_replicas_support_projection
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 25.8 | 1 | Nouveau paramètre. L’optimisation des projections peut être appliquée aux répliques parallèles. S’applique uniquement lorsque parallel_replicas_local_plan est activé et que aggregation_in_order est inactif. |
L’optimisation des projections peut être appliquée aux répliques parallèles. S’applique uniquement lorsque parallel_replicas_local_plan est activé et que aggregation_in_order est inactif.