{"id":77180,"date":"2020-04-08T13:42:32","date_gmt":"2020-04-08T11:42:32","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya"},"modified":"2020-04-08T13:42:32","modified_gmt":"2020-04-08T11:42:32","slug":"testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya","title":{"rendered":"Tester di grandi e piccoli dati: tendenze, teoria, la mia storia","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Ciao a tutti, mi chiamo Alessandro e sono un ingegnere della qualit\u00e0 dei dati, che si occupa di controllare la qualit\u00e0 dei dati. In questo articolo parler\u00f2 di come sono arrivato a questo punto e perch\u00e9 nel 2020 questa area del testing ha raggiunto il suo apice. <\/p>\n<p><img decoding=\"async\" alt=\"Tester di grandi e piccoli dati: tendenze, teoria, la mia storia\" src=\"\/wp-content\/uploads\/2020\/04\/0691d5a78bcbc8f4f102eafbbef20c0a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Tendenza globale <\/h2>\n<p>\nIl mondo di oggi sta vivendo un'altra rivoluzione tecnologica, uno degli aspetti di questa \u00e8 l'uso dei dati accumulati da parte di diverse aziende per alimentare il loro ciclo di vendita, profitto e PR. Sembra che avere buoni dati (di qualit\u00e0) e menti capaci di trasformarli in denaro (elaborarli correttamente, visualizzarli, costruire modelli di machine learning, ecc.) sia diventato oggi la chiave del successo per molti. Se 15-20 anni fa lavorare intensamente sull'accumulo e la monetizzazione dei dati era appannaggio principalmente delle grandi aziende, oggi \u00e8 alla portata di quasi tutte le aziende sensate. <\/p>\n<p>Di conseguenza, alcuni anni fa, tutti i portali di ricerca lavoro nel mondo si sono riempiti di offerte per Data Scientist, perch\u00e9 si era convinti che assumere un professionista del genere potesse portare alla creazione di un super modello di machine learning, prevedere il futuro e compiere un \u201csalto quantico\u201d per l'azienda. Col tempo, le persone hanno capito che questo approccio non funziona quasi mai, poich\u00e9 non tutti i dati che arrivano a questo tipo di specialisti sono adeguati per l'allenamento dei modelli. <\/p>\n<p>E sono iniziate le richieste da parte dei Data Scientists: \u00abAcquistiamo ancora dati da questi e da quelli\u2026\u00bb, \u00abCi mancano dati\u2026\u00bb, \u00abServono ancora un po' di dati e possibilmente di alta qualit\u00e0\u2026\u00bb. Sulla base di queste richieste, si sono instaurate numerose interazioni tra le aziende che possiedono vari set di dati. Naturalmente, questo ha richiesto un'organizzazione tecnica del processo: connettersi alla fonte dei dati, scaricarli, verificare che siano stati caricati completamente e cos\u00ec via. Il numero di questi processi \u00e8 aumentato e oggi abbiamo una grande necessit\u00e0 di un'altra categoria di specialisti: ingegneri della Data Quality \u2014 coloro che monitorano il flusso dei dati nel sistema (data pipelines), la qualit\u00e0 dei dati in entrata e in uscita, estraendo conclusioni sulla loro adeguatezza, integrit\u00e0 e altre caratteristiche. <\/p>\n<p>La tendenza verso ingegneri della qualit\u00e0 dei dati ci \u00e8 arrivata dagli Stati Uniti, dove, nel bel mezzo dell'era capitalista, nessuno \u00e8 disposto a perdere la battaglia per i dati. Qui di seguito ho presentato screenshot di due dei siti di ricerca lavoro pi\u00f9 popolari negli USA: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.monster.com\">www.monster.com<\/a><\/noindex> e <noindex><a rel=\"nofollow\" href=\"https:\/\/www.dice.com\">www.dice.com<\/a><\/noindex> \u2014 sui quali sono visualizzati i dati aggiornati al 17 marzo 2020 sul numero di offerte di lavoro ricevute, in base alle parole chiave: Data Quality e Data Scientist. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.monster.com\">www.monster.com<\/a><\/noindex><\/p>\n<p>Data Scientists \u2013 21416 offerte<br \/>\nData Quality \u2013 41104 offerte<\/p>\n<p><img decoding=\"async\" alt=\"Tester di grandi e piccoli dati: tendenze, teoria, la mia storia\" src=\"\/wp-content\/uploads\/2020\/04\/8578f2d1e600791e166ed6e8a7068015.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"Tester di grandi e piccoli dati: tendenze, teoria, la mia storia\" src=\"\/wp-content\/uploads\/2020\/04\/3ff69acc3c7e0d649eae0808b1b535be.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.dice.com\">www.dice.com<\/a><\/noindex> <\/p>\n<p>Data Scientists \u2013 404 offerte<br \/>\nData Quality \u2013 2020 offerte<\/p>\n<p><img decoding=\"async\" alt=\"Tester di grandi e piccoli dati: tendenze, teoria, la mia storia\" src=\"\/wp-content\/uploads\/2020\/04\/b35a9b423ba4bef8736659580e3c281e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"Tester di grandi e piccoli dati: tendenze, teoria, la mia storia\" src=\"\/wp-content\/uploads\/2020\/04\/2c29b83bbe2361089de5a0ab65017300.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\n\u00c8 ovvio che queste professioni non competono affatto tra loro. Con gli screenshot ho semplicemente voluto illustrare la situazione attuale del mercato del lavoro in termini di richieste per ingegneri della qualit\u00e0 dei dati, di cui ora c'\u00e8 molta pi\u00f9 necessit\u00e0 rispetto ai Data Scientist. <\/p>\n<p>Nel giugno 2019, EPAM, in risposta alle esigenze del moderno mercato IT, ha separato l'area della qualit\u00e0 dei dati in una pratica autonoma. Gli ingegneri della qualit\u00e0 dei dati gestiscono i dati durante il loro lavoro quotidiano, verificano il loro comportamento in nuove condizioni e sistemi, controllano la pertinenza dei dati, la loro sufficienza e attualit\u00e0. Nonostante tutto ci\u00f2, nella pratica, gli ingegneri della qualit\u00e0 dei dati dedicano davvero poco tempo al testing funzionale classico, <u>MA<\/u> questo dipende molto dal progetto (far\u00f2 un esempio pi\u00f9 avanti). <\/p>\n<p>Le responsabilit\u00e0 degli ingegneri della qualit\u00e0 dei dati non si limitano a controlli manuali\/automatici di routine su \"nulls, count e sums\" nelle tabelle del DB, ma richiedono una comprensione profonda delle esigenze aziendali del cliente e, di conseguenza, la capacit\u00e0 di trasformare i dati disponibili in informazioni commerciali utili. <\/p>\n<h2>Teoria della qualit\u00e0 dei dati<\/h2>\n<p>\n<img decoding=\"async\" alt=\"Tester di grandi e piccoli dati: tendenze, teoria, la mia storia\" src=\"\/wp-content\/uploads\/2020\/04\/d920a7a0435d6f3a1eb84fc16221c742.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Per avere una visione pi\u00f9 completa del ruolo di un ingegnere della qualit\u00e0 dei dati, analizziamo cos'\u00e8 la qualit\u00e0 dei dati in teoria. <\/p>\n<p><b>Qualit\u00e0 dei dati<\/b> \u2014 \u00e8 una delle fasi del Data Management (un intero mondo che vi lasciamo per un autoapprendimento) e si occupa dell'analisi dei dati secondo i seguenti criteri: <\/p>\n<p><img decoding=\"async\" alt=\"Tester di grandi e piccoli dati: tendenze, teoria, la mia storia\" src=\"\/wp-content\/uploads\/2020\/04\/8f5e75bad69e3cb589cc0e1104ad946f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nNon credo sia necessario scomporre ogni punto (in teoria chiamati \"data dimensions\"), sono ben descritti nell'immagine. Ma il processo di testing non implica la copia rigorosa di queste caratteristiche nei test case e la loro verifica. Nella qualit\u00e0 dei dati, come in qualsiasi altro tipo di testing, \u00e8 necessario partire prima di tutto dai requisiti di qualit\u00e0 dei dati concordati con gli stakeholder del progetto che prendono decisioni aziendali. <\/p>\n<p><\/p>\n<blockquote><p>A seconda del progetto, un ingegnere Data Quality pu\u00f2 svolgere diverse funzioni, da un semplice tester automatizzato che effettua una valutazione superficiale della qualit\u00e0 dei dati, a un professionista che esegue una profilazione approfondita in base ai criteri sopra menzionati. <\/p><\/blockquote>\n<p>Una descrizione molto dettagliata dei processi di Data Management, Data Quality e argomenti correlati \u00e8 fornita nel libro intitolato <i>\u00abDAMA-DMBOK: Data Management Body of Knowledge: 2nd Edition\u00bb<\/i>. Consiglio vivamente questo libro come introduzione a questo tema (il link lo trovate alla fine dell'articolo).<\/p>\n<h2>La mia storia<\/h2>\n<p>\nNel settore IT, ho iniziato come Junior Tester in aziende di prodotto per diventare Lead Data Quality Engineer in EPAM. Dopo circa due anni di lavoro come tester, ero fermamente convinto di aver svolto ogni tipo di testing: regressivo, funzionale, di stress, di stabilit\u00e0, di sicurezza, UI, ecc., e di aver utilizzato un gran numero di strumenti di testing, lavorando con tre linguaggi di programmazione: Java, Scala, Python. <\/p>\n<p><\/p>\n<blockquote><p>Ripensando al passato, capisco il perch\u00e9 della mia variegata esperienza professionale: ho partecipato a progetti focalizzati sulla gestione dei dati, grandi e piccoli. Questo mi ha introdotto a una vasta gamma di strumenti e opportunit\u00e0 di crescita.<\/p><\/blockquote>\n<p>Per apprezzare la variet\u00e0 di strumenti e possibilit\u00e0 di acquisire nuove conoscenze e competenze, basta guardare l'immagine qui sotto, che mostra i pi\u00f9 popolari nel mondo \u00abData &amp; AI\u00bb.<\/p>\n<p><img decoding=\"async\" alt=\"Tester di grandi e piccoli dati: tendenze, teoria, la mia storia\" src=\"\/wp-content\/uploads\/2020\/04\/e3278694195bf59b44055e1eaafd62b1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nTali illustrazioni sono prodotte annualmente da uno dei noti venture capitalist, Matt Turck, proveniente dallo sviluppo software. Ecco <noindex><a rel=\"nofollow\" href=\"https:\/\/mattturck.com\">link<\/a><\/noindex> il suo blog e <noindex><a rel=\"nofollow\" href=\"https:\/\/firstmarkcap.com\/team\/matt-turck\">la societ\u00e0 di venture capital<\/a><\/noindex>, dove lavora come partner. <\/p>\n<p>Ho registrato una rapida crescita professionale, soprattutto quando ero l'unico tester del progetto o, perlomeno, all'inizio di un progetto. In quel momento, sei responsabile dell'intero processo di testing e non hai la possibilit\u00e0 di fare un passo indietro, solo di andare avanti. Inizialmente questo mi spaventava, ma ora vedo chiaramente tutti i vantaggi di questa esperienza: <\/p>\n<ul>\n<li>Inizi a comunicare con l'intero team come mai prima d'ora, poich\u00e9 non ci sono intermediari nel dialogo: n\u00e9 test manager n\u00e9 colleghi tester. <\/li>\n<li>L\u2019immersione nel progetto diventa incredibilmente profonda e hai informazioni su tutti i componenti, sia in generale che nei dettagli. <\/li>\n<li>Gli sviluppatori non ti vedono pi\u00f9 come 'quello del testing che non si sa cosa faccia', ma piuttosto come un pari, che porta un enorme valore al team con i suoi test automatizzati e la capacit\u00e0 di prevedere i bug in un determinato punto del prodotto. <\/li>\n<li>Come risultato, sei pi\u00f9 efficace, pi\u00f9 qualificato, pi\u00f9 richiesto. <\/li>\n<\/ul>\n<p>\nCon l'espansione del progetto, in 100% dei casi, sono diventato mentore per i nuovi tester che vi arrivavano, insegnando loro e trasmettendo le conoscenze che avevo acquisito. Tuttavia, a seconda del progetto, non sempre ricevevo specialisti di alto livello nel testing automatizzato e c'era la necessit\u00e0 di formarli nell'automazione (per chi era interessato), o di creare strumenti per il loro utilizzo nelle attivit\u00e0 quotidiane (strumenti per la generazione di dati e il loro caricamento nel sistema, strumenti per test di carico\/testing di stabilit\u00e0 'veloce' ecc.). <\/p>\n<h3>Un esempio concreto di progetto<\/h3>\n<p>\nSfortunatamente, a causa degli obblighi di riservatezza, non posso parlare in dettaglio dei progetti su cui ho lavorato, ma posso fornire esempi tipici di compiti di un Data Quality Engineer in uno di questi progetti. <\/p>\n<p>L'obiettivo del progetto era implementare una piattaforma per la preparazione dei dati per l'addestramento di modelli di machine learning. Il cliente era una grande azienda farmaceutica dagli Stati Uniti. Tecnologicamente, si trattava di un cluster <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\">Kubernetes<\/a><\/noindex>, che si alzava su <noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/ru\/ec2\">AWS EC2<\/a><\/noindex> istanze, con diversi microservizi e una base Open Source del progetto EPAM \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/legion-platform\/legion\">Legion<\/a><\/noindex>, adattato alle esigenze del cliente specifico (ora il progetto \u00e8 rinato in <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/odahu\/odahu-flow\">odahu<\/a><\/noindex>). I processi ETL erano organizzati tramite <noindex><a rel=\"nofollow\" href=\"https:\/\/airflow.apache.org\">Apache Airflow<\/a><\/noindex> e trasferivano i dati dal sistema <noindex><a rel=\"nofollow\" href=\"https:\/\/www.salesforce.com\">SalesForce<\/a><\/noindex> del cliente in <noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/ru\/s3\/?nc1=h_ls\">AWS S3<\/a><\/noindex> Buckets. Dopo, un'immagine Docker del modello di machine learning veniva implementata sulla piattaforma, che si addestrava su dati aggiornati e forniva previsioni tramite API REST, rispondendo alle esigenze aziendali e risolvendo problemi specifici. <\/p>\n<p><b>Visivamente, il tutto aveva un aspetto simile a questo: <\/b><\/p>\n<p><img decoding=\"async\" alt=\"Tester di grandi e piccoli dati: tendenze, teoria, la mia storia\" src=\"\/wp-content\/uploads\/2020\/04\/c2de3c1919f3f9ff29147fce09eb14c4.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nC'\u00e8 stata abbondanza di test funzionali in questo progetto, e considerando la velocit\u00e0 dello sviluppo delle funzionalit\u00e0 e la necessit\u00e0 di mantenere il ritmo del ciclo di rilascio (sprint di due settimane), era fondamentale pensare subito all'automazione dei test dei nodi critici del sistema. La maggior parte della piattaforma basata su Kubernetes era coperta da test automatici, realizzati in <noindex><a rel=\"nofollow\" href=\"https:\/\/robotframework.org\/\">Robot Framework<\/a><\/noindex> + Python, ma era anche necessario mantenere e ampliare questi test. Inoltre, per facilit\u00e0 del cliente, \u00e8 stata creata una GUI per gestire i modelli di machine learning, implementati sul cluster, insieme alla possibilit\u00e0 di specificare da dove e verso dove trasferire i dati per l'addestramento dei modelli. Questa ampia integrazione ha comportato un'espansione delle verifiche funzionali automatizzate, che sono state per lo pi\u00f9 realizzate tramite chiamate API REST e un numero ridotto di test end-to-end. Circa a met\u00e0 di tutto questo percorso, si \u00e8 unito a noi un tester manuale che si \u00e8 dimostrato eccellente nel test di accettazione delle versioni del prodotto e nella comunicazione con il cliente riguardo all'accettazione di un nuovo rilascio. Inoltre, grazie all'arrivo di questo nuovo specialista, siamo riusciti a documentare il nostro lavoro e aggiungere alcune verifiche manuali molto importanti, che era difficile automatizzare subito. <\/p>\n<p>Infine, dopo aver raggiunto la stabilit\u00e0 dalla piattaforma e dalla GUI sopra di essa, abbiamo iniziato a costruire pipeline ETL utilizzando gli Apache Airflow DAG. Il controllo automatizzato della qualit\u00e0 dei dati \u00e8 stato effettuato scrivendo appositi DAG di Airflow che controllavano i dati in base ai risultati del processo ETL. In questo progetto siamo stati fortunati, e il cliente ci ha fornito accesso a dataset anonimi, su cui abbiamo eseguito i test. I dati sono stati controllati riga per riga per verificare la corrispondenza dei tipi, la presenza di dati danneggiati, il numero totale di record prima e dopo, e il confronto delle trasformazioni effettuate dal processo ETL in termini di aggregazione, modifica dei nomi delle colonne e altro ancora. Inoltre, queste verifiche sono state scalate su diverse fonti di dati, ad esempio oltre a SalesForce anche su MySQL. <\/p>\n<p>Le verifiche finali della qualit\u00e0 dei dati sono state effettuate a livello di S3, dove erano archiviati e pronti per l'uso per l'addestramento dei modelli di machine learning. Per ottenere dati dal file CSV finale, archiviato nel bucket S3 e per la loro validazione, \u00e8 stato scritto codice utilizzando <noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/ru\/sdk-for-python\">boto3 client<\/a><\/noindex>. <\/p>\n<p>C'era anche una richiesta da parte del cliente di archiviare una parte dei dati in un bucket S3 e un'altra parte in un altro. Questo ha richiesto la scrittura di ulteriori verifiche per controllare l'affidabilit\u00e0 di tale suddivisione. <\/p>\n<h3>Esperienza generica su altri progetti<\/h3>\n<p>\nEcco un elenco delle attivit\u00e0 tipiche di un ingegnere della qualit\u00e0 dei dati: <\/p>\n<ul>\n<li>Preparare dati di test (validi, non validi, grandi, piccoli) tramite uno strumento automatizzato. <\/li>\n<li>Caricare il set di dati preparato nella fonte originale e verificare la sua prontezza per l'uso. <\/li>\n<li>Eseguire processi ETL per l'elaborazione del set di dati dalla sorgente originale a quella finale o intermedia, utilizzando un determinato insieme di impostazioni (nel caso si possano specificare parametri configurabili per il task ETL). <\/li>\n<li>Verificare i dati elaborati dal processo ETL in termini di qualit\u00e0 e conformit\u00e0 ai requisiti aziendali. <\/li>\n<\/ul>\n<p>\nIn questo caso, l'accento delle verifiche deve cadere non solo sul fatto che il flusso di dati nel sistema abbia funzionato e sia arrivato alla fine (che fa parte del test funzionale), ma principalmente sulla verifica e validazione dei dati rispetto ai requisiti attesi, identificazione di anomalie e altro. <\/p>\n<h3>Strumenti<\/h3>\n<p>\nUna delle tecniche per tale controllo dei dati pu\u00f2 essere l'organizzazione di verifiche a catena a ciascuna fase di elaborazione dei dati, il cosiddetto \"data chain\" \u2014 controllo dei dati dalla sorgente al punto di utilizzo finale. Questo tipo di verifiche \u00e8 generalmente implementato scrivendo query SQL di controllo. \u00c8 chiaro che tali query devono essere il pi\u00f9 leggere possibile e controllare singoli aspetti della qualit\u00e0 dei dati (metadati delle tabelle, righe vuote, NULL, errori di sintassi \u2014 altri attributi richiesti delle verifiche). <\/p>\n<p>Nel caso di test di regressione, in cui si usano set di dati gi\u00e0 pronti (immutabili o leggermente modificabili), nel codice dei test automatici possono essere memorizzati gi\u00e0 pronti modelli di verifica dei dati rispetto alla qualit\u00e0 (descrizioni dei metadati attesi delle tabelle; campioni di oggetti a riga, che possono essere selezionati casualmente durante il test, e altro). <\/p>\n<p>Durante i test, \u00e8 necessario anche scrivere processi ETL di prova, utilizzando framework come Apache Airflow, <noindex><a rel=\"nofollow\" href=\"https:\/\/spark.apache.org\/\">Apache Spark<\/a><\/noindex> o strumenti black-box cloud come il <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/dataprep\">GCP Dataprep<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/dataflow\">GCP Dataflow<\/a><\/noindex> e altro ancora. Questa situazione obbliga il test engineer a immergersi nei principi di funzionamento degli strumenti sopra citati, permettendo di condurre test funzionali (ad esempio, sui processi ETL gi\u00e0 esistenti nel progetto) in modo pi\u00f9 efficace e di utilizzarli per la verifica dei dati. In particolare, per Apache Airflow sono gi\u00e0 disponibili operatori pronti per lavorare con i popolari database analitici, come il <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/bigquery\">GCP BigQuery<\/a><\/noindex>. Un esempio base del suo utilizzo \u00e8 gi\u00e0 stato descritto <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@yuu.ishikawa\/apache-airflow-as-a-data-quality-checker-416ca7f5a3ad\">qui<\/a><\/noindex>, quindi non mi ripeter\u00f2. <\/p>\n<p>Oltre alle soluzioni pronte, nessuno vieta di implementare le proprie tecniche e strumenti. Questo non solo porter\u00e0 vantaggi al progetto, ma anche al Data Quality Engineer, che cos\u00ec ampler\u00e0 la sua visione tecnica e le sue abilit\u00e0 di programmazione. <\/p>\n<h3>Come funziona in un progetto reale<\/h3>\n<p>\nUna buona illustrazione degli ultimi paragrafi sulla \u00abdata chain\u00bb, ETL e verifiche sempre presenti \u00e8 il seguente processo da uno dei progetti reali: <\/p>\n<p><img decoding=\"async\" alt=\"Tester di grandi e piccoli dati: tendenze, teoria, la mia storia\" src=\"\/wp-content\/uploads\/2020\/04\/4a4cd3043b584bb3fbce4b9c3021e9f6.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nQui, nell'ingresso della nostra sistema, si raccolgono diversi dati (naturalmente, preparati da noi): validi, non validi, misti, ecc.; successivamente vengono filtrati e immagazzinati temporaneamente, per poi essere soggetti a una serie di trasformazioni e infine posizionati nel data store finale, da dove si svolgeranno le analisi, la costruzione di data mart e la ricerca di business insights. In un tale sistema, senza controllare funzionalmente il funzionamento dei processi ETL, ci concentriamo sulla qualit\u00e0 dei dati prima e dopo le trasformazioni, nonch\u00e9 sull'uscita in analisi. <\/p>\n<p>Riassumendo quanto detto, indipendentemente dai luoghi in cui ho lavorato, sono sempre stato coinvolto in progetti Data, che condividevano le seguenti caratteristiche: <\/p>\n<ul>\n<li>Solo attraverso l'automazione si possono testare alcuni casi e raggiungere un ciclo di rilascio accettabile per il business. <\/li>\n<li>Il tester in un progetto del genere \u00e8 uno dei membri pi\u00f9 rispettati del team, poich\u00e9 porta un enorme vantaggio a ciascuno dei partecipanti (accelerazione dei test, dati di qualit\u00e0 per il Data Scientist, identificazione dei difetti nelle prime fasi). <\/li>\n<li>Non importa se lavori sulla tua attrezzatura o nel cloud: tutte le risorse sono astratte in cluster come Hortonworks, Cloudera, Mesos, Kubernetes, ecc. <\/li>\n<li>I progetti sono costruiti su un approccio a microservizi, predominano i calcoli distribuiti e paralleli. <\/li>\n<\/ul>\n<p>\nVorrei sottolineare che, impegnandosi nella testing della Data Quality, il professionista si sposta sul codice del prodotto e sugli strumenti utilizzati. <\/p>\n<h3>Caratteristiche distintive del testing della Data Quality<\/h3>\n<p>\nInoltre, ho identificato alcune (preavviso: queste sono MOLTO generali e puramente soggettive) caratteristiche distintive del testing nei progetti Data (Big Data) rispetto ad altri ambiti: <\/p>\n<p><img decoding=\"async\" alt=\"Tester di grandi e piccoli dati: tendenze, teoria, la mia storia\" src=\"\/wp-content\/uploads\/2020\/04\/8df52fbae2998e70755bf84e254db83e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h2>Link utili<\/h2>\n<p><\/p>\n<ol>\n<li>Teoria: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.amazon.com\/DAMA-DMBOK-Data-Management-Body-Knowledge\/dp\/1634622340\">DAMA-DMBOK: Data Management Body of Knowledge: 2nd Edition<\/a><\/noindex>.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/training.ru\/#!\/Home?lang=ru\">Centro di formazione<\/a><\/noindex>&nbsp;EPAM&nbsp;<\/li>\n<li>Materiali consigliati per un ingegnere della Data Quality alle prime armi:\n<ol>\n<li>Corso gratuito su Stepik:&nbsp;<noindex><a rel=\"nofollow\" href=\"https:\/\/stepik.org\/course\/551\/syllabus\">Introduzione ai database<\/a><\/noindex>.&nbsp;<\/li>\n<li>Corso su LinkedIn Learning:&nbsp;<noindex><a rel=\"nofollow\" href=\"https:\/\/www.linkedin.com\/learning\/data-science-foundations-data-engineering\/welcome\">Data Science Foundations: Data Engineering<\/a><\/noindex>.<\/li>\n<li>Articoli:\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.stickyminds.com\/article\/business-intelligence-and-data-quality\">Business Intelligence e Data Quality<\/a><\/noindex>;&nbsp;<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.datagaps.com\/concepts\/etl-testing\">ETL Testing<\/a><\/noindex>;&nbsp;<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/panoply.io\/analytics-stack-guide\/data-profiling-best-practices\">Cosa \u00e8 il Profiling dei Dati? Processi, Migliori Pratiche e Strumenti<\/a><\/noindex>;&nbsp;<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.guru99.com\/software-testing-test-data.html\">Generazione di Dati di Test: Cosa \u00e8, Come, Esempio, Strumenti;&nbsp;<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.testbytes.net\/blog\/5-test-data-generation-techniques-to-know\">5 Tecniche di Generazione di Dati di Test che Devi Conoscere.<\/a><\/noindex>&nbsp;<\/li>\n<\/ul>\n<\/li>\n<li>Video:\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=HWaBdqmTqEA\">Concetti di Qualit\u00e0 dei Dati | Tutorial di Qualit\u00e0 dei Dati | Tutorial di Data Warehousing<\/a><\/noindex>;<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=avDqzhuHFkw\">Profilazione dei Dati utilizzando SSIS<\/a><\/noindex>;<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=r7SF5WldITk\">Profilazione dei Dati e Elaborazione della Pipeline con Spark.<\/a><\/noindex><\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p><\/p>\n<h2>Conclusione<\/h2>\n<p>\n<b>Qualit\u00e0 dei dati<\/b> \u00e8 un settore molto giovane e promettente, farne parte significa essere parte di una sorta di startup. Entrando nella Data Quality, ti immergerai in un gran numero di tecnologie moderne richieste, ma la cosa pi\u00f9 importante \u00e8 che si apriranno davanti a te enormi opportunit\u00e0 per generare e realizzare le tue idee. Potrai applicare un approccio di miglioramento continuo non solo nel progetto ma anche per te stesso, sviluppandoti in modo costante come professionista.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/epam_systems\/blog\/495478\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442, \u043c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440, \u0438 \u044f Data Quality \u0438\u043d\u0436\u0435\u043d\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0438\u0445 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0451\u0442 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u044f \u043a \u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438\u0448\u0451\u043b \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u0432 2020 \u0433\u043e\u0434\u0443 \u044d\u0442\u043e \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u043d\u0430 \u0433\u0440\u0435\u0431\u043d\u0435 \u0432\u043e\u043b\u043d\u044b. \u041c\u0438\u0440\u043e\u0432\u043e\u0439 \u0442\u0440\u0435\u043d\u0434 \u0421\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u0438\u0439 \u043c\u0438\u0440 \u043f\u0435\u0440\u0435\u0436\u0438\u0432\u0430\u0435\u0442 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u0443\u044e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0440\u0435\u0432\u043e\u043b\u044e\u0446\u0438\u044e, \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u0430\u0441\u043f\u0435\u043a\u0442\u043e\u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":77181,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-77180","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442, \u043c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440, \u0438 \u044f Data Quality \u0438\u043d\u0436\u0435\u043d\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0438\u0445 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0438 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445: \u0442\u0440\u0435\u043d\u0434\u044b, \u0442\u0435\u043e\u0440\u0438\u044f, \u043c\u043e\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442, \u043c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440, \u0438 \u044f Data Quality \u0438\u043d\u0436\u0435\u043d\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0438\u0445 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-04-08T11:42:32+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-04-08T11:42:32+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Tester di big e small data: tendenze, teoria, la mia storia | ProHoster","description":"Ciao a tutti, mi chiamo Alessandro e sono un ingegnere della qualit\u00e0 dei dati, specializzato nel controllo della qualit\u00e0 dei dati.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0438 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445: \u0442\u0440\u0435\u043d\u0434\u044b, \u0442\u0435\u043e\u0440\u0438\u044f, \u043c\u043e\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f | ProHoster","og:description":"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442, \u043c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440, \u0438 \u044f Data Quality \u0438\u043d\u0436\u0435\u043d\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0438\u0445 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430.","og:url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-04-08T11:42:32+00:00","article:modified_time":"2020-04-08T11:42:32+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"77180","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 17:22:32","updated":"2022-10-03 00:36:00","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/77180","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=77180"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/77180\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/77181"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=77180"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=77180"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=77180"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}