> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-parallel-read-in-order-multi-part.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# paramètres de session join_runtime_*

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

export const VersionHistory = ({rows = []}) => {
  if (rows.length === 0) {
    return null;
  }
  const headers = ["Version", "Valeur par défaut", "Commentaire"];
  const border = "1px solid rgba(128, 128, 128, 0.3)";
  const cell = {
    border,
    padding: "0.25rem 0.5rem",
    textAlign: "start",
    verticalAlign: "top"
  };
  return <details className="not-prose" style={{
    border,
    borderRadius: "0.5rem",
    margin: "0.5rem 0",
    padding: "0.5rem 0.75rem",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <summary style={{
    cursor: "pointer",
    fontWeight: 600,
    opacity: 0.72
  }}>
        Historique des versions
      </summary>
      <table style={{
    borderCollapse: "collapse",
    width: "100%",
    margin: "0.5rem 0 0"
  }}>
        <thead>
          <tr>
            {headers.map(header => <th key={header} style={{
    ...cell,
    fontWeight: 600,
    opacity: 0.72
  }}>
                {header}
              </th>)}
          </tr>
        </thead>
        <tbody>
          {rows.map((row, row_index) => <tr key={row.id ?? row_index}>
              {(row.items ?? []).map((item, item_index) => <td key={item_index} style={{
    ...cell,
    overflowWrap: "anywhere"
  }}>
                  {item?.label}
                </td>)}
            </tr>)}
        </tbody>
      </table>
    </details>;
};

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](/fr/reference/system-tables/settings) et sont générés automatiquement à partir du [source](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

## join\_runtime\_bloom\_filter\_bytes

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.9"},{"label": "524288"},{"label": "Les filtres runtime JOIN sont devenus une fonctionnalité de niveau Production."}]}, {"id": "row-2","items": [{"label": "25.10"},{"label": "524288"},{"label": "Nouveau paramètre"}]}]} />

Taille, en octets, d’un filtre de Bloom utilisé comme filtre runtime pour JOIN (voir le paramètre enable\_join\_runtime\_filters).

## join\_runtime\_bloom\_filter\_hash\_functions

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.9"},{"label": "3"},{"label": "Les filtres runtime JOIN sont devenus une fonctionnalité de niveau Production."}]}, {"id": "row-2","items": [{"label": "25.10"},{"label": "3"},{"label": "Nouveau paramètre"}]}]} />

Nombre de fonctions de hachage d’un filtre de Bloom utilisé comme filtre runtime pour JOIN (voir le paramètre enable\_join\_runtime\_filters).

## join\_runtime\_bloom\_filter\_max\_ratio\_of\_set\_bits

<SettingsInfoBlock type="Double" default_value="0.7" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.9"},{"label": "0.7"},{"label": "Les filtres runtime JOIN sont devenus une fonctionnalité de niveau Production."}]}, {"id": "row-2","items": [{"label": "26.1"},{"label": "0.7"},{"label": "Nouveau paramètre"}]}]} />

Si le nombre de bits à 1 dans un filtre de Bloom à l’exécution dépasse ce ratio, le filtre est entièrement désactivé afin de réduire le surcoût.

## join\_runtime\_filter\_blocks\_to\_skip\_before\_reenabling

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.9"},{"label": "30"},{"label": "Les filtres runtime JOIN sont devenus une fonctionnalité de niveau Production."}]}, {"id": "row-2","items": [{"label": "26.1"},{"label": "30"},{"label": "Nouveau paramètre"}]}]} />

Nombre de blocs ignorés avant de tenter de réactiver dynamiquement un filtre runtime précédemment désactivé en raison d'un ratio de filtrage insuffisant.

## join\_runtime\_filter\_exact\_values\_limit

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.9"},{"label": "10000"},{"label": "Les filtres runtime JOIN sont devenus une fonctionnalité de niveau Production."}]}, {"id": "row-2","items": [{"label": "25.10"},{"label": "10000"},{"label": "Nouveau paramètre"}]}]} />

Nombre maximal d’éléments dans le runtime filter stockés tels quels dans un Set ; au-delà de ce seuil, il bascule vers un filtre de Bloom.

## join\_runtime\_filter\_from\_fixed\_hash\_table

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.6"},{"label": "1"},{"label": "Nouveau paramètre."}]}]} />

Lorsque le côté build du hash join est converti en FixedHashMap (voir `enable_join_fixed_hash_table_conversion`), cette table de hachage est utilisée directement comme filtre runtime.

## join\_runtime\_filter\_min\_probe\_rows

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.9"},{"label": "1000"},{"label": "Les filtres runtime JOIN sont devenus une fonctionnalité de niveau Production."}]}, {"id": "row-2","items": [{"label": "26.8"},{"label": "1000"},{"label": "Nouveau paramètre permettant de contrôler la taille minimale du côté sonde pour l'installation de filtres runtime JOIN. Elle n'était auparavant pas limitée, la valeur précédente était donc 0, ce qui signifiait qu'ils étaient toujours installés."}]}]} />

Si, lors de la planification de la requête, le côté sonde d'un JOIN est estimé produire au plus ce nombre de lignes, le filtre runtime JOIN n'est pas créé. La création et l'application d'un filtre runtime pour un côté sonde très petit coûtent plus qu'elles ne permettent d'économiser. Définissez cette valeur sur 0 pour toujours créer le filtre runtime, quelle que soit la taille estimée du côté sonde.

## join\_runtime\_filter\_pass\_ratio\_threshold\_for\_disabling

<SettingsInfoBlock type="Double" default_value="0.7" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.9"},{"label": "0.7"},{"label": "Les filtres runtime JOIN sont devenus une fonctionnalité de niveau Production."}]}, {"id": "row-2","items": [{"label": "26.1"},{"label": "0.7"},{"label": "Nouveau paramètre"}]}]} />

Si le ratio entre les lignes qui passent le filtre et les lignes vérifiées est supérieur à ce seuil, le filtre runtime est considéré comme peu performant et est désactivé pour les `join_runtime_filter_blocks_to_skip_before_reenabling` blocs suivants afin de réduire le surcoût.

## join\_runtime\_filter\_size\_from\_hash\_table\_stats

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.7"},{"label": "1"},{"label": "Utilise les statistiques de taille de la table de hachage collectées lors des exécutions précédentes pour dimensionner le filtre runtime du JOIN. Lorsqu’il est désactivé, utilise la valeur fixe `join_runtime_bloom_filter_bytes`."}]}]} />

Utilise les statistiques de taille de la table de hachage collectées lors des exécutions précédentes pour dimensionner le filtre runtime du JOIN. Lorsqu’il est désactivé, utilise la valeur fixe `join_runtime_bloom_filter_bytes`.
