Projeto criado para "bricar" com Golang, ideia é pegar os dados públicos disponibilizados pela receita e transformar em uma base dados em um banco de dados relacional, nesse caso PostgreSQL.
Versão | Tempo Proc. | Data Arq. Sefaz | Data Proc. | Data Download | Tamanho Banco PostgreSQL | Tamanho Backup PostgreSQL | Registros | Link |
---|---|---|---|---|---|---|---|---|
0.0.1 | 6h | xx-xx-xx | 08-11-20 | 15-01-20 | 22,5 GB | 3,15 GB | Link para Download | |
0.0.2 | 12h | xx-xx-xx | 11-11-20 | 10-01-20 | 21,7 GB | 3,38 GB | 45.153.134 | Link para Download |
0.0.3 | 2h 37m | xx-xx-xx | 12-11-20 | 10-01-20 | - - - | - - - | 45.153.134 | v 0.0.2 |
0.1.0 | 5h 16m (total) | 23-11-20 | 02-01-21 | 02-01-21 | - - - | 3,56 | 46.536.906 | Link para Download |
Tempo Proc.: Tempo de leitura e gravação dos arquivos texto para PostgreSQL
Tempo Total.: Download, Descompactação,leitura e gravação dos arquivos texto para PostgreSQL
- 0.0.1: Versão inicial, processado os arquivos baixado, todos os dados em uma tabela
- 0.0.2: Corrigido os problemas com ORM, iniciado melhorias de modelagem. Encontrado problema em algumas linhas, valores fora da posição, ainda na análise de como resolver.
- 0.0.3: 10 goroutines usando "wait group" com uma conexão com banco cada goroutines; Ainda com problema em algumas linhas que vieram erradas, mostra numero de caracteres certo mais vendo a linha no Notepad++ a diferença grande ao final da linha :-/
- 0.1.0: Configuração Dockerfile e Docker Compose para executar rotina por completa pelo Docker; Não verificado as linhas com problema; Problema agora com tamanho das imagens geradas no Docker
- Melhorar forma de processamento para não criar imagem/container enorme (100GB++)
- Individualmente descompactar, processar arquivo texto e apagar arquivos
- Encontrar problema existente em algumas linhas, quebra código da cidade e consequentemente não cadastra aquela empresa.
- Golang via Docker
- PostgreSQL: 13.x via Docker
- i7 8700K
- 32 GB RAM
- 1 TB SSD M.2 NVME 3000mb/s+