Essas configurações estão disponíveis em system.settings e são autogeradas a partir do código-fonte.
s3_base
Histórico de versões
| Versão | Valor padrão | Comentário |
|---|---|---|
| 26.8 | Nova configuração para especificar a URL base usada na resolução de URLs relativas na função de tabela s3 e no mecanismo de tabela S3. |
A URL base usada para resolver URLs relativas na função de tabela s3 e no mecanismo de tabela S3, bem como nas funções de tabela que compartilham essa configuração (s3Cluster, gcs, oss).
Quando definida, uma URL sem esquema é resolvida em relação a s3_base conforme a RFC 3986, usando as mesmas regras de url_base. URLs que já contêm um esquema são usadas como estão.
Por exemplo, se s3_base for s3://clickhouse-public-datasets/, então s3('hits_compatible/hits.csv') lê s3://clickhouse-public-datasets/hits_compatible/hits.csv.
A URL base pode usar qualquer formato aceito pela função de tabela s3, por exemplo, s3://bucket/, https://bucket.s3.amazonaws.com/ ou https://endpoint/bucket/.
s3_check_objects_after_upload
Verifique cada objeto enviado ao S3 com uma requisição HEAD para garantir que o upload foi concluído com sucesso
s3_connect_timeout_ms
Histórico de versões
| Versão | Valor padrão | Comentário |
|---|---|---|
| 24.3 | 1000 | Introduz uma nova configuração dedicada para timeout de conexão com o S3 |
Timeout de conexão com o host para disks S3.
s3_create_new_file_on_insert
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
INSERTcria um novo arquivo ou falha se o arquivo já existir es3_truncate_on_insertnão estiver definido. - 1 — a consulta
INSERTcria um novo arquivo a cada inserção, usando um sufixo (a partir do segundo), ses3_truncate_on_insertnão estiver definido.
Veja mais detalhes aqui.
s3_disable_checksum
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.
s3_ignore_file_doesnt_exist
Histórico de versões
| Versão | Valor padrão | Comentário |
|---|---|---|
| 24.6 | 0 | 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 —
SELECTretorna resultado vazio. - 0 —
SELECTlança uma exceção.
s3_list_object_keys_size
Número máximo de arquivos que podem ser retornados em lote pela requisição ListObject
s3_min_upload_part_size
O tamanho mínimo da parte a ser enviada durante um upload multipart para o S3.
s3_path_filter_limit
Histórico de versões
| Versão | Valor padrão | Comentário |
|---|---|---|
| 25.12 | 1000 | 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.
s3_request_timeout_ms
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.
s3_skip_empty_files
Histórico de versões
| Versão | Valor padrão | Comentário |
|---|---|---|
| 24.11 | 1 | Esperamos que isso ofereça uma UX melhor |
Habilita ou desabilita a opção de ignorar arquivos vazios em tabelas com o motor S3.
Valores possíveis:
- 0 —
SELECTlança uma exceção se o arquivo vazio não for compatível com o formato solicitado. - 1 —
SELECTretorna um resultado vazio para um arquivo vazio.
s3_slow_all_threads_after_network_error
Histórico de versões
| Versão | Valor padrão | Comentário |
|---|---|---|
| 25.5 | 1 | 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.
s3_strict_upload_part_size
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).
s3_throw_on_zero_files_match
Gerar um erro quando a requisição ListObjects não encontrar nenhum arquivo
s3_truncate_on_insert
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
INSERTcria um novo arquivo ou falha se o arquivo já existir es3_create_new_file_on_insertnão estiver definido. - 1 — a consulta
INSERTsubstitui o conteúdo existente do arquivo pelos novos dados.
Veja mais detalhes aqui.
s3_uri_style
Histórico de versões
| Versão | Valor padrão | Comentário |
|---|---|---|
| 26.4 | auto | Nova configuração. |
Força o uso do estilo de endpoint do S3. Valores possíveis: auto, virtual_hosted, path.
s3_use_adaptive_timeouts
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.