De ce echipele de date se luptă cu validarea datelor (și cum să o schimbi)

Publicat: 2022-12-19

Nota editorului: acest articol a fost publicat inițial pe blogul Iteratively pe 18 decembrie 2020.


Cunoașteți vechea zicală „Gunoi înăuntru, gunoi afară”? Probabil că ați auzit această expresie în legătură cu igiena datelor dvs. Dar cum remediați gunoiul care reprezintă managementul și calitatea proastă a datelor? Ei bine, este complicat. Mai ales dacă nu aveți control asupra implementării codului de urmărire (cum este cazul multor echipe de date).

Cu toate acestea, doar pentru că clienții potențiali de date nu dețin conducta lor de la proiectarea datelor până la angajare, nu înseamnă că toată speranța este pierdută. În calitate de punte între consumatorii dvs. de date (și anume managerii de produs, echipele de produse și analiștii) și producătorii dvs. de date (ingineri), puteți ajuta la dezvoltarea și gestionarea validării datelor care va îmbunătăți igiena datelor în jur.

Înainte de a ajunge la buruieni, când spunem validarea datelor, ne referim la procesul și tehnicile care ajută echipele de date să mențină calitatea datelor lor.

Acum, să vedem de ce echipele de date se luptă cu această validare și cum pot depăși provocările acesteia.

În primul rând, de ce echipele de date se luptă cu validarea datelor?

Există trei motive principale pentru care echipele de date se luptă cu validarea datelor pentru analiză:

  1. Adesea, aceștia nu sunt implicați direct în implementarea codului de urmărire a evenimentelor și depanarea , ceea ce lasă echipele de date într-o poziție Adesea, nu există procese standardizate în jurul validării datelor pentru analiză , ceea ce înseamnă că testarea este la cheremul unor verificări inconsecvente QA.
  2. Echipele de date și inginerii se bazează mai degrabă pe tehnici de validare reactive decât pe metode proactive de validare a datelor , ceea ce nu oprește problemele de bază ale igienei datelor.

Oricare dintre aceste trei provocări este suficientă pentru a frustra chiar și cel mai bun lider de date (și echipa care îi sprijină). Și are sens de ce: datele de proastă calitate nu sunt doar scumpe - datele proaste costă în medie 3 trilioane de dolari, potrivit IBM. Și în întreaga organizație, erodează, de asemenea, încrederea în datele în sine și determină echipele de date și inginerii să piardă ore de productivitate pentru a elimina erorile.

Morala poveștii este? Nimeni nu câștigă atunci când validarea datelor este pusă pe dos.

Din fericire, aceste provocări pot fi depășite cu bune practici de validare a datelor. Să aruncăm o privire mai profundă asupra fiecărui punct dureros.

Echipele de date nu dețin adesea controlul asupra colectării datelor în sine

După cum am spus mai sus, principalul motiv pentru care echipele de date se luptă cu validarea datelor este că nu sunt ele care efectuează instrumentarea urmăririi evenimentelor în cauză (în cel mai bun caz, pot vedea că există o problemă, dar nu o pot rezolva. ).

Acest lucru îi lasă pe analiștii de date și managerii de produs, precum și pe oricine caută să-și facă luarea deciziilor mai bazate pe date, cu sarcina de a descurca și curăța datele după fapt. Și nimănui – și ne referim la nimeni – nu se bucură de folosirea datelor în mod recreațional.

Acest punct de durere este deosebit de dificil de depășit pentru majoritatea echipelor de date, deoarece puțini oameni de pe lista de date, în afara inginerilor, au abilitățile tehnice pentru a face ei înșiși validarea datelor. Silozurile organizaționale dintre producătorii de date și consumatorii de date fac acest aspect și mai sensibil. Pentru a o ușura, clienții potențiali de date trebuie să încurajeze colaborarea între echipe pentru a asigura date curate.

La urma urmei, datele sunt un sport de echipă și nu vei câștiga niciun joc dacă jucătorii tăi nu pot vorbi între ei, să se antreneze împreună sau să creeze jocuri mai bune pentru rezultate mai bune.

