È possibile creare regole di qualità dei dati basate su SQL per valutare la qualità dei dati nel progetto. Utilizzare tali regole per misurare gli errori piuttosto che per valutare la conformità a specifici criteri di qualità.
Per fare in modo che una regola di qualità dei dati basata su SQL contribuisca ai punteggi di qualità dei dati di un asset o di una colonna, aggiungi tale asset o colonna come elemento correlato alla regola corrispondente. Utilizzare il tipo di relazione Convalida la qualità dei dati . Lo stesso punteggio e gli stessi problemi vengono riportati per tutti gli asset e le colonne collegati a questo tipo di relazione.
Per creare una regola di qualità dei dati basata su SQL:
Apri un progetto, fai clic Nuova risorsa > Misura e monitora la qualità dei dati .
Definisci dettagli:
Specificare un nome per la regola di qualità dei dati.
Facoltativo: fornire una descrizione.
Facoltativo: selezionare una dimensione di qualità dei dati per descrivere la metrica di qualità dei dati primaria per la logica della regola in questo asset. La dimensione selezionata può essere utilizzata come categoria di report, per il filtro o per la visualizzazione dei dati selezionati.
Quando si crea la regola da una definizione di qualità dei dati, è possibile che sia già stata impostata una dimensione di qualità dei dati. È possibile mantenerlo, eliminare l'impostazione della dimensione o selezionare una dimensione diversa.
Abilitare l'opzione Utilizza istruzioni SQL .
Specificare l'origine dei dati da controllare selezionando una connessione esistente o creandone una nuova. Per le origini dati supportate, consultare Origini dati supportate per la cura e la qualità dei dati.
Se si seleziona una connessione esistente e questa connessione è stata creata con credenziali personali, sarà necessario sbloccare la connessione.
Immettere le istruzioni SQL.
Quando si scrive la query, assicurarsi che l'istruzione SELECT soddisfi le seguenti condizioni:
- L'istruzione restituisce solo colonne con nomi univoci. Le colonne con nomi duplicati causeranno errori di convalida.
- L'istruzione restituisce il numero di record che non soddisfano la condizione di qualità dei dati. Le regole basate su SQL funzionano in modo diverso rispetto alle regole create dalle definizioni di qualità dei dati. Riportano i record restituiti dall'istruzione SELECT come
failed
oNot met
. Inoltre, il numero totale di record riportati è uguale al numero di record restituiti, non al numero di record controllati.
Ad esempio, supponendo di avere una tabella
db2admin.credit_card
con 31 righe e di voler controllare quanti record con tipo di scheda AMEX sono nella tabella, la differenza è la seguente:Regola di qualità dei dati da una definizione di qualità dei dati
Controllare i record in cui il tipo di scheda è AMEX.
Espressione nella definizione di qualità dei datiCol = 'AMEX'
Espressione di limite nella regola di qualità dei dati:credit_card.card_type = 'AMEX'
Risultato di esempio:Total: 31 | Met: 4 (12.9%) Not met: 27 (87.1%)
Regola di qualità dei dati basata su SQL
Si controllano i record in cui il tipo di scheda non è AMEX.
Istruzione SELECTselect card_type from db2admin.credit_card where card_type <> 'AMEX'
Risultato di esempio:Total: 27 | Met: 0 (0%) Not met: 27 (100%)
Controllare inoltre la serie di Istruzioni SQL di esempio per regole di qualità dei dati. Questi esempi dimostrano come è possibile scrivere regole SQL per restituire record che non soddisfano i criteri di qualità. È possibile copiare le istruzioni fornite nelle proprie regole di qualità dei dati e modificarle in base alle necessità.
Considerare queste convenzioni per specificare i nomi di colonna, tabella e schema nell'istruzione SELECT:
- I nomi tabella e schema nelle origini dati PostgreSQL sono sensibili al maiuscolo / minuscolo. Potrebbe essere necessario racchiudere i nomi tra virgolette doppie come in questo esempio: "schema". "table_name"
- Provare a evitare le query
SELECT *
. Tali query potrebbero causare errori di convalida quando i nomi delle colonne vengono modificati. Restringere la selezione della colonna. - Se il nome della colonna non inizia con un carattere alfabetico o contiene caratteri diversi da quelli alfabetici, numerici o di sottolineatura, utilizzare un alias per il nome della colonna.
In qualsiasi momento, è possibile verificare le istruzioni SQL. Notare che il test restituisce solo i nomi delle colonne selezionate dalla query. Non viene eseguita alcuna elaborazione effettiva. Un controllo di validità viene eseguito quando si fa clic su Avanti. Non è possibile procedere a meno che la query non superi questo controllo.
Configurare le impostazioni di output e il contenuto.
Selezionare se si desidera che l'output della regola venga scritto in un database. In caso contrario, vengono fornite solo alcune informazioni statistiche nella cronologia di esecuzione della regola.
Per generare una tabella di database:
Abilitare l'opzione Output esterno ed espandere la sezione.
Selezionare una di queste opzioni:
Scrivi in una nuova tabella di database
Selezionare una connessione. A seconda della connessione selezionata, selezionare uno schema o selezionare un catalogo e uno schema. Quindi, inserire il nome della tabella di output da creare.
Quando si esegue la regola, questa nuova tabella di emissione viene aggiunta anche al progetto come asset di dati.
Scrivi in una tabella di database esistente
Selezionare una connessione. A seconda della connessione selezionata, selezionare uno schema e una tabella esistente, oppure selezionare un catalogo, uno schema e una tabella esistente. La sezione Contenuto in uscita è popolata con le colonne di questa tabella ed è possibile mappare il contenuto su queste colonne.
Se un asset di dati corrispondente non esiste nel progetto, viene creato quando si esegue la regola.
Per i tipi di database supportati, consultare Origini dati supportate per la cura e la qualità dei dati. I nomi di schema e tabella devono seguire questa convenzione:
- Il primo carattere del nome deve essere un carattere alfabetico.
- Il resto del nome può essere costituito da caratteri alfabetici, numerici o di sottolineatura.
- Il nome non deve contenere spazi.
È possibile accedere all'asset di dati che corrisponde alla tabella di output della regola dalla pagina Asset nel progetto o dalla cronologia di esecuzionedella regola.
La query SQL determina quali record vengono scritti nella tabella di output, ma è possibile configurare le seguenti impostazioni:
Numero massimo di record di output di eccezioni: è possibile includere tutti i record o impostare un numero massimo.
Metodo di aggiornamento: i nuovi record di output possono essere accodati al contenuto esistente della tabella di output. Se si desidera mantenere solo i risultati di output dell'ultima esecuzione, selezionare la sovrascrittura dei record esistenti.
Per il metodo di aggiornamento Accoda, lo schema della tabella non può essere modificato, ossia non è possibile rinominare, aggiungere o eliminare le colonne. Se si desidera modificare il contenuto di output per una regola di qualità dei dati e scrivere in una tabella di output esistente, assicurarsi di utilizzare il metodo di aggiornamento Sovrascrivi per sostituire le colonne nella tabella di output con le colonne di output appena definite.
È possibile modificare il tipo di output in qualsiasi momento. A seconda della nuova selezione, tutte le impostazioni configurate vengono reimpostate o sovrascritte.
Configurare il contenuto della tabella di output. Per impostazione predefinita, tutte le colonne selezionate dalla query SQL sono incluse nella tabella di output. È possibile rimuovere le colonne selezionate o tutte e aggiungere altro contenuto. Fare clic su Aggiungi contenuto di emissione e selezionare una delle seguenti opzioni:
Colonne: selezionare le colonne che si desidera visualizzare nella tabella di output. È possibile selezionare da tutte le colonne restituite dalla query SQL.
Statistiche e attributi: selezionare eventuali ulteriori attributi o statistiche che si desidera includere nella tabella di output:
- ID record: contiene una chiave univoca che identifica un record nell'output.
- Nome regola: contiene il nome della regola di qualità dei dati.
- Data sistema: mostra la data del sistema in cui è stata eseguita la regola. La data del sistema è la data nel fuso orario impostato sul server.
- Ora del sistema: mostra la data e l'ora del sistema in cui è stata eseguita la regola. La data e l'ora del sistema è la data e l'ora nel fuso orario impostato nel server.
- Regole di passaggio: mostra il numero di condizioni della regola soddisfatte dal record.
- Regole non riuscite: mostra il numero di condizioni della regola non soddisfatte dal record.
- Percentuale di regole riuscite: mostra la percentuale di condizioni della regola che sono state soddisfatte.
- Percentuale regole non riuscite: mostra la percentuale di condizioni della regola che non sono state soddisfatte.
Rivedere la configurazione. Per assicurarsi che la regola sia configurata correttamente, è possibile verificarla prima di salvarla nel progetto. L'output del test della regola viene visualizzato direttamente e corrisponde a quanto configurato nelle impostazioni di output.
Per apportare modifiche alla configurazione, fare clic sull'icona Modifica sul riquadro e aggiornare le impostazioni. Una volta completata la revisione, fare clic su Crea. La regola e il relativo flusso DataStage vengono aggiunti al progetto. Il nome predefinito del flusso DataStage è
DataStage flow of data rule <rulename>
.
Se la tua regola è configurata correttamente senza alcuna informazione mancante, ha lo stato Pronto. Questo stato indica che la regola può essere eseguita. Lo stato della regola Non pronto indica che non è possibile eseguire la regola a causa di errori di sintassi SQL, di dipendenze modificate o di altri problemi di definizione della regola. Ad esempio, la parola d'ordine per accedere all'origine dati è stata modificata. È più probabile che questo stato venga visualizzato per le regole di qualità dei dati che sono state create utilizzando il sito IBM Knowledge Catalog API: Creare regola di qualità dei dati. Quando si creano regole di qualità dei dati utilizzando l'API, assicurarsi di verificare e convalidare anche la regola.
Per confermare che una regola è ancora valida prima di eseguirla manualmente, è possibile controllare lo stato della regola selezionando Convalida dal menu di overflow.
Ulteriori informazioni
Passi successivi
Argomento principale: Gestione delle regole di qualità dei dati