Closed LeandroGripp closed 2 years ago
O módulo foi isolado e conta com as funcionalidades determinadas acima, salvo a de filtrar por período, que será desenvolvido na outra Issue. Contudo, o script de filtragem já é capaz de receber os parâmetros de linha de comando que especificarão data de início e de fim, além de valor máximo. Atualmente, ele conta com uma pasta que servirá para armazenamento intermediário dos arquivos (raw-input), um script que faz as validações necessárias e gera os arquivos filtrados (validation.py) e um shell script que controla a rotina, primeiramente pegando os arquivos no hadoop, os encaminhando para o script de validação e, finalmente, os colocando no diretório de saída do módulo, que deve ser especificado ao chamar o shell script
No momento que escrevo, ainda tem o arquivo de determinação dos pesos dos vínculos, mas esse será movido para o módulo 3, posteriormente
Finalmente, a chamada do módulo se faz através do shell script principal clean-filter-data.sh, da seguinte forma:
./clean-filter-data.sh <OUTPUT_PATH> [--optional-args]
,
em que --start-date=dd/mm/yyyy
--end-date=dd/mm/yyyy
--max-value=XXXXXXX
Assim, uma chamada exemplo com todos os argumentos seria:
./clean-filter-data.sh ../output-module-2 --start-date=01/02/2019 --end-date=01/11/2019 --max-value=30000
Assim, obteríamos todas as licitações entre fevereiro de 2019 e 01/11/2019 com valor menor ou igual a 30000 reais. A ordem dos argumentos opcionais é irrelevante e, em caso de não desejarmos especificar algum deles, basta omiti-lo. Não é necessário utilizar nenhum valor padrão.
Atualmente, temos um módulo de obtenção e limpeza de dados. Devemos, assim, isolar o módulo de filtragem e limpeza de dados. O módulo deverá: