Perché i data team hanno difficoltà con la convalida dei dati (e come cambiarla)

Pubblicato: 2022-12-19

Nota del redattore: questo articolo è stato originariamente pubblicato sul blog Iterativamente il 18 dicembre 2020.


Conosci il vecchio detto "Rifiuti dentro, rifiuti fuori"? È probabile che tu abbia probabilmente sentito quella frase in relazione alla tua igiene dei dati. Ma come si risolve la spazzatura che è una cattiva gestione e qualità dei dati? Beh, è ​​complicato. Soprattutto se non hai il controllo sull'implementazione del codice di monitoraggio (come nel caso di molti team di dati).

Tuttavia, solo perché i data lead non possiedono la propria pipeline dalla progettazione dei dati al commit non significa che ogni speranza sia persa. Come ponte tra i tuoi consumatori di dati (responsabili di prodotto, team di prodotto e analisti, in particolare) e i tuoi produttori di dati (ingegneri), puoi aiutare a sviluppare e gestire la convalida dei dati che migliorerà l'igiene dei dati ovunque.

Prima di entrare nel dettaglio, quando diciamo convalida dei dati ci riferiamo al processo e alle tecniche che aiutano i data team a sostenere la qualità dei loro dati.

Ora, diamo un'occhiata al motivo per cui i team di dati hanno difficoltà con questa convalida e come possono superarne le sfide.

Innanzitutto, perché i data team hanno difficoltà con la convalida dei dati?

Ci sono tre motivi principali per cui i data team hanno difficoltà con la convalida dei dati per l'analisi:

  1. Spesso non sono direttamente coinvolti nell'implementazione del codice di monitoraggio degli eventi e nella risoluzione dei problemi , il che lascia i team di dati in una posizione Spesso non esistono processi standardizzati per la convalida dei dati per l'analisi , il che significa che i test sono alla mercé di controlli QA incoerenti.
  2. I data team e gli ingegneri si affidano a tecniche di convalida reattive piuttosto che a metodi di convalida dei dati proattivi , il che non risolve i problemi fondamentali di igiene dei dati.

Una qualsiasi di queste tre sfide è sufficiente per frustrare anche il miglior data lead (e il team che li supporta). E ha senso perché: i dati di scarsa qualità non sono solo costosi: i dati scadenti costano in media 3 trilioni di dollari secondo IBM. E in tutta l'organizzazione, erode anche la fiducia nei dati stessi e fa perdere ore di produttività ai team di dati e agli ingegneri per eliminare i bug.

La morale della favola è? Nessuno vince quando la convalida dei dati viene messa nel dimenticatoio.

Per fortuna, queste sfide possono essere superate con buone pratiche di convalida dei dati. Diamo uno sguardo più approfondito a ciascun punto dolente.

I data team spesso non hanno il controllo della raccolta dei dati stessi

