Tutorial
Categorias de Síntese
O sintetizador-decomp
está disponível como uma ferramenta CLI. Para visualizar quais comandos este pode realizar,
que estão associados aos tipos de sínteses, basta fazer:
$ sintetizador-decomp --help
A saída observada deve ser:
>>> Usage: sintetizador-decomp [OPTIONS] COMMAND [ARGS]...
>>>
>>> Aplicação para realizar a síntese de informações em um modelo unificado de
>>> dados para o DECOMP.
>>>
>>> Options:
>>> --help Show this message and exit.
>>>
>>> Commands:
>>> cenarios Realiza a síntese dos dados de cenários do DECOMP.
>>> completa Realiza a síntese completa do DECOMP.
>>> execucao Realiza a síntese dos dados da execução do DECOMP.
>>> limpeza Realiza a limpeza dos dados resultantes de uma síntese.
>>> operacao Realiza a síntese dos dados da operação do DECOMP.
>>> sistema Realiza a síntese dos dados do sistema do DECOMP.
Além disso, cada um dos comandos possui um menu específico, que pode ser visto com, por exemplo:
$ sintetizador-decomp operacao --help
Que deve ter como saída:
>>> Usage: sintetizador-decomp operacao [OPTIONS] [VARIAVEIS]...
>>>
>>> Realiza a síntese dos dados da operação do DECOMP.
>>>
>>> Options:
>>> --formato TEXT formato para escrita da síntese
>>> --help Show this message and exit.
Argumentos Existentes
Para realizar a síntese completa do caso, está disponível o comando completa
, que realizará toda a síntese possível:
$ sintetizador-decomp completa
Se for desejado não realizar a síntese completa, mas apenas de alguns dos elementos, é possível chamar cada elemento a ser sintetizado:
$ sintetizador-decomp operacao CMO_SBM EARMF_SIN GTER_SBM
O formato de escrita padrão das sínteses é PARQUET
, que é um formato eficiente
de armazenamento de dados tabulares para aplicações de big data.
Caso seja desejado, é possível forçar a saída das sínteses através do argumento opcional --formato
, para qualquer categoria de síntese:
$ sintetizador-decomp execucao --formato CSV
No caso das sínteses da operação e de cenários, é possível paralelizar a leitura dos arquivos através do argumento opcional --processadores
:
$ sintetizador-decomp operacao --processadores 8
$ sintetizador-decomp cenarios --processadores 8
A síntese completa também aceita o paralelismo, aplicando-o a todas as categorias de síntese que são suportadas:
$ sintetizador-decomp completa --processadores 24
Exemplo de Uso
Um exemplo de chamada ao programa para realizar a síntese da operação de um caso do NEWAVE é o seguinte:
$ sintetizador-decomp operacao
O log observado no terminal deve ser semelhante a:
>>> 2025-01-13 09:11:13,412 INFO: # Realizando síntese da OPERACAO #
>>> 2025-01-13 09:11:13,413 INFO: Variáveis: [CMO_SBM, CTER_UTE, CTER_SIN, ...]
>>> 2025-01-13 09:11:13,414 INFO: Realizando sintese de CMO_SBM
>>> 2025-01-13 09:11:13,414 INFO: Lendo arquivo dec_oper_sist.csv
>>> 2025-01-13 09:11:13,418 INFO: Lendo arquivo dec_eco_discr.csv
>>> 2025-01-13 09:11:13,427 INFO: Lendo arquivo dadger.rv0
>>> 2025-01-13 09:11:13,703 INFO: Tempo para obtenção dos dados do dec_oper_sist: 0.29 s
>>> 2025-01-13 09:11:13,704 INFO: Tempo para compactacao dos dados: 0.00 s
>>> 2025-01-13 09:11:13,704 INFO: Tempo para calculo dos limites: 0.00 s
>>> 2025-01-13 09:11:13,704 INFO: Lendo arquivo vazoes.rv0
>>> 2025-01-13 09:11:13,735 INFO: Tempo para preparacao para exportacao: 0.03 s
>>> 2025-01-13 09:11:13,739 INFO: Tempo para exportacao dos dados: 0.00 s
>>> 2025-01-13 09:11:13,739 INFO: Tempo para sintese de CMO_SBM: 0.33 s
>>> ...
>>> 2025-01-13 09:10:09,276 INFO: Realizando sintese de GTER_UTE
>>> 2025-01-13 09:10:09,277 INFO: Tempo para obtenção dos dados do dec_oper_usit: 0.00 s
>>> 2025-01-13 09:10:09,278 INFO: Tempo para compactacao dos dados: 0.00 s
>>> 2025-01-13 09:10:09,280 INFO: Tempo para calculo dos limites: 0.00 s
>>> 2025-01-13 09:10:09,566 INFO: Tempo para preparacao para exportacao: 0.29 s
>>> 2025-01-13 09:10:09,569 INFO: Tempo para exportacao dos dados: 0.00 s
>>> 2025-01-13 09:10:09,569 INFO: Tempo para sintese de GTER_UTE: 0.29 s
>>> 2025-01-13 09:10:09,796 INFO: Realizando sintese de INTL_SBP
>>> 2025-01-13 09:10:09,810 INFO: Tempo para obtenção dos dados do dec_oper_interc: 0.01 s
>>> 2025-01-13 09:10:09,811 INFO: Tempo para compactacao dos dados: 0.00 s
>>> 2025-01-13 09:10:09,811 INFO: Tempo para calculo dos limites: 0.00 s
>>> 2025-01-13 09:10:09,843 INFO: Tempo para preparacao para exportacao: 0.03 s
>>> 2025-01-13 09:10:09,844 INFO: Tempo para exportacao dos dados: 0.00 s
>>> 2025-01-13 09:10:09,845 INFO: Tempo para sintese de INTL_SBP: 0.05 s
>>> 2025-01-13 09:10:10,437 INFO: Tempo para sintese da operacao: 19.44 s
>>> 2025-01-13 09:10:10,437 INFO: # Fim da síntese #