Instrumentarea și validarea datelor nu sunt diferite. Consumatorii dvs. de date trebuie să colaboreze cu producătorii de date pentru a pune și a impune practicile de gestionare a datelor la sursă, inclusiv testarea, care detectează în mod proactiv problemele cu datele înainte ca cineva să se angajeze în aval.

Acest lucru ne duce la următorul punct.

Echipele de date (și organizațiile lor) adesea nu au procese stabilite în jurul validării datelor pentru analiză

Inginerii dumneavoastră știu că codul de testare este important. Este posibil ca oricui să nu le placă întotdeauna să facă acest lucru, dar asigurarea faptului că aplicația dvs. rulează conform așteptărilor este o parte esențială a livrării de produse excelente.

Se pare că asigurarea faptului că codul de analiză colectează și furnizează date despre evenimente, așa cum a fost intenționat, este, de asemenea, cheia pentru construirea și iterarea unui produs grozav.

Deci unde este deconectarea? Practica de testare a datelor analitice este încă relativ nouă pentru echipele de inginerie și date. Prea des, codul de analiză este considerat ca un supliment pentru funcții, nu ca funcționalitate de bază. Acest lucru, combinat cu practici de guvernanță a datelor lipsite de strălucire, poate însemna că este implementat sporadic peste tot (sau deloc).

Mai simplu spus, acest lucru se datorează adesea faptului că oamenii din afara echipei de date nu înțeleg încă cât de valoroase sunt datele despre evenimente pentru munca lor de zi cu zi. Ei nu știu că datele despre evenimente curate sunt un arbore de bani în curtea lor și că tot ce trebuie să facă este să le ude (să le valideze) în mod regulat pentru a face bancă.

Pentru a-i face pe toți să înțeleagă că trebuie să aibă grijă de arborele banilor care sunt datele despre evenimente, echipele de date trebuie să evanghelizeze toate modurile în care datele bine validate pot fi utilizate în cadrul organizației. În timp ce echipele de date pot fi limitate și izolate în cadrul organizațiilor lor, depinde în cele din urmă de acești campioni ai datelor să facă munca pentru a sparge zidurile dintre ei și alte părți interesate pentru a se asigura că procesele și instrumentele potrivite sunt în vigoare pentru a îmbunătăți calitatea datelor.

Pentru a depăși acest vest sălbatic al gestionării datelor și pentru a asigura o guvernare adecvată a datelor, echipele de date trebuie să construiască procese care să precizeze când, unde și cum ar trebui testate datele în mod proactiv. Acest lucru poate părea descurajant, dar, în realitate, testarea datelor se poate integra fără probleme în ciclul de viață al dezvoltării software (SDLC), instrumente și conducte CI/CD existente.

Procesele și instrucțiunile clare atât pentru echipa de date care proiectează strategia de date, cât și pentru echipa de inginerie care implementează și testează codul vor ajuta pe toată lumea să înțeleagă ieșirile și intrările pe care ar trebui să se aștepte să le vadă.

Echipele de date și inginerii se bazează pe tehnici de testare a datelor reactive, mai degrabă decât proactive

În aproape fiecare parte a vieții, este mai bine să fii proactiv decât reactiv. Acest lucru sună adevărat și pentru validarea datelor pentru analiză.

Dar multe echipe de date și inginerii lor se simt prinși în tehnici reactive de validare a datelor. Fără o guvernanță solidă a datelor, instrumente și procese care facilitează testarea proactivă, urmărirea evenimentelor trebuie adesea implementată și expediată rapid pentru a fi inclusă într-o versiune (sau adăugată retroactiv după o livrare). Acestea forțează conducătorii de date și echipele lor să utilizeze tehnici precum detectarea anomaliilor sau transformarea datelor după fapt.

Nu numai că această abordare nu rezolvă problema rădăcină a datelor dvs. proaste, dar îi costă pe inginerii de date ore întregi din timpul lor pentru a elimina erorile. De asemenea, îi costă analiștilor ore întregi din timpul lor pentru curățarea datelor proaste și costă veniturile pierdute de afaceri din toate îmbunătățirile produselor care ar fi putut avea loc dacă datele ar fi fost mai bune.

