
In questa storia parlerò di uno dei modi più popolari per eseguire attività di trasformazione dei dati: l’elaborazione batch dei dati. Questo modello di progettazione della pipeline di dati diventa incredibilmente utile quando dobbiamo elaborare i dati in blocchi, rendendolo molto efficiente per i lavori ETL che richiedono pianificazione. Dimostrerò come è possibile ottenere questo risultato costruendo una pipeline di trasformazione dei dati utilizzando MySQL e Athena. Utilizzeremo l’infrastruttura come codice per distribuirla nel cloud.
Immagina di essere appena entrato in un’azienda come Data Engineer. Il loro stack di dati è moderno, basato sugli eventi, conveniente, flessibile e può essere facilmente scalato per soddisfare le crescenti risorse di dati di cui disponi. Le origini dati esterne e le pipeline di dati nella tua piattaforma dati sono gestite dal team di ingegneria dei dati utilizzando una configurazione di ambiente flessibile con integrazione CI/CD GitHub.
In qualità di ingegnere dei dati devi creare un dashboard di business intelligence che visualizzi la geografia dei flussi di entrate aziendali come mostrato di seguito. I dati grezzi di pagamento vengono archiviati nel database del server (MySQL). Desideri creare una pipeline batch che estragga quotidianamente i dati da quel database, quindi utilizzare AWS S3 per archiviare i file di dati e Athena per elaborarli.
Pipeline di dati batch
Una pipeline di dati può essere considerata come una sequenza di passaggi di elaborazione dei dati. A causa di connessioni logiche del flusso di dati tra queste fasi, ciascuna fase genera un produzione che funge da ingresso per la fase successiva.
Esiste una pipeline di dati ogni volta che avviene l’elaborazione dei dati tra i punti A e B.
Le pipeline di dati potrebbero essere diverse a causa della loro natura concettuale e logica. Ne ho già parlato qui (1):
Fonte: towardsdatascience.com