Grafo degli asset Dagster

Asset definiti in anac_appalti.definitions: un asset raw e uno di landing per pacchetto ANAC, un asset per modello dbt, il riepilogo di qualità con il controllo qualita_dati. Job pipeline_completo, sensor ckan_aggiornato, schedule mensile_25.

Il grafo viene dalle definizioni del codice e non dipende dai dati. La pagina è generata dalla CI sulla fixture sintetica, non da un'esecuzione sui dati reali: i numeri della prima esecuzione reale (2024–2026) sono nel README e in docs/qualita-dati.md.

flowchart LR
  subgraph estrazione [estrazione]
    raw_aggiudicatari["raw_aggiudicatari"]
    raw_aggiudicazioni["raw_aggiudicazioni"]
    raw_cig["raw_cig"]
    raw_partecipanti["raw_partecipanti"]
    raw_stazioni_appaltanti["raw_stazioni_appaltanti"]
    raw_subappalti["raw_subappalti"]
    raw_tipi_scelta_contraente["raw_tipi_scelta_contraente"]
    raw_varianti["raw_varianti"]
  end
  subgraph intermediate [intermediate]
    int_aggiudicatari__corrente["int_aggiudicatari__corrente"]
    int_aggiudicazioni__corrente["int_aggiudicazioni__corrente"]
    int_cig__corrente["int_cig__corrente"]
    int_cig__versioni["int_cig__versioni"]
    int_lotti__qualita["int_lotti__qualita"]
    int_operatori["int_operatori"]
    int_partecipanti__corrente["int_partecipanti__corrente"]
    int_perdite_parsing["int_perdite_parsing"]
    int_radar__lotti["int_radar__lotti"]
    int_riconciliazione["int_riconciliazione"]
    int_stazioni["int_stazioni"]
    int_stazioni_da_verificare["int_stazioni_da_verificare"]
    int_subappalti__corrente["int_subappalti__corrente"]
    int_varianti__corrente["int_varianti__corrente"]
  end
  subgraph landing [landing]
    landing_aggiudicatari["landing_aggiudicatari"]
    landing_aggiudicazioni["landing_aggiudicazioni"]
    landing_cig["landing_cig"]
    landing_partecipanti["landing_partecipanti"]
    landing_stazioni_appaltanti["landing_stazioni_appaltanti"]
    landing_subappalti["landing_subappalti"]
    landing_tipi_scelta_contraente["landing_tipi_scelta_contraente"]
    landing_varianti["landing_varianti"]
  end
  subgraph marts [marts]
    dim_cpv["dim_cpv"]
    dim_data["dim_data"]
    dim_operatori["dim_operatori"]
    dim_procedure["dim_procedure"]
    dim_stazioni_appaltanti["dim_stazioni_appaltanti"]
    dim_territorio["dim_territorio"]
    fct_aggiudicazioni["fct_aggiudicazioni"]
    fct_lotti["fct_lotti"]
    fct_partecipazioni["fct_partecipazioni"]
    fct_subappalti["fct_subappalti"]
    fct_varianti["fct_varianti"]
    mart_appalti_regione_mese["mart_appalti_regione_mese"]
    mart_appalti_settore_cpv["mart_appalti_settore_cpv"]
    mart_concorrenza["mart_concorrenza"]
    mart_procedure["mart_procedure"]
    mart_ribassi["mart_ribassi"]
    mart_stazioni_appaltanti["mart_stazioni_appaltanti"]
    mart_tasso_aggiudicazione["mart_tasso_aggiudicazione"]
    mart_tempi_aggiudicazione["mart_tempi_aggiudicazione"]
    mart_varianti_subappalti["mart_varianti_subappalti"]
  end
  subgraph qualita [qualita]
    riepilogo_qualita["riepilogo_qualita"]
  end
  subgraph seeds [seeds]
    ausa_enti_verificati["ausa_enti_verificati"]
    ausa_persone_fisiche["ausa_persone_fisiche"]
    divisioni_cpv["divisioni_cpv"]
    famiglie_procedura["famiglie_procedura"]
    regioni_province["regioni_province"]
  end
  subgraph staging [staging]
    stg_anac__aggiudicatari["stg_anac__aggiudicatari"]
    stg_anac__aggiudicazioni["stg_anac__aggiudicazioni"]
    stg_anac__cig["stg_anac__cig"]
    stg_anac__partecipanti["stg_anac__partecipanti"]
    stg_anac__stazioni_appaltanti["stg_anac__stazioni_appaltanti"]
    stg_anac__subappalti["stg_anac__subappalti"]
    stg_anac__tipi_scelta_contraente["stg_anac__tipi_scelta_contraente"]
    stg_anac__varianti["stg_anac__varianti"]
  end
  divisioni_cpv --> dim_cpv
  int_cig__corrente --> dim_cpv
  int_operatori --> dim_operatori
  famiglie_procedura --> dim_procedure
  int_cig__corrente --> dim_procedure
  stg_anac__tipi_scelta_contraente --> dim_procedure
  int_stazioni --> dim_stazioni_appaltanti
  regioni_province --> dim_stazioni_appaltanti
  regioni_province --> dim_territorio
  fct_lotti --> fct_aggiudicazioni
  int_aggiudicazioni__corrente --> fct_aggiudicazioni
  int_cig__corrente --> fct_lotti
  int_lotti__qualita --> fct_lotti
  int_stazioni --> fct_lotti
  regioni_province --> fct_lotti
  fct_lotti --> fct_partecipazioni
  int_aggiudicatari__corrente --> fct_partecipazioni
  int_partecipanti__corrente --> fct_partecipazioni
  fct_lotti --> fct_subappalti
  int_subappalti__corrente --> fct_subappalti
  fct_lotti --> fct_varianti
  int_varianti__corrente --> fct_varianti
  stg_anac__aggiudicatari --> int_aggiudicatari__corrente
  stg_anac__aggiudicazioni --> int_aggiudicazioni__corrente
  int_cig__versioni --> int_cig__corrente
  stg_anac__cig --> int_cig__versioni
  int_aggiudicatari__corrente --> int_lotti__qualita
  int_aggiudicazioni__corrente --> int_lotti__qualita
  int_cig__corrente --> int_lotti__qualita
  int_cig__versioni --> int_lotti__qualita
  stg_anac__stazioni_appaltanti --> int_lotti__qualita
  int_aggiudicatari__corrente --> int_operatori
  int_partecipanti__corrente --> int_operatori
  int_subappalti__corrente --> int_operatori
  stg_anac__partecipanti --> int_partecipanti__corrente
  landing_aggiudicazioni --> int_perdite_parsing
  landing_cig --> int_perdite_parsing
  landing_subappalti --> int_perdite_parsing
  landing_varianti --> int_perdite_parsing
  dim_cpv --> int_radar__lotti
  dim_procedure --> int_radar__lotti
  dim_stazioni_appaltanti --> int_radar__lotti
  dim_territorio --> int_radar__lotti
  fct_aggiudicazioni --> int_radar__lotti
  fct_lotti --> int_radar__lotti
  fct_subappalti --> int_radar__lotti
  fct_varianti --> int_radar__lotti
  landing_meta_registro --> int_riconciliazione
  int_cig__corrente --> int_stazioni
  stg_anac__stazioni_appaltanti --> int_stazioni
  stg_anac__stazioni_appaltanti --> int_stazioni_da_verificare
  stg_anac__subappalti --> int_subappalti__corrente
  stg_anac__varianti --> int_varianti__corrente
  raw_aggiudicatari --> landing_aggiudicatari
  raw_aggiudicazioni --> landing_aggiudicazioni
  raw_cig --> landing_cig
  raw_partecipanti --> landing_partecipanti
  raw_stazioni_appaltanti --> landing_stazioni_appaltanti
  raw_subappalti --> landing_subappalti
  raw_tipi_scelta_contraente --> landing_tipi_scelta_contraente
  raw_varianti --> landing_varianti
  int_radar__lotti --> mart_appalti_regione_mese
  int_radar__lotti --> mart_appalti_settore_cpv
  int_radar__lotti --> mart_concorrenza
  int_radar__lotti --> mart_procedure
  int_radar__lotti --> mart_ribassi
  int_radar__lotti --> mart_stazioni_appaltanti
  int_radar__lotti --> mart_tasso_aggiudicazione
  int_radar__lotti --> mart_tempi_aggiudicazione
  int_radar__lotti --> mart_varianti_subappalti
  ausa_enti_verificati --> riepilogo_qualita
  ausa_persone_fisiche --> riepilogo_qualita
  dim_cpv --> riepilogo_qualita
  dim_data --> riepilogo_qualita
  dim_operatori --> riepilogo_qualita
  dim_procedure --> riepilogo_qualita
  dim_stazioni_appaltanti --> riepilogo_qualita
  dim_territorio --> riepilogo_qualita
  divisioni_cpv --> riepilogo_qualita
  famiglie_procedura --> riepilogo_qualita
  fct_aggiudicazioni --> riepilogo_qualita
  fct_lotti --> riepilogo_qualita
  fct_partecipazioni --> riepilogo_qualita
  fct_subappalti --> riepilogo_qualita
  fct_varianti --> riepilogo_qualita
  int_aggiudicatari__corrente --> riepilogo_qualita
  int_aggiudicazioni__corrente --> riepilogo_qualita
  int_cig__corrente --> riepilogo_qualita
  int_cig__versioni --> riepilogo_qualita
  int_lotti__qualita --> riepilogo_qualita
  int_operatori --> riepilogo_qualita
  int_partecipanti__corrente --> riepilogo_qualita
  int_perdite_parsing --> riepilogo_qualita
  int_radar__lotti --> riepilogo_qualita
  int_riconciliazione --> riepilogo_qualita
  int_stazioni --> riepilogo_qualita
  int_stazioni_da_verificare --> riepilogo_qualita
  int_subappalti__corrente --> riepilogo_qualita
  int_varianti__corrente --> riepilogo_qualita
  mart_appalti_regione_mese --> riepilogo_qualita
  mart_appalti_settore_cpv --> riepilogo_qualita
  mart_concorrenza --> riepilogo_qualita
  mart_procedure --> riepilogo_qualita
  mart_ribassi --> riepilogo_qualita
  mart_stazioni_appaltanti --> riepilogo_qualita
  mart_tasso_aggiudicazione --> riepilogo_qualita
  mart_tempi_aggiudicazione --> riepilogo_qualita
  mart_varianti_subappalti --> riepilogo_qualita
  regioni_province --> riepilogo_qualita
  stg_anac__aggiudicatari --> riepilogo_qualita
  stg_anac__aggiudicazioni --> riepilogo_qualita
  stg_anac__cig --> riepilogo_qualita
  stg_anac__partecipanti --> riepilogo_qualita
  stg_anac__stazioni_appaltanti --> riepilogo_qualita
  stg_anac__subappalti --> riepilogo_qualita
  stg_anac__tipi_scelta_contraente --> riepilogo_qualita
  stg_anac__varianti --> riepilogo_qualita
  landing_aggiudicatari --> stg_anac__aggiudicatari
  landing_aggiudicazioni --> stg_anac__aggiudicazioni
  ausa_persone_fisiche --> stg_anac__cig
  landing_cig --> stg_anac__cig
  landing_stazioni_appaltanti --> stg_anac__cig
  landing_partecipanti --> stg_anac__partecipanti
  ausa_persone_fisiche --> stg_anac__stazioni_appaltanti
  landing_stazioni_appaltanti --> stg_anac__stazioni_appaltanti
  landing_subappalti --> stg_anac__subappalti
  landing_tipi_scelta_contraente --> stg_anac__tipi_scelta_contraente
  landing_varianti --> stg_anac__varianti

Elenco

Fonte: ANAC – Autorità Nazionale Anticorruzione, dati.anticorruzione.it, licenza CC BY-SA 4.0; dati elaborati.