data warehouse testing tutorial with examples etl testing guide
Questo tutorial tratta gli obiettivi e il significato dei test del data warehouse, le responsabilità dei test ETL, gli errori nella distribuzione DW e ETL in dettaglio:
In questo Serie di formazione approfondita sul data warehouse , abbiamo esaminato il Cos'è ET Processo L in Data Warehouse in dettagli nel nostro tutorial precedente.
Questo tutorial ti fornirà una comprensione di come eseguire il test del data warehouse in un'organizzazione. Potrai anche conoscere gli obiettivi del test DW, come e che tipo di test può essere eseguito sul back-end, che sono tutti coinvolti in questo processo, errori DW e distribuzione ETL in dettaglio.
=> Controlla TUTTI i tutorial sul data warehousing qui.
Destinatari
- Sviluppatori e tester di Data Warehouse / ETL.
- Professionisti di database con conoscenza di base dei concetti di database.
- Amministratori di database / esperti di big data che desiderano comprendere i concetti di Data Warehouse / ETL.
- Laureati / matricole che cercano lavoro nel data warehouse.
Cosa imparerai:
Test di Data Warehouse (ETL)
Qual è il significato di testare i sistemi di Data Warehouse e Business Intelligence?
I test svolgono un ruolo fondamentale nel successo di uno qualsiasi dei due sistemi precedenti, garantendo la correttezza dei dati che rafforza la fiducia degli utenti finali.
In generale, un difetto riscontrato nelle fasi successive del ciclo di vita dello sviluppo del software costa di più per riparare quel difetto. Questa situazione nel DW può essere peggiorata perché i dati errati trovati nelle fasi successive potrebbero essere stati utilizzati in importanti decisioni aziendali in quel momento.
Pertanto, la correzione nel DW è più costosa in termini di cambiamenti di processo, persone e tecnologia. È possibile iniziare il test DW fin dalla fase di raccolta dei requisiti.
Viene preparata e rivista una matrice di tracciabilità dei requisiti, che mappa principalmente le funzionalità DW con i rispettivi requisiti aziendali. La matrice di tracciabilità funge da input per il piano di test DW preparato dai tester. Il piano di test descrive i test da eseguire per convalidare il sistema DW.
Descrive inoltre i tipi di test che verranno eseguiti sul sistema. Dopo che il piano di test è pronto, tutti i casi di test dettagliati verranno preparati per vari scenari DW. Quindi tutti i casi di test verranno eseguiti e i difetti verranno registrati.
Esiste uno standard nel mondo operativo che mantiene diversi ambienti per lo sviluppo, il test e la produzione. Nel mondo DW, sia gli sviluppatori che i tester si assicureranno che gli ambienti di sviluppo e test siano disponibili con la replica dei dati di produzione prima di iniziare il loro lavoro.
Questo viene copiato per un elenco di tabelle con dati limitati o completi a seconda delle esigenze del progetto, poiché i dati di produzione sono molto grandi. Gli sviluppatori sviluppano il loro codice nell'ambiente dello sviluppatore e lo distribuiscono ai tester.
I tester testeranno il codice fornito negli ambienti di test per assicurarsi che tutti i sistemi funzionino. Quindi il codice verrà pubblicato negli ambienti di produzione. Il codice DW viene inoltre mantenuto in diverse versioni in base ai difetti corretti in ogni release. Il mantenimento di più ambienti e versioni di codice aiuta a costruire un sistema di buona qualità.
come aprire un file .apk
Obiettivi del test del data warehouse (ETL)
Diamo un'occhiata agli obiettivi dei test del data warehouse.
# 1) Completezza dei dati: Assicurati che tutti i dati provenienti da varie origini vengano caricati in un data warehouse. Il team di test convalida se tutti i record DW vengono caricati, rispetto al database di origine e ai file flat, seguendo le strategie di esempio di seguito.
- Il numero totale di conteggi di record caricati dal sistema di origine deve corrispondere al numero totale di record caricati in DW. Se c'è una differenza, puoi pensare ai record rifiutati.
- Confronta i dati caricati in ogni campo di DW con i campi dati del sistema di origine. Questo farà emergere gli eventuali errori di dati.
# 2) Trasformazione dei dati: Durante il caricamento dei dati di origine nel Data warehouse, pochi campi possono essere caricati direttamente con i dati di origine ma pochi campi verranno caricati con i dati che vengono trasformati secondo la logica aziendale. Questa è la parte complessa del test DW (ETL).
Di seguito sono riportate le strategie di esempio per verificarlo:
- Puoi eseguire il test creando e confrontando i dati nei fogli di lavoro. Carica i dati trasformati di origine e i dati DW in fogli di calcolo ed esegui un confronto. Non dovrebbe esserci alcuna mancata corrispondenza.
- I tester devono scrivere le query secondo la logica di trasformazione per confrontare i dati DW con i dati di origine. L'esecuzione della query garantirà che non manchi la convalida dei dati per nessuno dei campi.
# 3) Qualità dei dati: Il sistema di data warehouse (ETL) deve garantire la qualità dei dati in esso caricati rifiutando (o) correggendo i dati.
DW può rifiutare alcuni dei dati del sistema di origine in base alla logica dei requisiti aziendali. Per esempio, rifiuta un record se un determinato campo ha dati non numerici. Tutti i record rifiutati vengono caricati nella tabella degli scarti per riferimento.
I dati rifiutati vengono segnalati ai client perché non vi è alcuna possibilità di venire a conoscenza di questi dati persi, poiché non verranno caricati nel sistema DW. DW può corretta i dati caricando zero al posto di valori nulli ecc.
# 4) Scalabilità e prestazioni: Il data warehouse deve garantire la scalabilità del sistema con carichi crescenti. Con ciò, non dovrebbe esserci alcun degrado delle prestazioni durante l'esecuzione delle query, con risultati previsti in intervalli di tempo specifici. Pertanto il test delle prestazioni scopre eventuali problemi e li risolve prima della produzione.
Di seguito sono riportate strategie di esempio per i test di prestazioni e scalabilità:
- Esegui il test delle prestazioni caricando i volumi di produzione dei dati e assicurati che i tempi non vengano persi.
- Convalida le prestazioni di ogni query con dati in blocco. Testare le prestazioni utilizzando join semplici e join multipli.
- Carica il doppio (o) il triplo dei volumi di dati previsti per calcolare approssimativamente la capacità del sistema.
- Eseguire il test eseguendo i lavori per tutti i report elencati contemporaneamente.
# 5) Test di integrazione: Il data warehouse dovrebbe eseguire test di integrazione con altre applicazioni upstream e downstream. Se possibile, è meglio copiare i dati di produzione nell'ambiente di test per Integration Testing.
Tutti i team di sistema dovrebbero essere coinvolti in questa fase per colmare le lacune comprendendo e testando insieme tutti i sistemi.
# 6) Test unitario: Questa operazione viene eseguita dai singoli sviluppatori sui loro risultati finali. Gli sviluppatori prepareranno scenari di unit test in base alla loro comprensione dei requisiti, eseguiranno gli unit test e documenteranno i risultati. Questo aiuta gli sviluppatori a correggere eventuali bug se trovati, prima di consegnare il codice al team di test.
# 7) Test di regressione: Convalida che il sistema DW non funziona correttamente dopo la correzione di eventuali difetti. Questa operazione viene eseguita molte volte ad ogni nuova modifica del codice.
# 8) Test di accettazione dell'utente: Questo test viene eseguito dagli utenti aziendali per convalidare la funzionalità del sistema. L'ambiente UAT è diverso dall'ambiente QA. La firma di UAT implica che siamo pronti a spostare il codice in produzione.
coda di array circolare c ++
Dal punto di vista del sistema Data Warehouse e Business Intelligence, gli utenti aziendali possono convalidare vari report tramite un'interfaccia utente (UI). Possono convalidare le specifiche del report rispetto ai requisiti, possono convalidare la correttezza dei dati nei report, possono convalidare la velocità con cui il sistema restituisce i risultati, ecc.
Diagramma di flusso del test DW:
Responsabilità del test del data warehouse
Di seguito sono elencati i vari team coinvolti nella fornitura di un sistema DW di successo:
- Analisti aziendali: Raccogli tutti i requisiti aziendali per il sistema e documentali per le preferenze di tutti.
- Team infrastruttura: Configurare vari ambienti come richiesto sia per gli sviluppatori che per i tester.
- Sviluppatori: Sviluppare codice ETL secondo i requisiti ed eseguire unit test.
- QA (garanzia di qualità) / tester: Sviluppare un piano di test, casi di test, ecc. Identifica i difetti nel sistema eseguendo i casi di test. Eseguire vari livelli di test.
- DBA: Gli amministratori di database si occupano della conversione degli scenari di database ETL logici in scenari di database ETL fisici e coinvolgono anche i test delle prestazioni.
- Utenti aziendali: Partecipa al test di accettazione degli utenti, esegui query e rapporti sulle tabelle DW.
Errori nel data warehouse
Quando si estraggono, trasformano e caricano dati (ETL) da più origini, è possibile che si ottengano dati non validi che potrebbero interrompere i lavori di lunga durata.
Di seguito sono riportate le principali cause di guasto nel sistema DW:
# 1) Violazioni delle regole aziendali (errori logici): Dati logicamente errati violano le regole aziendali. Tali dati possono essere gestiti principalmente durante le fasi di trasformazione o caricamento.
# 2) Violazioni delle regole sui dati (errori nei dati): Si verificano errori di dati all'interno del sistema di database DW come mancate corrispondenze di tipi di dati, errori di vincoli di dati, ecc.
Distribuzione ETL
Questa è la fase in cui tutti i tuoi sforzi diventano effettivi. Tutti i documenti di supporto alla produzione dovrebbero essere preparati.
La documentazione racconterà agli altri la sequenza dei lavori da eseguire, gli scenari di ripristino degli errori, i materiali di formazione ai team di supporto DW per monitorare il sistema dopo la distribuzione e al team di supporto amministrativo per eseguire i report.
Conclusione
In questo tutorial abbiamo appreso in dettaglio gli obiettivi del test del data warehouse, le responsabilità del test ETL, gli errori nel DW e la distribuzione ETL.
Ci auguriamo che tu abbia un'idea di come eseguire test dettagliati in un sistema di data warehouse (ETL).
=> Visita qui per apprendere il data warehousing da zero.
Lettura consigliata
- Esercitazione sul test del data warehouse di test ETL (una guida completa)
- Esercitazione sul test del volume: esempi e strumenti per il test del volume
- Domande e risposte al colloquio di prova ETL
- Migliori strumenti di test del software 2021 (Strumenti di automazione del test QA)
- Test funzionale vs test non funzionale
- Tutorial sul test pairwise o sul test per tutte le coppie con strumenti ed esempi
- I 10 migliori strumenti di test ETL nel 2021
- Come eseguire test basati sui dati in SoapUI Pro - SoapUI Tutorial # 14