Executando verificação de segurança...
1

Trabalho com essa base de CNPJs.

Inclusive os arquivos da receita tem alguns dados inconsistentes.

Entre os arquivos e o banco final (uso o AWS Aurora Postgresql) eu usei o DuckDB. E um app feito em GO para fazer o download, descompactação e adequação a UTF8, o app então usa o DuckDB para carregar os arquivos em um arquivo único, normalizo o que preciso no DuckDB e retiro as inconsistências. Depois o DuckDB já exporta chunks já com gzip e subo para o S3. Depois o Aurora carrega tudo do S3. Índices são carregados depois.

Mensalmente ao invés de eu recriar a base do zero, adotei um padrão de dectar as diferenças entre meses localmente com DuckDB e só subo as atualizações. Inclusive uso um modelo SCD Tipo 2 no banco de destino. Assim consigo ter os históricos das alterações.

Carregando publicação patrocinada...
1

É uma boa lógica, no meu caso, cheguei a conslusão que é mais fácil reimportar tudo mês a mês. Poupa dor de cabeça nos upserts. Não conhecia o duckdb, vou dar uma olhada.