> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# paramètres de session max_rows_*

> Paramètres de session ClickHouse du groupe généré max_rows_*.

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>Type</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>Par défaut</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Modifiable sans redémarrage
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

Ces paramètres sont disponibles dans [system.settings](/docs/fr/reference/system-tables/settings) et sont générés automatiquement à partir du [code source](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<div id="max_rows_for_lazy_final">
  ## max\_rows\_for\_lazy\_final
</div>

<SettingsInfoBlock type="UInt64" default_value="10000000" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.4"},{"label": "10000000"},{"label": "Nouveau paramètre pour le nombre maximal de lignes dans l’ensemble utilisé pour l’optimisation lazy de FINAL"}]}]} />

Nombre maximal de lignes dans l’ensemble utilisé pour l’optimisation lazy de FINAL. Au-delà, le système bascule sur le FINAL normal.

<div id="max_rows_in_distinct">
  ## max\_rows\_in\_distinct
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

Le nombre maximal de lignes distinctes lors de l'utilisation de DISTINCT.

<div id="max_rows_in_join">
  ## max\_rows\_in\_join
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

Limite le nombre de lignes dans la structure de données de droite (généralement une table de hachage) utilisée lors de la jointure entre des tables.

Ce paramètre s'applique aux opérations [SELECT ... JOIN](/docs/fr/reference/statements/select/join) et au moteur de table [Join](/docs/fr/reference/engines/table-engines/special/join).

Si une requête contient plusieurs jointures, ClickHouse vérifie ce paramètre pour chaque résultat intermédiaire. Lorsque la limite est atteinte, l'action dépend du [`join_algorithm`](/docs/fr/reference/settings/session-settings/join#join_algorithm) choisi — consultez ce paramètre pour connaître le comportement de chaque algorithme (spill, re-partition, switch, ou throw/break selon [`join_overflow_mode`](/docs/fr/reference/settings/session-settings/join#join_overflow_mode)).

Valeurs possibles :

* Entier positif.
* `0` — Nombre de lignes illimité.

<div id="max_rows_in_set">
  ## max\_rows\_in\_set
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

Le nombre maximal de lignes pour un jeu de données de la clause IN créé à partir d'une sous-requête.

<div id="max_rows_in_set_to_optimize_join">
  ## max\_rows\_in\_set\_to\_optimize\_join
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.1"},{"label": "0"},{"label": "Désactive l’optimisation des jointures, car elle empêche l’optimisation de lecture dans l’ordre"}]}]} />

Taille maximale de l’ensemble utilisé pour filtrer les tables jointes à partir de leurs jeux de lignes respectifs avant la jointure.

Valeurs possibles :

* 0 — Désactive.
* Tout entier positif.

<div id="max_rows_to_group_by">
  ## max\_rows\_to\_group\_by
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

Le nombre maximal de clés uniques reçues lors de l'agrégation. Ce paramètre permet
de limiter la consommation de mémoire lors de l'agrégation.

Si l'agrégation pendant le GROUP BY génère plus de
lignes (clés GROUP BY uniques) que le nombre spécifié, le comportement sera déterminé par
'group\_by\_overflow\_mode' qui, par défaut, est `throw`, mais peut aussi être basculé
vers un mode GROUP BY approximatif.

<div id="max_rows_to_read">
  ## max\_rows\_to\_read
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

Le nombre maximal de lignes pouvant être lues depuis une table lors de l'exécution d'une requête.
La restriction est vérifiée pour chaque fragment de données traité, s'applique uniquement à
l'expression de table la plus profonde et, lors d'une lecture depuis un serveur distant, n'est vérifiée que sur
le serveur distant.

<div id="max_rows_to_read_leaf">
  ## max\_rows\_to\_read\_leaf
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

Le nombre maximal de lignes pouvant être lues à partir d’une table locale sur un nœud feuille lors de
l’exécution d’une requête distribuée. Bien que les requêtes distribuées puissent envoyer plusieurs sous-requêtes
à chaque shard (feuille), cette limite n’est vérifiée qu’à l’étape de lecture sur les
nœuds feuille et est ignorée à l’étape de fusion des résultats sur le nœud racine.

Par exemple, un cluster se compose de 2 shards, et chaque shard contient une table de
100 lignes. La requête distribuée qui doit lire toutes les données des deux
tables avec le paramètre `max_rows_to_read=150` échouera, car il y aura au total
200 lignes. En revanche, une requête avec `max_rows_to_read_leaf=150` réussira, puisque les nœuds feuille
liront au maximum 100 lignes.

La restriction est vérifiée pour chaque fragment de données traité.

<Note>
  Ce paramètre est instable avec `prefer_localhost_replica=1`.
</Note>

<div id="max_rows_to_sort">
  ## max\_rows\_to\_sort
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

Nombre maximal de lignes avant le tri. Cela permet de limiter la consommation de mémoire lors du tri.
Si le nombre d’enregistrements à traiter pour l’opération ORDER BY dépasse la valeur spécifiée,
le comportement sera déterminé par `sort_overflow_mode`, qui est défini par défaut sur `throw`.

<div id="max_rows_to_transfer">
  ## max\_rows\_to\_transfer
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

Taille maximale (en lignes) pouvant être transmise à un serveur distant ou enregistrée dans une
table temporaire lors de l'exécution de la clause GLOBAL IN/JOIN.
