> ## 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 s3_*

> Configurações de sessão do ClickHouse no grupo gerado s3_*.

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 autogeradas a partir do [código-fonte](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<div id="s3_check_objects_after_upload">
  ## s3\_check\_objects\_after\_upload
</div>

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

Verifique cada objeto enviado ao S3 com uma requisição HEAD para garantir que o upload foi concluído com sucesso

<div id="s3_connect_timeout_ms">
  ## s3\_connect\_timeout\_ms
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "1000"},{"label": "Introduz uma nova configuração dedicada para timeout de conexão com o S3"}]}]} />

Timeout de conexão com o host para disks S3.

<div id="s3_create_new_file_on_insert">
  ## s3\_create\_new\_file\_on\_insert
</div>

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

Habilita ou desabilita a criação de um novo arquivo a cada inserção em tabelas com o motor S3. Se estiver habilitado, a cada inserção será criado um novo objeto no S3 com a respectiva chave, seguindo um padrão como este:

inicial: `data.Parquet.gz` -> `data.1.Parquet.gz` -> `data.2.Parquet.gz`, etc.

Valores possíveis:

* 0 — a consulta `INSERT` cria um novo arquivo ou falha se o arquivo já existir e `s3_truncate_on_insert` não estiver definido.
* 1 — a consulta `INSERT` cria um novo arquivo a cada inserção, usando um sufixo (a partir do segundo), se `s3_truncate_on_insert` não estiver definido.

Veja mais detalhes [aqui](/docs/pt-BR/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse#inserting-data).

<div id="s3_disable_checksum">
  ## s3\_disable\_checksum
</div>

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

Não calcule um checksum ao enviar um arquivo para o S3. Isso acelera as gravações ao evitar processamento excessivo no arquivo. Em geral, isso é seguro, pois os dados das tabelas MergeTree já recebem checksums do ClickHouse, e, quando o S3 é acessado via HTTPS, a camada TLS já fornece integridade durante a transferência pela rede. Ainda assim, checksums adicionais no S3 oferecem uma camada extra de proteção.

<div id="s3_ignore_file_doesnt_exist">
  ## s3\_ignore\_file\_doesnt\_exist
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.6"},{"label": "0"},{"label": "Permite retornar 0 linhas quando os arquivos solicitados não existem, em vez de lançar uma exceção no mecanismo de tabela S3"}]}]} />

Ignora a ausência do arquivo ao ler determinadas chaves, caso ele não exista.

Valores possíveis:

* 1 — `SELECT` retorna resultado vazio.
* 0 — `SELECT` lança uma exceção.

<div id="s3_list_object_keys_size">
  ## s3\_list\_object\_keys\_size
</div>

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

Número máximo de arquivos que podem ser retornados em lote pela requisição ListObject

<div id="s3_min_upload_part_size">
  ## s3\_min\_upload\_part\_size
</div>

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

O tamanho mínimo da parte a ser enviada durante um upload multipart para o S3.

<div id="s3_path_filter_limit">
  ## s3\_path\_filter\_limit
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.12"},{"label": "1000"},{"label": "Nova configuração"}]}]} />

Número máximo de valores de `_path` que podem ser extraídos dos filtros da consulta para serem usados na iteração de arquivos
em vez da listagem via glob. 0 significa desativado.

<div id="s3_request_timeout_ms">
  ## s3\_request\_timeout\_ms
</div>

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

Tempo limite de inatividade para enviar e receber dados de/para o S3. A operação falha se uma única chamada TCP de leitura ou gravação ficar bloqueada por esse tempo.

<div id="s3_skip_empty_files">
  ## s3\_skip\_empty\_files
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.11"},{"label": "1"},{"label": "Esperamos que isso ofereça uma UX melhor"}]}]} />

Habilita ou desabilita a opção de ignorar arquivos vazios em tabelas com o motor [S3](/docs/pt-BR/reference/engines/table-engines/integrations/s3).

Valores possíveis:

* 0 — `SELECT` lança uma exceção se o arquivo vazio não for compatível com o formato solicitado.
* 1 — `SELECT` retorna um resultado vazio para um arquivo vazio.

<div id="s3_slow_all_threads_after_network_error">
  ## s3\_slow\_all\_threads\_after\_network\_error
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "1"},{"label": "Nova configuração"}]}]} />

Quando definido como `true`, todas as threads que executam requisições ao S3 para o mesmo endpoint de backup ficam mais lentas
depois que uma única requisição ao S3 encontra um erro de rede passível de nova tentativa, como timeout de socket.
Quando definido como `false`, cada thread lida com o backoff das requisições ao S3 de forma independente das demais.

<div id="s3_strict_upload_part_size">
  ## s3\_strict\_upload\_part\_size
</div>

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

O tamanho exato da parte a ser enviada durante o upload multipart para o S3 (algumas implementações não oferecem suporte a partes com tamanho variável).

<div id="s3_throw_on_zero_files_match">
  ## s3\_throw\_on\_zero\_files\_match
</div>

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

Gerar um erro quando a requisição ListObjects não encontrar nenhum arquivo

<div id="s3_truncate_on_insert">
  ## s3\_truncate\_on\_insert
</div>

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

Ativa ou desativa o truncamento antes de inserções em tabelas com o motor S3. Se estiver desativado, uma exceção será lançada ao tentar inserir caso um objeto S3 já exista.

Valores possíveis:

* 0 — a consulta `INSERT` cria um novo arquivo ou falha se o arquivo já existir e `s3_create_new_file_on_insert` não estiver definido.
* 1 — a consulta `INSERT` substitui o conteúdo existente do arquivo pelos novos dados.

Veja mais detalhes [aqui](/docs/pt-BR/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse#inserting-data).

<div id="s3_uri_style">
  ## s3\_uri\_style
</div>

<SettingsInfoBlock type="S3UriStyle" default_value="auto" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.4"},{"label": "auto"},{"label": "Nova configuração."}]}]} />

Força o uso do estilo de endpoint do S3. Valores possíveis: auto, virtual\_hosted, path.

<div id="s3_use_adaptive_timeouts">
  ## s3\_use\_adaptive\_timeouts
</div>

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

Quando definido como `true`, nas duas primeiras tentativas de todas as requisições ao S3 são usados timeouts baixos de envio e recebimento.
Quando definido como `false`, todas as tentativas são feitas com os mesmos timeouts.
