cuducos / minha-receita

🏢 Sua API web para consulta de informações do CNPJ da Receita Federal
https://minhareceita.org
MIT License
1.29k stars 129 forks source link

Cria os dados em JSON em lote #95

Closed cuducos closed 2 years ago

cuducos commented 2 years ago

Esse PR melhora o #92 implementando a criação dos dados no banco de dados em lotes, utilizando o comando copy do PostgreSQL.

As principais mudanças são essas trocas na interface database (incluindo a exclusão do método SaveCompany):

Ação Antes Depois Explicação
Criar SaveCompany CreateCompanies A implementação desse comando muda do singular (um CNPJ) para o plural (vários CNPJs) e utiliza o comando copy para ser mais performático em grandes lotes.
Atualizar SaveCompany UpdateCompany Toda inserção de dados se dá pelo copy, então não fazemos mais upsert.

Uma mudança melhor que faciliotu os testes foi a criação da opção --clean-up que não é diretamente ligada ao objetivo principal do PR.