Osservabilità dei dati all’avanguardia dati, codice, infrastruttura e intelligenza artificiale
Observability of cutting-edge data data, code, infrastructure, and artificial intelligence

Rappresentare il passato, il presente e il futuro dell’architettura dei sistemi dati affidabili.
Quando abbiamo lanciato la categoria “osservabilità dei dati” nel 2019, il termine era qualcosa che a malapena riuscivo a pronunciare.
Quattro anni dopo, la categoria si è stabilita saldamente come “uno strato fondamentale dello stack dati moderno”. L’osservabilità dei dati è una categoria di G2, riconosciuta da Gartner, Forrester e altri, e soprattutto ampiamente adottata da centinaia di aziende, tra cui alcune delle organizzazioni dati più avanzate al mondo.
In effetti, il CTO di una società in forte crescita mi ha detto di recente: “Questo è il trend secolare dato come sta cambiando il mondo. L’osservabilità dei dati sarebbe successa prima o poi e non c’è niente che si possa fare per fermarla”.
- Implementazione universale degli algoritmi BFS, DFS, Dijkstra e A-Star
- Trasformare i pixel in etichette descrittive Padronanza della classificazione multiclasse delle immagini con TensorFlow
- Il decoratore Python che potenzia l’esperienza dello sviluppatore 🚀
Anche se ancora non riesco sempre a pronunciarlo correttamente (inglese come seconda lingua, qualcuno?), l’osservabilità dei dati è diventata un must per i team dati moderni e non potrei essere più orgoglioso di quanto sia arrivato questo movimento – e di dove stiamo andando.
Quindi, cosa ci riserva il futuro della affidabilità dei dati? Per capire dove stiamo andando, aiuta prima fare un passo indietro e valutare quanto abbiamo fatto finora.
Da dove abbiamo cominciato
Nel metà degli anni 2010, i team dati hanno iniziato a migrare verso il cloud e adottare tecnologie di archiviazione e calcolo dei dati – Redshift, Snowflake, Databricks, GCP, oh mio! – per far fronte alla crescente domanda di analisi. Il cloud ha reso i dati più veloci da elaborare, più facili da trasformare e molto più accessibili.
Man mano che i dati diventavano sempre più diffusi, i flussi di lavoro diventavano più complessi, nuove figure professionali entravano in scena per gestire questo caos (ciao, ingegneri dati) e il numero di possibili casi d’uso aumentava.
Il lato positivo? Decisioni più informate, più casi d’uso dei dati e software più intelligente.
Il lato negativo? I concetti di base, come la qualità dei dati, venivano trascurati e lasciati in secondo piano rispetto alle parti più appariscenti di questo stack dati moderno.
In una vita precedente, ho visto di persona le conseguenze dei dati errati. Chiamate alle 5 del mattino dal nostro CFO quando “i dati sembrano sbagliati”. Post-it sul mio monitor del computer da parte degli interessati quando i dashboard non si aggiornavano. Clienti frustrati che si grattavano la testa perché il nostro prodotto veniva alimentato con dati inaccurati.
L’osservabilità dei dati è nata da questo dolore – ciò a cui ci riferivamo come “tempo di inattività dei dati” – e ha offerto una soluzione tangibile. Ispirata all’osservabilità delle applicazioni e all’ingegneria della affidabilità dei siti, l’osservabilità dei dati monitora e avvisa le organizzazioni degli incidenti di dati prima che abbiano un impatto sul business. L’osservabilità dei dati ha offerto un’alternativa automatizzata e basata su processi per garantire l’affidabilità dei dati, riducendo i costi, promuovendo la crescita e riducendo notevolmente le emergenze alle 5 del mattino.
Storicamente, i migliori approcci di osservabilità dei dati includono tre fasi principali: detection (rilevamento), resolution (risoluzione) e prevention (prevenzione).
- Rilevamento: L’osservabilità dei dati rileva anomalie e altri problemi nei tuoi dati e avvisa i responsabili appropriati del team dati prima che gli interessati ne vengano a conoscenza.
- Risoluzione: Allo stesso tempo, le piattaforme di osservabilità dei dati forniscono ai team gli strumenti per risolvere il problema, inclusi la tracciabilità a livello di campo, l’analisi delle cause radice e delle conseguenze, informazioni sugli incidenti passati che hanno interessato quel dato, log delle query correlate e modelli dbt, report interessati e altro ancora.
- Prevenzione: Infine, l’osservabilità dei dati fornisce anche meccanismi per prevenire che i problemi di dati si verifichino in primo luogo, come l’inserimento di circuiti di interruzione nelle pipeline e la creazione di visibilità sugli effetti che i cambiamenti di codice avrebbero sui dati, tra le altre misure preventive per evitare l’ingresso di dati errati nelle pipeline iniziali.
All’inizio, l’osservabilità dei dati si concentrava esclusivamente sul rilevare, risolvere e prevenire problemi di dati utilizzando sia i metadati che i dati stessi per ricostruire un quadro della salute dei dati. Monitorando e avvisando gli utenti sugli incidenti dati dall’ingestione al consumo, i team potevano rilevare cambiamenti nelle tabelle upstream non previsti, che causavano il malfunzionamento o l’instabilità delle fonti a valle.
Estendere il rilevamento e la risoluzione oltre i dati
Tuttavia, come in ogni settore, lo spazio dei dati si è evoluto, influenzando il modo in cui le squadre devono pensare alla rilevazione e risoluzione degli incidenti e all’osservabilità dei dati in modo più ampio. Questa evoluzione è dovuta a alcune tendenze interessanti: la crescita dei prodotti dati e, di conseguenza, la continua migrazione delle squadre dati più vicino o direttamente nell’organizzazione Engineering.
Mentre le squadre dati aumentano la loro portata nell’organizzazione e i casi d’uso dei dati crescono, la squadra dati ha un impatto più significativo sul risultato finale che mai. Ora, tutti in azienda utilizzano i dati ogni giorno per ottenere informazioni, alimentare servizi digitali e addestrare modelli di apprendimento automatico. In effetti, siamo andati oltre il semplice trattamento dei dati come prodotto. Nel 2023, i dati SONO un prodotto.
Dopo centinaia di clienti, tra cui team di Pepsi, Gusto, MasterClass e Vimeo, abbiamo scoperto che dobbiamo guardare oltre i dati per garantire l’affidabilità dei dati. I dati non affidabili non vivono in un silo… sono influenzati da tutti e tre gli elementi dell’ecosistema dei dati: dati + codice + infrastruttura.
Questa visione più ampia riflette il modo in cui i nostri amici ingegneri del software affrontano la rilevazione e la risoluzione, anche loro. L’osservabilità delle applicazioni inizia con l’infrastruttura, ma analizza molto più di quello per rilevare e risolvere i tempi di inattività del software; l’analisi delle cause principali tiene conto del codice, dell’infrastruttura, dei servizi, della rete e di molti altri fattori. Per gli ingegneri del software, l’affidabilità non si raggiunge in un vuoto, spesso è influenzata da molteplici fattori che agiscono in tandem o si sommano l’uno all’altro.
Nel campo dei dati, la situazione è spesso la stessa ed è ora che iniziamo a trattarla in questo modo.
Facciamo un esempio ipotetico dal mondo dei dati.
Immagina di avere un cruscotto che mostra risultati obsoleti. Potresti prima guardare i tuoi dati, in questo caso, forse una tabella upstream acquisita da Google che descrive le tue campagne pubblicitarie. Qualcuno ha cambiato il nome di una campagna, rompendo un flusso di dati codificato? O forse stai ottenendo valori null invece degli UUID degli utenti nella tabella degli eventi di clic? Niente da fare, quindi cosa viene dopo?
Guardi il codice. Forse il tuo ingegnere di analisi ha apportato una modifica al tuo SQL che filtra i dati più recenti? Avevano buone intenzioni, ma forse ha avuto conseguenze non volute? Dai un’occhiata al tuo repository dbt. No, tutto a posto lì.
Infine, guardi la tua infrastruttura. Fai clic rapidamente sulla tua interfaccia di Airflow: forse stai eseguendo Airflow su una piccola istanza ed è rimasta senza memoria (non avresti dovuto caricare quelle righe in memoria!!), causando il problema di freschezza a valle. Eureka, l’hai trovato!
L’esperienza ci insegna che tutti e tre i fattori contribuiscono in modo significativo ai tempi di inattività dei dati. Quindi, non importa dove guardi per primo, ti attende un processo lungo e noioso di fare ipotesi informate ed eliminarle una per una. Ah, e abbiamo già detto che richiede accesso e competenza in 8 strumenti diversi che compongono il tuo stack dati?
Ora, immagina di poter correlare rapidamente il sintomo che stai riscontrando (cruscotto obsoleto…) con tutti i cambiamenti che sono avvenuti nei dati, nel codice e nell’infrastruttura. Ah, e non hai bisogno di un dottorato in statistica o di 10 anni di esperienza nell’azienda conoscendo ogni singola colonna nel data warehouse. È tutto a portata di mano: una comprensione completa di come i dati, il codice e l’infrastruttura abbiano lavorato insieme per ottenere un cruscotto non funzionante. Pensa a tutto il tempo e le risorse che avresti potuto risparmiare e alla frustrazione degli stakeholder che avresti potuto evitare, senza parlare della chiamata di sveglia mattutina.
Per realizzare appieno il potenziale dell’osservabilità dei dati e ottenere dati affidabili, le squadre devono adottare un approccio a tre livelli che intrecci un quadro completo dei dati, del codice e dell’infrastruttura che influiscono sulla salute dei dati.
Ci siamo anche resi conto che raggiungere l’affidabilità dei dati non riguarda solo l’accensione di uno strumento. Si tratta di creare una nuova disciplina nel team, una mentalità operativa per così dire. Le squadre devono introdurre processi per il monitoraggio dei sistemi dati, la gestione degli incidenti e il miglioramento iterativo nel tempo.
Le strutture organizzative, i processi e le tecnologie devono evolvere per raggiungere tali obiettivi. Pensate: cruscotti che definiscono e monitorano l’affidabilità dei prodotti dati basati sulle tabelle sorgenti che possono essere facilmente condivisi in tutta l’organizzazione per trasparenza, collaborazione e responsabilità. E domini che suddividono i dati e i flussi in base al caso d’uso e ai proprietari per una risoluzione mirata dei problemi e degli incidenti.
Dati affidabili e il futuro dell’IA
Scommettere su modelli linguistici di grandi dimensioni (LLMs) come futuro dell’ [inserire qui l’industria] è quasi un cliché a questo punto, ma l’impatto sull’industria dei dati è diverso.
Attualmente, i casi d’uso di AI generativa nei dati e nell’ingegneria sono concentrati quasi esclusivamente sulla scalabilità della produttività, come GitHub Co-Pilot, Snowflake Document AI e Databricks LakehouseIQ. In molti modi, non sappiamo cosa riserverà il futuro dell’IA generativa, ma sappiamo che i team dei dati avranno un ruolo importante nel suo successo.
C’è un’opportunità entusiasmante per gli LLMs di contribuire alla qualità dei dati, ma la tesi ancora più potente è che la qualità e l’affidabilità dei dati possono aiutare gli LLMs. Infatti, sostenerei che gli LLMs che supportano casi d’uso di produzione non possono esistere senza una base solida: avere molti dati di alta qualità, affidabili e fidati.
In larga misura, la stragrande maggioranza delle applicazioni di AI generativa oggi è ospitata nel cloud e resa disponibile tramite un’API. Per supportarle, è necessario un solido stack di dati basato su cloud per memorizzare, trasformare, addestrare e fornire in modo affidabile i dati che le alimentano.
Eco di questo sentimento, durante la conference call sugli utili del primo trimestre del 2023 di Snowflake, Frank Slootman, CEO di Snowflake, ha sostenuto che “l’AI generativa è alimentata dai dati. È così che i modelli si addestrano e diventano sempre più interessanti e rilevanti… Non puoi semplicemente lasciare senza controllo questi [LLMs] su dati che le persone non capiscono in termini di qualità, definizione e linea di discendenza”.
Abbiamo già visto le implicazioni dell’addestramento di modelli non affidabili. Proprio l’anno scorso, Equifax, il gigante globale del credito, ha condiviso che un modello di ML addestrato su dati errati ha causato l’invio di punteggi di credito errati ai creditori per milioni di consumatori. E poco prima di ciò, Unity Technologies ha riportato una perdita di 110 milioni di dollari a causa di dati pubblicitari errati che alimentavano i suoi algoritmi di targeting. Nei prossimi anni, questo diventerà inevitabilmente un problema ancora più grande a meno che non diamo priorità alla fiducia.
Mentre assistiamo all’ascesa delle applicazioni di IA per le imprese nei prossimi anni, l’osservabilità dei dati emergerà come una capacità fondamentale per supportare gli LLMs e tutti gli altri casi d’uso di AI.
Come suggeriscono i co-fondatori di Databricks Matei Zaharia, Patrick Wendell, Reynold Xin e Ali Ghodsi: “Le applicazioni aziendali hanno anche poca tolleranza per allucinazioni o risposte errate… In ogni fase del ciclo di vita dell’apprendimento automatico, i dati e i modelli devono essere curati congiuntamente per costruire le migliori applicazioni. Questo è ancora più importante per i modelli generativi, in cui la qualità e la sicurezza dipendono così tanto dai buoni dati di addestramento”.
Non potrei essere più d’accordo. Il primo passo per un’IA migliore e più incisiva? Dati buoni, affidabili – e tanti.
Unisciti a noi, ti prego.
Contatta Barr Moses tramite LinkedIn con pensieri, sentimenti ed emozioni. Dove pensi che si stia dirigendo questo settore?