> ## 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.

# configurações de sessão max_rows_*

> Configurações de sessão do ClickHouse no grupo gerado de 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
  }}>Tipo</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>Padrão</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Pode ser alterado sem reiniciar
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

Essas configurações estão disponíveis em [system.settings](/docs/pt-BR/reference/system-tables/settings) e são geradas automaticamente a partir do [código-fonte](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": "Nova configuração para o número máximo de linhas no Set usado na otimização lazy FINAL"}]}]} />

Número máximo de linhas no Set usado na otimização lazy FINAL. Se esse limite for excedido, volta para o FINAL normal.

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

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

O número máximo de linhas distintas ao usar DISTINCT.

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

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

Limita o número de linhas na estrutura de dados do lado direito (normalmente uma
tabela hash) usada em junções de tabelas.

Essa configuração se aplica a operações [SELECT ... JOIN](/docs/pt-BR/reference/statements/select/join)
e ao motor de tabela [Join](/docs/pt-BR/reference/engines/table-engines/special/join).

Se uma consulta contiver várias junções, o ClickHouse verifica essa configuração para cada
resultado intermediário. Quando o limite é atingido, a ação depende do
[`join_algorithm`](/docs/pt-BR/reference/settings/session-settings/join#join_algorithm) escolhido — consulte
essa configuração para ver o comportamento de cada algoritmo (spill, reparticionamento, alternância ou
throw/break, conforme [`join_overflow_mode`](/docs/pt-BR/reference/settings/session-settings/join#join_overflow_mode)).

Valores possíveis:

* Inteiro positivo.
* `0` — Número ilimitado de linhas.

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

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

O número máximo de linhas de um Set de dados na cláusula IN criado a partir de uma subconsulta.

<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": "Desabilita a otimização de junção, pois ela impede a otimização de leitura em ordem"}]}]} />

Tamanho máximo do Set para filtrar, antes da junção, as tabelas envolvidas pelos conjuntos de linhas umas das outras.

Valores possíveis:

* 0 — Desabilita.
* Qualquer inteiro positivo.

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

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

O número máximo de chaves únicas recebidas da agregação. Essa configuração permite
limitar o consumo de memória durante a agregação.

Se a agregação durante o GROUP BY gerar mais do que o número especificado de
linhas (chaves GROUP BY únicas), o comportamento será determinado por
'group\_by\_overflow\_mode', que por padrão é `throw`, mas também pode ser alterado
para um modo aproximado de GROUP BY.

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

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

O número máximo de linhas que podem ser lidas de uma tabela ao executar uma consulta.
A restrição é verificada para cada fragmento de dados processado, aplicada apenas à
expressão de tabela mais profunda e, ao ler de um servidor remoto, verificada apenas no
servidor remoto.

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

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

O número máximo de linhas que podem ser lidas de uma tabela local em um nó folha ao
executar uma consulta distribuída. Embora consultas distribuídas possam emitir várias subconsultas
para cada shard (folha), esse limite será verificado apenas na etapa de leitura nos
nós folha e ignorado na etapa de mesclagem dos resultados no nó raiz.

Por exemplo, um cluster consiste em 2 shards, e cada shard contém uma tabela com
100 linhas. A consulta distribuída que deve ler todos os dados de ambas as
tabelas com a configuração `max_rows_to_read=150` falhará, pois haverá
200 linhas no total. Uma consulta com `max_rows_to_read_leaf=150` será bem-sucedida, já que os nós folha
lerão no máximo 100 linhas.

A restrição é verificada para cada fragmento de dados processado.

<Note>
  Essa configuração é instável com `prefer_localhost_replica=1`.
</Note>

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

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

O número máximo de linhas antes da ordenação. Isso permite limitar o consumo de memória durante a ordenação.
Se for necessário processar mais registros do que a quantidade especificada para a operação ORDER BY,
o comportamento será determinado por `sort_overflow_mode`, que por padrão está definido como `throw`.

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

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

Número máximo de linhas que podem ser passadas para um servidor remoto ou salvas em uma
tabela temporária quando a seção GLOBAL IN/JOIN é executada.
