Pular para conteúdo

s3 / minio

fonte

lê arquivos armazenados no minio ou em buckets s3 compatíveis. suporta parquet, csv, json e excel. usa duckdb httpfs para leitura direta de parquet e csv, sem download intermediário.


casos de uso

  • ler exports de sistemas que geram arquivos csv/excel
  • consumir arquivos parquet gerados por outros pipelines
  • processar dumps de dados armazenados em object storage

formatos suportados

formato leitura observações
parquet duckdb httpfs nativo mais eficiente — leitura colunar
csv duckdb httpfs nativo detecção automática de schema
json duckdb httpfs nativo auto_detect habilitado
excel pandas (fallback) requer download do arquivo para memória

configuração

campo tipo obrigatório descrição
bucket string não nome do bucket · padrão: bucket do lakehouse do workspace
key string sim caminho do arquivo no bucket. suporta {{variavel}}
file_format enum não parquet, csv, json, excel · padrão: parquet
csv_delimiter string não delimitador para csv · padrão: ,

exemplos

ler parquet do lakehouse

{
  "key": "exports/clientes/2024-01/data.parquet",
  "file_format": "parquet"
}

o bucket padrão é o bucket do lakehouse configurado no workspace.

ler csv com ponto-e-vírgula

{
  "bucket": "meu-bucket-externo",
  "key": "uploads/vendas_2024.csv",
  "file_format": "csv",
  "csv_delimiter": ";"
}

caminho dinâmico com variável

{
  "key": "exports/{{entidade}}/{{ano}}-{{mes}}/data.parquet",
  "file_format": "parquet"
}

se as variáveis de pipeline entidade=clientes, ano=2024, mes=01 estiverem configuradas, o caminho resolvido será:

exports/clientes/2024-01/data.parquet

ler arquivo json

{
  "bucket": "dados-raw",
  "key": "api-dumps/produtos.json",
  "file_format": "json"
}

ler excel

{
  "bucket": "uploads",
  "key": "relatorios/relatorio_mensal.xlsx",
  "file_format": "excel"
}

excel usa pandas

arquivos excel são baixados completamente para memória antes da leitura. para volumes grandes, prefira converter para csv ou parquet antes de armazenar.


estrutura de caminho do lakehouse

dados gerados pelos pipelines são armazenados em:

s3://{bucket}/{org_id}/{workspace_id}/lakehouses/{slug}/tabelas/{tabela}/data.parquet

para ler uma tabela gerada por outro pipeline, use o nó lakehouse reader — ele resolve o caminho automaticamente.


credenciais do minio

as credenciais do minio são lidas das variáveis de ambiente do backend:

MINIO_ENDPOINT=minio:9000
MINIO_ACCESS_KEY=...
MINIO_SECRET_KEY=...
MINIO_CATALOG_BUCKET=migdata-catalog

não é necessário configurar uma credencial no vault para este conector.