Companiile colectează din ce în ce mai multe date în fiecare zi pentru a conduce procese precum luarea deciziilor, raportarea și învățarea automată (ML). Înainte de curățarea și transformarea datelor, trebuie să determinați dacă acestea sunt potrivite pentru utilizare. Datele incorecte, lipsă sau malformate pot avea un impact mare asupra proceselor de analiză și ML din aval. Efectuarea verificărilor calității datelor ajută la identificarea problemelor mai devreme în fluxul dvs. de lucru, astfel încât să le puteți rezolva mai rapid. În plus, efectuarea acestor verificări folosind o arhitectură bazată pe evenimente vă ajută să reduceți punctele de contact manuale și să scalați cu cantități tot mai mari de date.
AWS Glue Databrew este un instrument vizual de pregătire a datelor care facilitează găsirea statisticilor privind calitatea datelor, cum ar fi valori duplicate, valori lipsă și valori aberante în datele dvs. De asemenea, puteți configura reguli de calitate a datelor în DataBrew pentru a efectua verificări condiționate în funcție de nevoile dvs. unice de afaceri. De exemplu, un producător ar putea avea nevoie să se asigure că nu există valori duplicate în mod specific în a Part ID
sau un furnizor de servicii medicale ar putea verifica acele valori într-un SSN
coloane au o anumită lungime. După ce creați și validați aceste reguli cu DataBrew, puteți utiliza Amazon EventBridge, Funcții pas AWS, AWS Lambdas, și Serviciul de notificare simplă Amazon (Amazon SNS) pentru a crea un flux de lucru automat și a trimite o notificare atunci când o regulă eșuează la verificarea de validare.
În această postare, vă prezentăm fluxul de lucru end-to-end și cum să implementați această soluție. Această postare include un tutorial pas cu pas, un Model de aplicație fără server AWS (AWS SAM) șablon și exemplu de cod pe care îl puteți utiliza pentru a implementa aplicația în propriul mediu AWS.
Prezentare generală a soluțiilor
Soluția din această postare se combină serverless Servicii AWS pentru a construi o conductă complet automatizată, de la capăt la capăt, bazată pe evenimente, pentru validarea calității datelor. Următoarea diagramă ilustrează arhitectura soluției noastre.
Fluxul de lucru al soluției conține următorii pași:
- Când încărcați date noi pe dvs Serviciul Amazon de stocare simplă (Amazon S3), evenimentele sunt trimise la EventBridge.
- O regulă EventBridge declanșează rularea unei mașini de stare Step Functions.
- Mașina de stare pornește o lucrare de profil DataBrew, configurată cu un set de reguli și reguli de calitate a datelor. Dacă vă gândiți să construiți o soluție similară, locația de ieșire a jobului de profil DataBrew și compartimentele S3 de date sursă ar trebui să fie unice. Acest lucru previne rulările recursive ale jobului. Ne implementăm resursele cu un Formarea AWS Cloud șablon, care creează găleți S3 unice.
- O funcție Lambda citește rezultatele calității datelor din Amazon S3 și returnează un răspuns boolean în mașina de stări. Funcția revine
false
dacă una sau mai multe reguli din setul de reguli eșuează și revinetrue
dacă toate regulile reușesc. - Dacă răspunsul boolean este
false
, mașina de stare trimite o notificare prin e-mail cu Amazon SNS și mașina de stare se termină cu afailed
stare. Dacă răspunsul boolean estetrue
, mașina de stări se termină în asucceed
stare. De asemenea, puteți extinde soluția în acest pas pentru a rula alte sarcini în caz de succes sau eșec. De exemplu, dacă toate regulile reușesc, puteți trimite un mesaj EventBridge pentru a declanșa o altă lucrare de transformare în DataBrew.
În această postare, utilizați AWS CloudFormation pentru a implementa o demonstrație complet funcțională a soluției de validare a calității datelor bazată pe evenimente. Testați soluția încărcând un fișier CSV (valori separate prin virgulă) valid în Amazon S3, urmat de un fișier CSV nevalid.
Pașii sunt după cum urmează:
- Lansați o stivă CloudFormation pentru a implementa resursele soluției.
- Testați soluția:
- Încărcați un fișier CSV valid în Amazon S3 și observați validarea calității datelor și starea mașinii Step Functions reușite.
- Încărcați un fișier CSV nevalid în Amazon S3 și observați validarea calității datelor și mașina de stare Step Functions eșuează și primiți o notificare prin e-mail de la Amazon SNS.
Tot codul eșantion poate fi găsit în GitHub depozit.
Cerințe preliminare
Pentru această prezentare generală, ar trebui să aveți următoarele condiții prealabile:
Implementați resursele soluției folosind AWS CloudFormation
Utilizați o stivă CloudFormation pentru a implementa resursele necesare pentru soluția de validare a calității datelor bazată pe evenimente. Stiva include un exemplu de set de date și un set de reguli în DataBrew.
- Conectați-vă la contul dvs. AWS și apoi alegeți Lansați Stack:
- Pe Stivă de creare rapidă pagina, pt Adresa de e-mail, introduceți o adresă de e-mail validă pentru notificările prin e-mail Amazon SNS.
- Lăsați opțiunile rămase setate la valorile implicite.
- Bifați casetele de validare de confirmare.
- Alege Creați stivă.
Stiva CloudFormation durează aproximativ 5 minute pentru a ajunge CREATE_COMPLETE
stare.
- Verificați căsuța de e-mail a adresei de e-mail pe care ați furnizat-o și acceptați abonamentul SNS.
Trebuie să examinați și să acceptați confirmarea abonamentului pentru a demonstra funcția de notificare prin e-mail la sfârșitul tutorialului.
Pe ieşiri fila stivei, puteți găsi adresele URL pentru a răsfoi resursele DataBrew și Step Functions pe care șablonul le-a creat. Rețineți, de asemenea, comenzile AWS CLI finalizate pe care le utilizați în pașii ulterioare.
Dacă alegeți AWSGlueDataBrewRuleset
link-ul valorii, ar trebui să vedeți pagina cu detaliile setului de reguli, ca în următoarea captură de ecran. În această prezentare, creăm un set de reguli de calitate a datelor cu trei reguli care verifică valorile lipsă, valorile aberante și lungimea șirului.
Testați soluția
În următorii pași, utilizați AWS CLI pentru a încărca versiuni corecte și incorecte ale fișierului CSV pentru a testa soluția de validare a calității datelor bazată pe evenimente.
- Deschideți un terminal sau linie de comandă prompt și utilizați AWS CLI pentru a descărca date eșantion. Utilizați comanda din ieșirea stivei CloudFormation cu numele cheii
CommandToDownloadTestData
: - Utilizați din nou AWS CLI pentru a încărca fișierul CSV neschimbat în compartimentul S3. Înlocuiți șirul cu numele compartimentului dvs. sau copiați și inserați comanda care vi se oferă din rezultatul șablonului CloudFormation:
- Pe consola Step Functions, localizați mașina de stare creată de șablonul CloudFormation.
Puteți găsi o adresă URL în rezultatele CloudFormation menționate mai devreme.
- Pe Execuții fila, ar trebui să vedeți o nouă rulare a mașinii de stat.
- Alegeți adresa URL a rulării pentru a vedea graficul mașinii de stări și pentru a monitoriza progresul acestuia.
Următoarea imagine arată fluxul de lucru al mașinii noastre de stat.
Pentru a demonstra eșecul unei reguli de calitate a datelor, efectuați cel puțin o modificare a votes.csv
fișier.
- Deschideți fișierul în editorul de text sau instrumentul pentru foi de calcul preferat și ștergeți o singură celulă.
În următoarele capturi de ecran, folosesc editorul GNU nano pe Linux. De asemenea, puteți utiliza un editor de foi de calcul pentru a șterge o celulă. Acest lucru face ca regula „Verificați toate coloanele pentru valori lipsă” să eșueze.
Următoarea captură de ecran arată fișierul CSV înainte de modificare.
Următoarea captură de ecran arată fișierul CSV modificat.
- Salvați cele editate
votes.csv
fișier și reveniți la promptul de comandă sau la terminal. - Utilizați AWS CLI pentru a încărca încă o dată fișierul în compartimentul S3. Folosiți aceeași comandă ca înainte:
- Pe consola Step Functions, navigați la cea mai recentă mașină de stat rulată pentru a o monitoriza.
Validarea calității datelor eșuează, declanșând o notificare prin e-mail SNS și eșecul rulării mașinii de stare generală.
Următoarea imagine arată fluxul de lucru al mașinii de stare eșuată.
Următoarea captură de ecran arată un exemplu de e-mail SNS.
- Puteți investiga eșecul regulii pe consola DataBrew alegând
AWSGlueDataBrewProfileResults
valoare în ieșirile stivei CloudFormation.
A curăța
Pentru a evita costurile viitoare, ștergeți resursele. Pe consola AWS CloudFormation, ștergeți stiva numită AWSBigDataBlogDataBrewDQSample
.
Concluzie
În această postare, ați învățat cum să construiți conducte automate de validare a calității datelor bazate pe evenimente. Cu DataBrew, puteți defini reguli de calitate a datelor, praguri și seturi de reguli pentru cerințele dvs. tehnice și de afaceri. Step Functions, EventBridge și Amazon SNS vă permit să construiți conducte complexe cu gestionarea erorilor și alerte personalizabile, adaptate nevoilor dvs.
Puteți afla mai multe despre această soluție și codul sursă vizitând site-ul GitHub depozit. Pentru a afla mai multe despre regulile de calitate a datelor DataBrew, vizitați AWS Glue DataBrew permite acum clienților să creeze reguli de calitate a datelor pentru a-și defini și valida cerințele de afaceri sau se referă la Validarea calității datelor în AWS Glue DataBrew.
Despre Autori
Laith Al-Saadoon este arhitect principal de prototipuri în echipa Envision Engineering. El construiește prototipuri și soluții folosind AI, învățarea automată, IoT și edge computing, analize de streaming, robotică și calcul spațial pentru a rezolva problemele clienților din lumea reală. În timpul său liber, lui Laith îi place activități în aer liber, cum ar fi fotografie, zboruri cu drone, drumeții și paintball.
Gordon Burgess este Senior Product Manager cu AWS Glue DataBrew. Este pasionat de a ajuta clienții să descopere perspective din datele lor și se concentrează pe construirea experiențelor utilizatorilor și a funcționalităților bogate pentru produsele de analiză. În afara serviciului, lui Gordon îi place să citească, să facă cafea și să construiască computere.
- '
- &
- 100
- 107
- 7
- Despre Noi
- Cont
- activităţi de
- adresa
- AI
- TOATE
- Amazon
- Google Analytics
- aplicație
- arhitectură
- Automata
- AWS
- construi
- Clădire
- afaceri
- taxe
- Verificări
- Curățenie
- cod
- Cafea
- Coloană
- complex
- Calculatoare
- tehnica de calcul
- Consoleze
- clienţii care
- de date
- calitatea datelor
- zi
- descoperi
- zbârnâi
- Margine
- marginea de calcul
- editor
- se încheie
- Inginerie
- Mediu inconjurator
- evenimente
- exemplu
- Experiențe
- Eșec
- mai repede
- Caracteristică
- potrivi
- Zboruri
- găsit
- Gratuit
- funcţie
- funcții
- viitor
- În creştere
- Manipularea
- de asistență medicală
- ajută
- drumeții
- Cum
- Cum Pentru a
- HTTPS
- identifica
- imagine
- punerea în aplicare a
- perspective
- investiga
- IoT
- probleme de
- IT
- Loc de munca
- Cheie
- mare
- Ultimele
- AFLAȚI
- învățat
- învăţare
- Linie
- LINK
- linux
- locaţie
- masina de învățare
- Producător
- ML
- mai mult
- nano
- necesar
- notificare
- Opţiuni
- comandă
- Altele
- Activități în aer liber
- fotografie
- Principal
- Produs
- Produse
- Profil
- prototipuri
- furnizorul
- calitate
- Citind
- reduce
- înlocui
- Cerinţe
- Resurse
- răspuns
- REZULTATE
- Returnează
- revizuiască
- robotica
- norme
- Alerga
- Scară
- serverless
- Servicii
- set
- asemănător
- simplu
- So
- soluţii
- REZOLVAREA
- spațial
- calcul spațial
- specific
- Spreadsheet
- Stat
- statistică
- Stare
- depozitare
- de streaming
- abonament
- succes
- Tehnic
- Terminal
- test
- Sursa
- Prin
- timp
- instrument
- Transformare
- transformare
- tutorial
- valoare
- Vizualizare
- Apartamente
- flux de lucru