Come ottimizzare la comunicazione nelle pipeline di dati utilizzando Mage

Ottimizzare la comunicazione nelle pipeline di dati con Mage

Lascia che il bot si occupi delle comunicazioni difficili per noi

Foto di Volodymyr Hryshchenko su Unsplash

Ti è mai capitata una situazione in cui i tuoi flussi di dati downstream sono bloccati da un piccolo errore manuale in uno dei fogli di Google? A volte, il foglio non è nemmeno di proprietà del tuo team, quindi non puoi fare altro che cercare il proprietario del foglio per sistemarlo. Nel frattempo, molti altri flussi critici falliscono come conseguenza e devi occupartene anche tu.

Ti senti esausto/a e svuotato/a. La parte peggiore è che non c’è nulla che tu possa fare veramente come ingegnere. Si tratta solo di una comunicazione infinita e di una gestione degli stakeholder. Il problema del foglio di Google è solo un esempio di problemi sorgente che possono verificarsi su varie scale. Prenditi un momento per riflettere su un problema che ti riguarda mentre approfondiamo l’articolo.

Una chiave per migliorare questa situazione è automatizzare il ciclo di comunicazione all’interno dei tuoi flussi di dati. Se il tuo flusso di lavoro ha un meccanismo di avviso, allora è già un buon punto di partenza. Tuttavia, gli avvisi si rivolgono principalmente ai team di data engineering anziché ai team esterni.

In base alla mia esperienza, è altrettanto importante stabilire una comunicazione proattiva con il team sorgente o gli utenti finali per assicurarsi che siano ben informati sulle situazioni in corso e possano agire di conseguenza. In tutto questo articolo, userò Mage per l’implementazione, un’alternativa moderna ad Airflow nota per le sue funzionalità efficaci nel risolvere tali problemi.

Comunicazione automatizzata

Una delle missioni degli ingegneri è automatizzare le cose. Ci fa risparmiare tempo per il futuro ed è divertente. Nessuno si diverte a inseguire continuamente il team di sourcing per risolvere i problemi di dati o a spiegare individualmente agli utenti finali cosa è successo quando le cose non funzionano. Piuttosto, faremmo fare tutto questo a un bot. Possiamo implementare due livelli di automazione:

Feedback immediato al team sorgente dei dati — Invece di informare manualmente il team sorgente sul problema dei dati, è possibile stabilire una comunicazione automatica e coerente tramite un bot. Ogni volta che un test di dati fallisce, verrà attivata una funzione di tipo callback per notificare il team sorgente tramite email o Slack, fornendo loro dettagli sulle ragioni per…