Silver → Gold¶
A camada Gold transforma a Silver em uma visão operacional útil para dashboards e análises curtas.
Comando¶
poetry run python -m air_traffic_beam.pipelines.silver_to_gold \
--runner=DirectRunner \
--direct_num_workers=1
Visões geradas¶
Latest¶
data/gold/latest/latest_aircraft_states-<run_id>-00000-of-00001.jsonl
Representa a última observação por aeronave, escolhida pelo maior last_contact.
Traffic¶
data/gold/traffic/traffic_summary-<run_id>-00000-of-00001.jsonl
Contém agregados como:
- aeronaves observadas;
- aeronaves únicas;
- número de observações em voo;
- número de observações no solo;
- velocidade média;
- altitude média;
- último contato observado.
Como a agregação funciona¶
- Leitura da Silver em Parquet;
- agrupamento por
icao24; - seleção do registro mais recente;
- resumo calculado em uma ramificação independente, sobre todas as observações de entrada;
- gravação em JSONL por execução.
Observabilidade¶
Assim como nas outras etapas, o Gold registra um relatório JSON com status, arquivos produzidos e contagens reais.
Escopo da carga¶
--input aceita um diretório, arquivo Parquet ou padrão. O padrão é ler todos os Parquets sob data/silver/aircraft_states. O orquestrador run_all passa somente a Silver recém-produzida.
Os argumentos --latest-output e --summary-output definem prefixos de saída. UUID e sufixo de shard são acrescentados automaticamente.
latest deduplica por aeronave, mas traffic inclui observações repetidas. Não há janela temporal Beam nem filtro de idade das posições: a visão depende dos arquivos selecionados. Consulte o dicionário para a definição de cada agregado.