Esplorare, apprendere, creare e usare le regole di qualità dei dati
La qualità dei dati è la misurazione dell'integrità dei dati in un'organizzazione e viene valutata usando i punteggi di qualità dei dati. Punteggi generati in base alla valutazione dei dati rispetto alle regole definite nel Microsoft Purview Data Catalog.
Le regole di qualità dei dati sono linee guida essenziali che le organizzazioni stabiliscono per garantire l'accuratezza, la coerenza e la completezza dei dati. Queste regole consentono di mantenere l'integrità e l'affidabilità dei dati.
Ecco alcuni aspetti chiave delle regole di qualità dei dati:
Accuratezza : i dati devono rappresentare in modo accurato le entità reali. Il contesto è importante. Ad esempio, se si archiviano gli indirizzi dei clienti, assicurarsi che corrispondano alle posizioni effettive.
Completezza : l'obiettivo di questa regola è identificare i dati vuoti, Null o mancanti. Questa regola convalida che tutti i valori siano presenti (anche se non necessariamente corretti).
Conformità : questa regola garantisce che i dati seguano gli standard di formattazione dei dati, ad esempio la rappresentazione di date, indirizzi e valori consentiti.
Coerenza : questa regola verifica che valori diversi dello stesso record siano conformi a una determinata regola e che non vi siano contraddizioni. La coerenza dei dati garantisce che le stesse informazioni siano rappresentate in modo uniforme tra record diversi. Ad esempio, se si dispone di un catalogo prodotti, i nomi e le descrizioni dei prodotti coerenti sono fondamentali.
Sequenze temporali : questa regola mira a garantire che i dati siano accessibili nel minor tempo possibile. Garantisce che i dati siano aggiornati.
Univocità : questa regola verifica che i valori non siano duplicati, ad esempio se è previsto un solo record per cliente, non sono presenti più record per lo stesso cliente. Ogni cliente, prodotto o transazione deve avere un identificatore univoco.
Ciclo di vita della qualità dei dati
La creazione di regole di qualità dei dati è il sesto passaggio del ciclo di vita della qualità dei dati. I passaggi precedenti sono:
- Assegnare agli utenti le autorizzazioni di amministratore della qualità dei dati nel catalogo dati per usare tutte le funzionalità di qualità dei dati.
- Registrare ed analizzare un'origine dati nel Microsoft Purview Data Map.
- Aggiungere l'asset di dati a un prodotto dati
- Configurare una connessione all'origine dati per preparare l'origine per la valutazione della qualità dei dati.
- Configurare ed eseguire la profilatura dei dati per un asset nell'origine dati.
Ruoli obbligatori
- Per creare e gestire le regole di qualità dei dati, gli utenti devono avere il ruolo di amministratore della qualità dei dati.
- Per visualizzare le regole di qualità esistenti, gli utenti devono avere il ruolo di lettore di qualità dei dati.
Visualizzare le regole di qualità dei dati esistenti
In Microsoft Purview Data Catalog selezionare il menu Gestione integrità e il sottomenu Data quality .from Microsoft Purview Data Catalog, select the Health Management menu and Data quality submenu.
Nel sottomenu Data Quality selezionare un dominio di governance.
Selezionare un prodotto dati.
Selezionare un asset di dati dall'elenco di asset del prodotto dati selezionato.
Selezionare la scheda del menu Regole per visualizzare le regole esistenti applicate all'asset.
Selezionare una regola per esplorare la cronologia delle prestazioni della regola applicata all'asset di dati selezionato.
Regole di qualità dei dati disponibili
Qualità dei dati di Microsoft Purview abilita la configurazione delle regole seguenti, queste sono regole predefinite che offrono un codice basso per misurare la qualità dei dati senza codice.
Regola | Definizione |
---|---|
Freschezza | Conferma che tutti i valori sono aggiornati. |
Valori univoci. | Conferma che i valori in una colonna sono univoci. |
Corrispondenza del formato stringa | Conferma che i valori di una colonna corrispondono a un formato specifico o ad altri criteri. |
Corrispondenza del tipo di dati | Conferma che i valori in una colonna corrispondono ai requisiti relativi al tipo di dati. |
Righe duplicate | Verifica la presenza di righe duplicate con gli stessi valori in due o più colonne. |
Campi vuoti/vuoti | Cerca campi vuoti e vuoti in una colonna in cui devono essere presenti valori. |
Ricerca tabella | Conferma che è possibile trovare un valore in una tabella nella colonna specifica di un'altra tabella. |
Personalizzato | Creare una regola personalizzata con il generatore di espressioni visive. |
Freschezza
Lo scopo della regola di aggiornamento è determinare se l'asset è stato aggiornato entro il tempo previsto. Microsoft Purview supporta attualmente il controllo dell'aggiornamento esaminando le date dell'ultima modifica.
Nota
Il punteggio per la regola di aggiornamento è 100 (è stato superato) o 0 (non è riuscito).
Valori univoci.
La regola Valori univoci indica che tutti i valori nella colonna specificata devono essere univoci. Tutti i valori univoci 'pass' e quelli che non vengono considerati come non riusciti. Se la regola Campi vuoti/vuoti non è definita nella colonna, i valori Null/vuoti verranno ignorati ai fini di questa regola.
Corrispondenza del formato stringa
La regola Di corrispondenza formato controlla se tutti i valori nella colonna sono validi. Se la regola Campi vuoti/vuoti non è definita in una colonna, i valori Null/vuoti verranno ignorati ai fini di questa regola.
Questa regola può convalidare ogni valore nella colonna usando tre approcci diversi:
Enumerazione : elenco di valori delimitato da virgole. Se il valore valutato non può essere confrontato con uno dei valori elencati, il controllo non riesce. Le virgole e le barre rovesciate possono essere precedute da caratteri di escape usando una barra rovesciata:
\
. Contiene quindia \, b, c
due valori, il primo èa , b
e il secondo èc
.Modello simile -
like(<string> : string, <pattern match> : string) => boolean
Il modello è una stringa con corrispondenza letterale. Le eccezioni sono i simboli speciali seguenti: _ corrisponde a qualsiasi carattere nell'input (simile a . nelleposix
espressioni regolari) % corrisponde a zero o più caratteri nell'input (simili a .* nelleposix
espressioni regolari). Il carattere di escape è ''. Se un carattere di escape precede un simbolo speciale o un altro carattere di escape, viene trovata una corrispondenza letterale con il carattere seguente. Non è valido eseguire l'escape di qualsiasi altro carattere.like('icecream', 'ice%') -> true
Espressione regolare :
regexMatch(<string> : string, <regex to match> : string) => boolean
Controlla se la stringa corrisponde al modello regex specificato. Usare<regex>
(virgolette indietro) per trovare la corrispondenza con una stringa senza escape.regexMatch('200.50', '(\\d+).(\\d+)') -> true
regexMatch('200.50', `(\d+).(\d+)`) -> true
Corrispondenza del tipo di dati
La regola corrispondenza tipo di dati specifica il tipo di dati che la colonna associata deve contenere. Poiché il motore delle regole deve essere eseguito in molte origini dati diverse, non può usare tipi nativi come BIGINT o VARCHAR. Ha invece un proprio sistema di tipi in cui converte i tipi nativi. Questa regola indica al motore di analisi della qualità in quali tipi predefiniti deve essere convertito il tipo nativo. Il sistema dei tipi di dati viene tratto dal sistema di tipo Flusso di dati di Azure usato in Azure Data Factory.
Durante un'analisi della qualità, tutti i tipi nativi verranno testati in base al tipo di corrispondenza del tipo di dati e, se non è possibile convertire il tipo nativo nel tipo di corrispondenza del tipo di dati, tale riga verrà considerata come un errore.
Righe duplicate
La regola Righe duplicate controlla se la combinazione dei valori nella colonna è univoca per ogni riga della tabella.
Nell'esempio seguente si prevede che la concatenazione di _CompanyName, CustomerID, EmailAddress, FirstName e LastName produrrà un valore univoco per tutte le righe della tabella.
Ogni asset può avere zero o un'istanza di questa regola.
Campi vuoti/vuoti
La regola Campi vuoti/vuoti afferma che le colonne identificate non devono contenere valori Null e, nel caso specifico delle stringhe, non devono contenere valori solo vuoti o spazi vuoti. Durante un'analisi della qualità, qualsiasi valore in questa colonna che non è Null verrà considerato corretto. Questa regola influirà su altre regole, ad esempio i valori univoci o le regole di corrispondenza formato . Se questa regola non è definita in una colonna, tali regole quando vengono eseguite in tale colonna ignoreranno automaticamente tutti i valori Null. Se questa regola è definita in una colonna, tali regole esamineranno i valori Null/vuoti in tale colonna e li considereranno a scopo di punteggio.
Ricerca tabella
La regola di ricerca tabella esaminerà ogni valore nella colonna in cui è definita la regola e lo confronta con una tabella di riferimento. Ad esempio, la tabella primaria ha una colonna denominata "location" che contiene città, stati e codici postali nel formato "city, state zip". È disponibile una tabella di riferimento, denominata citystate, che contiene tutte le combinazioni legali di città, stati e codici postali supportati nella Stati Uniti. L'obiettivo è confrontare tutte le posizioni nella colonna corrente con l'elenco di riferimento per assicurarsi che vengano usate solo combinazioni legali.
A tale scopo, digitare innanzitutto il nome di citystatezip nella finestra di dialogo degli asset di ricerca. Selezionare quindi l'asset desiderato e quindi la colonna con cui si vuole eseguire il confronto.
Regole personalizzate
La regola personalizzata consente di specificare regole che provano a convalidare le righe in base a uno o più valori in tale riga. La regola personalizzata è composta da due parti:
- La prima parte è l'espressione di filtrofacoltativa e attivata selezionando la casella di controllo "Usa espressione filtro". Espressione che restituisce un valore booleano. L'espressione di filtro verrà applicata a una riga e se restituisce true, tale riga verrà considerata per la regola. Se l'espressione di filtro restituisce false per tale riga, significa che la riga verrà ignorata ai fini di questa regola. Il comportamento predefinito dell'espressione di filtro consiste nel passare tutte le righe, quindi se non viene specificata alcuna espressione di filtro e una non è necessaria, verranno considerate tutte le righe.
- La seconda parte è l'espressione di riga. Si tratta di un'espressione booleana applicata a ogni riga che viene approvata dall'espressione di filtro. Se questa espressione restituisce true, la riga passa, se false, viene contrassegnata come esito negativo.
Esempi di regole personalizzate
Scenario | Espressione di riga |
---|---|
Verificare se state_id è uguale alla California e aba_Routing_Number corrisponde a un determinato modello regex e la data di nascita rientra in un determinato intervallo | state_id=='California' && regexMatch(toString(aba_Routing_Number), '^((0[0-9])|(1[0-2])|(2[1-9])|(3[0-2])|(6[1-9])|(7[0-2])|80)([0-9]{7})$') && between(dateOfBirth,toDate('1968-12-13'),toDate('2020-12-13'))==true() |
Verificare se VendorID è uguale a 124 | {VendorID}=='124' |
Controllare se fare_amount è uguale o maggiore di 100 | {fare_amount} >= "100" |
Verificare se fare_amount è maggiore di 100 e tolls_amount non è uguale a 100 | {fare_amount} >= "100" || {tolls_amount} != "400" |
Controllare se Rating è minore di 5 | Rating < 5 |
Verificare se il numero di cifre nell'anno è 4 | length(toString(year)) == 4 |
Confrontare due colonne bbToLoanRatio e bankBalance per verificare se i valori sono uguali | compare(variance(toLong(bbToLoanRatio)),variance(toLong(bankBalance)))<0 |
Controllare se il numero di caratteri tagliati e concatenati in firstName, lastName, LoanID, uuid è maggiore di 20 | length(trim(concat(firstName,lastName,LoanID,uuid())))>20 |
Verificare se aba_Routing_Number corrisponde a un determinato modello regex e la data di transazione iniziale è maggiore di 2022-11-12 e Disallow-Listed è false e la media bankBalance è maggiore di 50000 e state_id è uguale a 'Massachuse', 'Tennessee', 'North Dakota' o 'Albama' | regexMatch(toString(aba_Routing_Number), '^((0[0-9])|(1[0-2])|(2[1-9])|(3[0-2])|(6[1-9])|(7[0-2])|80)([0-9]{7})$') && toDate(addDays(toTimestamp(initialTransaction, 'yyyy-MM-dd\'T\'HH:mm:ss'),15))>toDate('2022-11-12') && ({Disallow-Listed}=='false') && avg(toLong(bankBalance))>50000 && (state_id=='Massachuse' || state_id=='Tennessee ' || state_id=='North Dakota' || state_id=='Albama') |
Verificare se aba_Routing_Number corrisponde a un determinato modello regex e dateOfBirth è compreso tra il 1968-12-13 e il 2020-12-13 | regexMatch(toString(aba_Routing_Number), '^((0[0-9])|(1[0-2])|(2[1-9])|(3[0-2])|(6[1-9])|(7[0-2])|80)([0-9]{7})$') && between(dateOfBirth,toDate('1968-12-13'),toDate('2020-12-13'))==true() |
Controllare se il numero di valori univoci in aba_Routing_Number è uguale a 1.000.000 e il numero di valori univoci in EMAIL_ADDR è uguale a 1.000.000 | approxDistinctCount({aba_Routing_Number})==1000000 && approxDistinctCount({EMAIL_ADDR})==1000000 |
Sia l'espressione di filtro che l'espressione di riga vengono definite usando il linguaggio dell'espressione Azure Data Factory introdotto qui con il linguaggio definito qui. Si noti, tuttavia, che non sono disponibili tutte le funzioni definite per il linguaggio di espressione ADF generico. L'elenco completo delle funzioni disponibili è disponibile nell'elenco Funzioni disponibile nella finestra di dialogo dell'espressione. Le funzioni seguenti definite in qui non sono supportate: isDelete, isError, isIgnore, isInsert, isMatch, isUpdate, isUpsert, partitionId, ricerca memorizzata nella cache e funzioni Window.
Nota
<regex>
(backquote) può essere usato nelle espressioni regolari incluse nelle regole personalizzate per trovare la corrispondenza con la stringa senza eseguire l'escape di caratteri speciali. Il linguaggio delle espressioni regolari è basato su Java e funziona come indicato qui.
Questa pagina identifica i caratteri che devono essere preceduti da caratteri di escape.
Regole generate automaticamente assistite dall'intelligenza artificiale
La generazione automatica di regole assistita dall'intelligenza artificiale per la misurazione della qualità dei dati prevede l'uso di tecniche di intelligenza artificiale (IA) per creare automaticamente regole per la valutazione e il miglioramento della qualità dei dati. Le regole generate automaticamente sono specifiche del contenuto. La maggior parte delle regole comuni verrà generata automaticamente in modo che gli utenti non debbano fare tutto il possibile per creare regole personalizzate.
Per esplorare e applicare le regole generate automaticamente:
- Selezionare Suggerisci regole nella pagina delle regole.
- Esplorare l'elenco delle regole suggerite.
- Selezionare le regole dall'elenco di regole suggerite da applicare all'asset di dati.
Passaggi successivi
- Configurare ed eseguire un'analisi della qualità dei dati in un prodotto dati per valutare la qualità di tutti gli asset supportati nel prodotto dati.
- Esaminare i risultati dell'analisi per valutare la qualità dei dati corrente del prodotto dati.