În loc să fie într-o stare constantă de recuperare a datelor, clienții potențiali de date trebuie să ajute la modelarea proceselor de gestionare a datelor care includ testarea proactivă de la început și instrumente care includ bare de protecție, cum ar fi siguranța tipului, pentru a îmbunătăți calitatea datelor și a reduce relucrarea în aval.

Deci, care sunt măsurile proactive de validare a datelor? Hai să aruncăm o privire.

Metode și tehnici de validare a datelor

Validarea proactivă a datelor înseamnă îmbrățișarea instrumentelor și proceselor de testare potrivite în fiecare etapă a conductei de date:

  • În client cu instrumente precum Amplitude pentru a valorifica siguranța tipului, testarea unitară și testarea A/B.
  • În curs de desfășurare, cu instrumente precum Amplitude, Protocoale de segment și repo de schemă cu sursă deschisă de la Snowplow Iglu pentru validarea schemei, precum și alte instrumente pentru integrare și testarea componentelor, testarea prospețimii și testele de distribuție.
  • În depozit cu instrumente precum dbt, Dataform și Great Expectations pentru a valorifica schematizarea, testarea securității, testarea relațiilor, testarea prospețimii și distribuției și verificarea gamei și a tipului.

Atunci când echipele de date mențin și aplică în mod activ măsurile proactive de validare a datelor, se pot asigura că datele colectate sunt utile, clare și curate și că toți acționarii de date înțeleg cum să le păstreze așa.

În plus, provocările legate de colectarea datelor, procese și tehnici de testare pot fi dificil de depășit singuri, așa că este important ca clienții potențiali să distrugă silozurile organizaționale dintre echipele de date și echipele de inginerie.

Cum să schimbați validarea datelor pentru analiză în bine

Primul pas către practicile de validare a datelor funcționale pentru analiză este recunoașterea faptului că datele sunt un sport de echipă care necesită investiții din partea acționarilor de date la fiecare nivel, indiferent dacă sunteți dvs., ca lider de date sau inginerul dumneavoastră individual care implementează linii de cod de urmărire.

Toată lumea din organizație beneficiază de o bună colectare și validare a datelor, de la client până la depozit.

Pentru a conduce acest lucru, aveți nevoie de trei lucruri:

  1. Direcție de sus în jos din partea conducerii de date și a conducerii companiei care stabilește procese pentru menținerea și utilizarea datelor în întreaga afacere
  2. Evanghelizarea datelor la toate nivelurile companiei, astfel încât fiecare echipă să înțeleagă cum datele îi ajută să-și facă munca mai bine și cum testările regulate susțin acest lucru
  3. Fluxuri de lucru și instrumente pentru a vă guverna bine datele , indiferent dacă acesta este un instrument intern, o combinație de instrumente precum Protocoale de segmente sau Snowplow și dbt, sau chiar mai bine, platforma dvs. Analytics încorporată, cum ar fi Amplitude. De-a lungul fiecăruia dintre acești pași, este, de asemenea, important ca clienții potențiali de date să împartă victorii și să progreseze către date excelente devreme și des. Această transparență nu numai că îi va ajuta pe consumatorii de date să vadă cum pot utiliza mai bine datele, ci îi va ajuta și pe producătorii de date (de exemplu, inginerii dvs. care vă fac testele) să vadă roadele muncii lor. Este un câștig-câștig.

Depășește-ți problemele de validare a datelor

Validarea datelor este dificilă pentru echipele de date, deoarece consumatorii de date nu pot controla implementarea, producătorii de date nu înțeleg de ce este importantă implementarea și tehnicile de validare fragmentară îi lasă pe toți să reacționeze la datele proaste, mai degrabă decât să le prevină. Dar nu trebuie să fie așa.

Echipele de date (și inginerii care le susțin) pot depăși problemele de calitate a datelor lucrând împreună, îmbrățișând beneficiile interfuncționale ale unor date bune și utilizând instrumentele grozave care fac gestionarea și testarea datelor mai ușoare.

Începeți cu Amplitude