Come abbiamo detto sopra, il motivo principale per cui i data team hanno difficoltà con la convalida dei dati è che non sono loro a eseguire la strumentazione del tracciamento degli eventi in questione (nella migliore delle ipotesi, possono vedere che c'è un problema, ma non possono risolverlo ).

Ciò lascia gli analisti di dati e i product manager, così come chiunque stia cercando di rendere il proprio processo decisionale più basato sui dati, gravato dal compito di districare e ripulire i dati dopo il fatto. E a nessuno, e intendiamo nessuno, piace ricreativamente il data munging.

Questo punto dolente è particolarmente difficile da superare per la maggior parte dei team di dati perché poche persone nel registro dei dati, al di fuori degli ingegneri, hanno le competenze tecniche per eseguire autonomamente la convalida dei dati. I silos organizzativi tra produttori di dati e consumatori di dati rendono questo punto dolente ancora più sensibile. Per alleviarlo, i responsabili dei dati devono promuovere la collaborazione tra i team per garantire dati puliti.

Dopotutto, i dati sono uno sport di squadra e non vincerai nessuna partita se i tuoi giocatori non possono parlare tra loro, allenarsi insieme o fare brainstorming su giochi migliori per ottenere risultati migliori.

La strumentazione e la convalida dei dati non sono diverse. I tuoi consumatori di dati devono collaborare con i produttori di dati per mettere e applicare le pratiche di gestione dei dati alla fonte, inclusi i test, che rilevano in modo proattivo i problemi con i dati prima che qualcuno sia in servizio di munging a valle.

Questo ci porta al punto successivo.

I team di dati (e le loro organizzazioni) spesso non hanno processi prestabiliti per la convalida dei dati per l'analisi

I tuoi ingegneri sanno che testare il codice è importante. Potrebbe non piacere a tutti farlo, ma assicurarsi che l'applicazione venga eseguita come previsto è una parte fondamentale della spedizione di ottimi prodotti.

Si scopre che assicurarsi che il codice di analisi raccolga e fornisca i dati degli eventi come previsto è anche la chiave per costruire e iterare su un ottimo prodotto.

Allora dov'è la disconnessione? La pratica di testare i dati di analisi è ancora relativamente nuova per i team di ingegneria e dati. Troppo spesso, il codice di analisi è pensato come un'aggiunta alle funzionalità, non come funzionalità di base. Questo, combinato con pratiche di governance dei dati poco brillanti, può significare che è implementato sporadicamente su tutta la linea (o per niente).

In poche parole, questo accade spesso perché le persone al di fuori del team dei dati non comprendono ancora quanto siano preziosi i dati degli eventi per il loro lavoro quotidiano. Non sanno che i dati degli eventi puliti sono un albero di soldi nel loro cortile e che tutto ciò che devono fare è innaffiarlo (convalidarlo) regolarmente per fare banca.

Per far capire a tutti che devono prendersi cura dell'albero dei soldi che sono i dati degli eventi, i team di dati devono evangelizzare tutti i modi in cui i dati ben convalidati possono essere utilizzati all'interno dell'organizzazione. Sebbene i team di dati possano essere limitati e isolati all'interno delle loro organizzazioni, alla fine spetta a questi campioni di dati fare il lavoro per abbattere i muri tra loro e le altre parti interessate per garantire che siano presenti i processi e gli strumenti giusti per migliorare la qualità dei dati.

Per superare questo selvaggio west della gestione dei dati e garantire un'adeguata governance dei dati, i team di dati devono creare processi che spieghino quando, dove e come i dati devono essere testati in modo proattivo. Questo può sembrare scoraggiante, ma in realtà il test dei dati può inserirsi perfettamente nel ciclo di vita dello sviluppo software (SDLC), negli strumenti e nelle pipeline CI/CD esistenti.

Processi e istruzioni chiari sia per il team di dati che progetta la strategia dei dati sia per il team di ingegneri che implementa e testa il codice aiuteranno tutti a comprendere gli output e gli input che dovrebbero aspettarsi di vedere.

I data team e gli ingegneri si affidano a tecniche di test dei dati reattive piuttosto che proattive

In quasi ogni parte della vita, è meglio essere proattivi che reattivi. Questo suona vero anche per la convalida dei dati per l'analisi.

Ma molti team di dati e i loro ingegneri si sentono intrappolati in tecniche di convalida dei dati reattive. Senza una solida governance dei dati, strumenti e processi che semplifichino i test proattivi, il monitoraggio degli eventi spesso deve essere implementato e spedito rapidamente per essere incluso in una versione (o aggiunto retroattivamente dopo una spedizione). Questi costringono i responsabili dei dati e i loro team a utilizzare tecniche come il rilevamento di anomalie o la trasformazione dei dati dopo il fatto.

Questo approccio non solo non risolve il problema alla radice dei tuoi dati errati, ma costa ai data engineer ore del loro tempo per eliminare i bug. Inoltre, costa agli analisti ore del loro tempo per pulire dati errati e costa all'azienda perdite di entrate derivanti da tutti i miglioramenti del prodotto che avrebbero potuto verificarsi se i dati fossero stati migliori.

Piuttosto che trovarsi in uno stato costante di aggiornamento dei dati, i responsabili dei dati devono aiutare a modellare i processi di gestione dei dati che includono test proattivi nella fase iniziale e strumenti che presentano guardrail, come l'indipendenza dai tipi, per migliorare la qualità dei dati e ridurre la rielaborazione a valle.

Quindi, quali sono le misure proattive di convalida dei dati? Diamo un'occhiata.

Metodi e tecniche di validazione dei dati

Convalida proattiva dei dati significa adottare gli strumenti e i processi di test giusti in ogni fase della pipeline dei dati:

  • Nel client con strumenti come Amplitude per sfruttare la sicurezza del tipo, i test unitari e i test A/B.
  • In cantiere con strumenti come Amplitude, Segment Protocols e il repository di schemi open source di Snowplow Iglu per la convalida dello schema, nonché altri strumenti per l'integrazione e il test dei componenti, test di freschezza e test di distribuzione.
  • Nel magazzino con strumenti come dbt, Dataform e Great Expectations per sfruttare schematizzazione, test di sicurezza, test di relazione, test di freschezza e distribuzione e controllo di intervallo e tipo.

Quando i data team mantengono e applicano attivamente misure proattive di convalida dei dati, possono garantire che i dati raccolti siano utili, chiari e puliti e che tutti gli azionisti dei dati comprendano come mantenerli tali.

Inoltre, le sfide relative alla raccolta dei dati, al processo e alle tecniche di test possono essere difficili da superare da sole, quindi è importante che i lead abbattano i silos organizzativi tra i team di dati e i team di ingegneri.

Come modificare in meglio la convalida dei dati per l'analisi

Il primo passo verso le pratiche di convalida dei dati funzionali per l'analisi è riconoscere che i dati sono uno sport di squadra che richiede investimenti da parte degli azionisti di dati a tutti i livelli, che tu sia il responsabile dei dati o il tuo ingegnere individuale che implementa linee di codice di monitoraggio.

Tutti nell'organizzazione beneficiano di una buona raccolta e convalida dei dati, dal cliente al magazzino.

Per guidare questo, hai bisogno di tre cose:

  1. Direzione dall'alto verso il basso dei responsabili dei dati e della leadership aziendale che stabilisce i processi per la gestione e l'utilizzo dei dati in tutta l'azienda
  2. Evangelizzazione dei dati a tutti i livelli dell'azienda in modo che ogni team comprenda in che modo i dati li aiutano a svolgere meglio il proprio lavoro e in che modo i test regolari lo supportano
  3. Flussi di lavoro e strumenti per governare bene i tuoi dati , sia che si tratti di uno strumento interno, un mix di strumenti come Segment Protocols o Snowplow e dbt, o ancora meglio, integrato nella tua piattaforma Analytics come Amplitude. Durante ciascuno di questi passaggi, è anche importante che i data lead condividano le vittorie e i progressi verso grandi dati presto e spesso. Questa trasparenza non solo aiuterà i consumatori di dati a vedere come possono utilizzare meglio i dati, ma aiuterà anche i produttori di dati (ad esempio, i tuoi ingegneri che eseguono i tuoi test) a vedere i frutti del loro lavoro. È una vittoria.

Supera i tuoi problemi di convalida dei dati

La convalida dei dati è difficile per i team di dati perché i consumatori di dati non possono controllare l'implementazione, i produttori di dati non capiscono perché l'implementazione è importante e le tecniche di convalida frammentarie lasciano tutti reagire ai dati errati piuttosto che prevenirli. Ma non deve essere così.

I team di dati (e gli ingegneri che li supportano) possono superare i problemi di qualità dei dati lavorando insieme, abbracciando i vantaggi interfunzionali di dati validi e utilizzando gli ottimi strumenti disponibili che semplificano la gestione e il test dei dati.

Inizia con Amplitude