La tracciabilità dei dati è una mappa visiva che monitora l'intero ciclo di vita dei dati. Mostra la provenienza dei dati (l'origine), il percorso che seguono (le destinazioni) e tutte le modifiche o trasformazioni che vengono apportate durante il percorso.
Puoi visualizzare questa mappa completa del percorso dei tuoi dati direttamente nella consoleGoogle Cloud per gli asset creati in prodotti come Knowledge Catalog (in precedenza Dataplex Universal Catalog), BigQuery (incluse le tabelle esterne create per Iceberg REST Catalog) e Vertex AI. Poiché i workflow spesso si estendono su più regioni, Knowledge Catalog supporta la tracciabilità multiregionale, che fornisce una visione unificata del percorso dei dati nell'ecosistema Google Cloud globale. Gli utenti avanzati possono anche recuperare queste informazioni utilizzando l' API Data Lineage.
Perché è necessaria la derivazione dei dati
Le aziende moderne spostano e modificano costantemente grandi quantità di dati. Ad esempio, trasformando gli acquisti dei clienti non elaborati in report, dashboard e modelli di machine learning. Questa complessità crea sfide fondamentali per il tuo team:
Affidabilità e verifica. Gli utenti dei dati spesso faticano a confermare che i report e i numeri che vedono sono accurati e provengono da una fonte attendibile.
Risoluzione dei problemi. Quando in un report finale viene visualizzato un errore, i team di dati potrebbero trovare difficile e dispendioso in termini di tempo risalire al problema in ogni passaggio fino alla sua causa principale.
Gestione dei cambiamenti. Prima di modificare o eliminare un elemento di dati (ad esempio una colonna in una tabella), i team devono conoscere ogni singolo report o modello downstream che si basa su di esso per evitare di interrompere i sistemi critici.
Conformità. I leader devono avere visibilità su come vengono utilizzati i dati sensibili (ad esempio informazioni finanziarie o sui clienti) in tutta l'organizzazione per soddisfare i requisiti normativi.
La derivazione dei dati risolve questi problemi fornendo un percorso chiaro, visivo e documentato dei tuoi dati. In questo modo puoi comprendere le origini dati, tracciare gli errori, valutare l'impatto delle modifiche e mantenere la conformità.
Come funziona la tracciabilità dei dati
Il flusso di lavoro della derivazione dei dati include i seguenti passaggi:
Origini dati e importazione: le informazioni sulla derivazione delle origini dati avviano l'intero processo.
Google Cloud Servizi: quando l'API Data Lineage è abilitata, i servizi supportati come BigQuery e Dataflow segnalano automaticamente gli eventi di derivazione ogni volta che i dati vengono spostati o trasformati.
Origini personalizzate: per tutti i sistemi non supportati automaticamente dalle integrazioni diGoogle Cloud , puoi utilizzare l'API Data Lineage per registrare manualmente le informazioni sulla derivazione. Ti consigliamo di importare gli eventi formattati in base allo standard OpenLineage.
Piattaforma di tracciabilità: questa piattaforma centrale acquisisce, modella e archivia tutti i dati di tracciabilità.
API Data Lineage: questa API funge da unico punto di accesso per tutte le informazioni sulla derivazione in entrata. Utilizza un modello dei dati gerarchico composto da tre concetti fondamentali: processo, esecuzione ed evento.
Elaborazione e archiviazione: la piattaforma elabora i dati in entrata e li archivia in database affidabili e ottimizzati per le query.
Esperienza utente: puoi interagire con le informazioni sulla derivazione archiviate in due modi principali:
Esplorazione visiva: nella console Google Cloud , un servizio frontend recupera ed esegue il rendering dei dati di tracciabilità come grafico o elenco interattivo. Questa operazione è supportata per Knowledge Catalog, BigQuery, Lakehouse per Apache Iceberg (per le tabelle del catalogo REST Iceberg), livello fisico (Cloud Storage) e Vertex AI (per modelli, set di dati, tramite pipeline; e viste di feature store e gruppi di funzionalità). È ideale per esplorare visivamente il percorso dei dati.
Accesso programmatico: utilizzando un client API, puoi comunicare direttamente con l'API Data Lineage per automatizzare la gestione della derivazione. In questo modo puoi scrivere informazioni sulla derivazione da origini personalizzate. Consente inoltre di leggere ed eseguire query sui dati di derivazione archiviati per l'utilizzo in altre applicazioni o per la creazione di report personalizzati.
Quale metodo devo utilizzare per la derivazione dei dati?
Per eseguire ricerche immediate a un solo livello, utilizza il metodo SearchLinks. Per
creare un grafico della derivazione completo o eseguire un'analisi dell'impatto approfondita (fino a 100
livelli), utilizza il metodo SearchLineageStreaming.
A seconda del caso d'uso, seleziona il metodo più appropriato:
| Funzionalità | SearchLinks |
SearchLineageStreaming |
|---|---|---|
| Profondità | 1 livello (vicini immediati) | Fino a 100 livelli |
| Esecuzione | Sincrona | Flussi di dati in tempo reale |
| Caso d'uso | Ricerca semplice di fonti o target diretti | Creazione di un grafico di derivazione completo o esecuzione dell'analisi dell'impatto |
Identificare la direzione
- Upstream (origini):
- In
SearchLinks, imposta il campotargetsul nome di dominio completo della risorsa. - In
SearchLineageStreaming, impostadirectionsuUPSTREAM.
- In
- Downstream (Destinazioni):
- In
SearchLinks, imposta il camposourcesul nome di dominio completo della risorsa. - In
SearchLineageStreaming, impostadirectionsuDOWNSTREAM.
- In
Modello informativo della derivazione dei dati
La derivazione è un record dei dati trasformati dalle origini alle destinazioni. L'API Data Lineage raccoglie queste informazioni e le organizza in un modello dei dati gerarchico che utilizza i concetti di processi, esecuzioni ed eventi.
| Concetto | Descrizione |
|---|---|
| Procedura | Una definizione di trasformazione dei dati. |
| Corsa | L'esecuzione di un processo. |
| Evento | Un record del movimento dei dati durante un'esecuzione. |
Che cos'è un processo di derivazione?
Un processo è la definizione di un'operazione di trasformazione dei dati per un sistema specifico. Per la derivazione di BigQuery, un processo è un job di un tipo di job supportato. Tutte le esecuzioni della stessa query SQL sono collegate a un singolo processo, il che ti consente di monitorare ogni istanza in cui viene utilizzata una specifica logica di trasformazione.
Ad esempio, la seguente query SQL è un processo. Questa query crea una tabella contando il numero totale di viaggi per ciascun fornitore da due tabelle di origine.
CREATE TABLE `dataplex-docs.data_lineage_demo.total_green_trips_22_21`
AS
SELECT
vendor_id,
COUNT(*) AS number_of_trips
FROM
(
SELECT vendor_id
FROM `dataplex-docs.data_lineage_demo.nyc_green_trips_2022`
UNION ALL
SELECT vendor_id
FROM `dataplex-docs.data_lineage_demo.nyc_green_trips_2021`
)
GROUP BY
vendor_id;
Il formato del nome della risorsa REST per un processo è
projects/PROJECT_NUMBER/locations/LOCATION/processes/PROCESS_ID.
Ad esempio:
projects/123456789123/locations/us/processes/sh-0548bbf4ff3c8072a6c7372ba1acafb6
Per saperne di più sulla risorsa process, consulta il riferimento alla risorsa
Process.
Che cos'è un'esecuzione della derivazione?
Per esecuzione si intende la singola esecuzione di un processo. I processi possono avere più esecuzioni.
Ogni esecuzione è un'operazione unica caratterizzata da un startTime, un endTime e
uno stato finale, ad esempio COMPLETED, FAILED o ABORTED.
Ad esempio, l'esecuzione della query SQL dalla sezione Processo alle 9:00 crea un'esecuzione specifica. L'esecuzione della stessa query di nuovo alle 10:00 crea una nuova esecuzione distinta. Entrambe le esecuzioni sono collegate allo stesso processo principale.
Il formato del nome della risorsa REST per un'esecuzione mostra che è una risorsa secondaria di un processo:
projects/PROJECT_NUMBER/locations/LOCATION/processes/PROCESS_ID/runs/RUN_ID.
Ad esempio:
projects/123456789123/locations/us/processes/sh-0548bbf4ff3c8072a6c7372ba1acafb6/runs/83dd03a51cd2ac80f465c9e267a950b1
Per ulteriori informazioni sulla risorsa run, consulta il riferimento alla risorsa
Run.
Che cos'è un evento di derivazione?
Un evento rappresenta un momento nel tempo in cui una trasformazione dei dati sposta i dati tra un'entità di origine e una di destinazione. Un evento è un record granulare di un movimento di dati specifico che collega le tabelle di origine e di destinazione per una esecuzione specifica. Un evento può avere anche più origini e destinazioni.
Ad esempio, se l'esecuzione esegue la query SQL descritta nella sezione
Procedura, un evento di lineage registra che le tabelle di origine
nyc_green_trips_2021 e nyc_green_trips_2022 vengono utilizzate per creare la tabella di destinazione
total_green_trips_22_21.
Un evento di derivazione contiene un elenco di link che definiscono l'origine e la destinazione. Gli eventi vengono utilizzati per creare grafici di derivazione. Sebbene la Google Cloud console presenti questi grafici di derivazione, non mostra direttamente i singoli eventi. Puoi creare, leggere ed eliminare eventi, ma non aggiornarli utilizzando l'API Data Lineage.
Ogni collegamento all'interno di un evento definisce un singolo percorso di flusso di dati da un'entità di origine a un'entità di destinazione. Un'entità è un riferimento a un asset di dati, ad esempio una tabella BigQuery, ed è identificata dal suo nome completo (FQN). Un singolo evento può contenere più link, il che è comune in operazioni come i join di tabelle in cui più origini contribuiscono a una destinazione.
Per informazioni dettagliate su come gli eventi supportano la derivazione a livello di colonna, vedi Derivazione a livello di colonna.
Quali origini dati sono supportate per la derivazione dei dati?
Puoi compilare le informazioni sulla tracciabilità in Knowledge Catalog nei seguenti modi:
- Automaticamente dai servizi Google Cloud integrati
- Manualmente, utilizzando l'API Data Lineage per le origini personalizzate
- Importando eventi da OpenLineage
BigQuery
Quando abiliti la derivazione dei dati nel tuo progetto BigQuery, Knowledge Catalog registra automaticamente le informazioni sulla derivazione per:
Nuove tabelle create in seguito ai seguenti job BigQuery:
- Job di copia
- Carica job che utilizzano un URI Cloud Storage
- Job di query che utilizzano il seguente linguaggio di definizione dei dati (DDL) in GoogleSQL:
Tabelle esistenti quando utilizzi le seguenti istruzioni DML (Data Manipulation Language) in GoogleSQL:
SELECTin relazione a uno dei tipi di tabella elencati:INSERT SELECTMERGEUPDATEDELETE
I job di copia, query e caricamento di BigQuery sono rappresentati come processi.
Per visualizzare i dettagli del processo, nel grafico della derivazione, fai clic sull'icona Dettagli processo
.
Ogni processo contiene job_id BigQuery nell'elenco attributi per il job BigQuery più recente.
Altri servizi
La lineage dei dati supporta l'integrazione con i seguenti servizi Google Cloud :
-
Non puoi limitare il monitoraggio della derivazione solo a Cloud Data Fusion quando l'API Data Lineage è abilitata in un progetto.
-
Puoi acquisire eventi di derivazione con i job Dataflow e pubblicarli nell'API Data Lineage.
Lakehouse per le tabelle del catalogo REST Iceberg
Looker (Google Cloud core) (Anteprima)
È supportata la visualizzazione dei metadati di Looker (Google Cloud core) dalle origini BigQuery utilizzando la lineage dei dati. La lineage dei dati deve essere abilitata a livello di risorsa Looker (Google Cloud core) e a livello di servizio di lineage dei dati.
Managed Service per Apache Airflow
Managed Airflow utilizza il controllo di integrazione della lineage dei dati a livello di ambiente. La derivazione dei dati viene attivata automaticamente per tutti i nuovi ambienti Managed Airflow che soddisfano i requisiti. Per gli ambienti esistenti, utilizza le impostazioni dell'ambiente per attivare o disattivare l'integrazione della derivazione dei dati. Puoi configurare l'importazione della derivazione dei dati per Managed Airflow per attivare o disattivare l'importazione automatica della derivazione dei dati.
Managed Service for Apache Spark: cluster Apache Hive
Puoi acquisire eventi di derivazione con i job Hive di Managed Service for Apache Spark e pubblicarli nell'API Data Lineage. Puoi configurare l'importazione della lineage dei dati per Managed Service for Apache Spark per attivare o disattivare l'importazione automatica della lineage dei dati.
Managed Service for Apache Spark: cluster Apache Spark
Puoi acquisire eventi di derivazione con i job Spark di Managed Service for Apache Spark e pubblicarli nell'API Data Lineage. Puoi configurare l'importazione della lineage dei dati per Managed Service for Apache Spark per attivare o disattivare l'importazione automatica della lineage dei dati.
Managed Service for Apache Spark: deployment serverless
Puoi acquisire eventi di derivazione con i job serverless Managed Service for Apache Spark e pubblicarli nell'API Data Lineage. Puoi configurare l'importazione della lineage dei dati per Managed Service for Apache Spark per attivare o disattivare l'importazione automatica della lineage dei dati.
-
La derivazione dei dati tiene traccia dei metadati per le visualizzazioni dell'archivio delle caratteristiche e per i gruppi di caratteristiche.
-
La derivazione dei dati viene attivata automaticamente per le pipeline Vertex AI Pipelines, monitorando gli artefatti di input e i parametri di esecuzione (come modelli, set di dati e componenti), nonché gli asset derivati downstream.
Derivazione dei dati per le origini dati personalizzate
Puoi utilizzare l'API Data Lineage per registrare manualmente le informazioni sulla derivazione per qualsiasi origine dati non supportata dai sistemi integrati, ad esempio database esterni o pipeline on-premise. Knowledge Catalog
può creare grafici di derivazione per la derivazione registrata manualmente se utilizzi un
fullyQualifiedName
che corrisponde ai nomi completi delle voci esistenti di Knowledge Catalog. Se vuoi registrare la derivazione per un'origine dati personalizzata, devi prima
creare una voce
personalizzata.
Ogni processo per un'origine dati personalizzata può contenere una chiave sql nell'elenco degli attributi. Il valore di questa chiave viene utilizzato per visualizzare un'evidenziazione del codice nel riquadro dei dettagli del grafico di derivazione dei dati. L'istruzione SQL viene visualizzata così com'è stata fornita. Sei responsabile del filtraggio dei informazioni sensibili.
Il nome della chiave sql è sensibile alle maiuscole.
Ad esempio, un payload di risorse di processo con un attributo sql personalizzato:
{
"displayName": "custom-sql-query",
"attributes": {
"sql": "SELECT user_id, SUM(amount) FROM `project.dataset.purchases` GROUP BY user_id"
}
}
Per saperne di più, consulta Monitorare le informazioni sulla derivazione del sistema esterno.
OpenLineage
Se utilizzi già OpenLineage per raccogliere informazioni sulla derivazione da altre origini dati, puoi importare gli eventi OpenLineage in Knowledge Catalog e visualizzarli nella console Google Cloud . Per saperne di più, consulta Eseguire l'integrazione con OpenLineage.
Monitoraggio automatizzato della tracciabilità dei dati
Quando abiliti l'API Data Lineage, Google Cloud i sistemi che supportano la derivazione dei dati iniziano a segnalare il movimento dei dati. Ogni sistema integrato può inviare informazioni sulla derivazione per un intervallo diverso di origini dati.
Controllare l'importazione della derivazione
Per gestire i costi e le norme di governance, puoi attivare o disattivare la generazione della derivazione per servizi Google Cloud specifici. Puoi configurare questa importazione centralmente a livello di organizzazione, cartella e progetto. Durante l'anteprima, questa funzionalità supporta la configurazione dell'importazione della derivazione per Managed Service for Apache Spark, BigQuery e Managed Service for Apache Airflow.
Knowledge Catalog valuta la gerarchia delle risorse (progetto, poi cartelle, poi organizzazione) per determinare la configurazione effettiva. La prima configurazione impostata in modo esplicito a qualsiasi livello di questo attraversamento verso l'alto ha effetto.
- Se imposti una configurazione a livello di progetto, Knowledge Catalog la utilizza.
- Se non è impostata alcuna configurazione a livello di progetto, Knowledge Catalog utilizza la configurazione della cartella principale più vicina con una configurazione esplicita.
- Se non è impostata alcuna configurazione a livello di progetto o cartella, Knowledge Catalog utilizza la configurazione a livello di organizzazione.
- Se non viene impostata alcuna configurazione a nessuno di questi livelli, Knowledge Catalog utilizza il valore predefinito del sistema per l'integrazione. La configurazione predefinita per l'attivazione della tracciabilità può essere Attivata o Disattivata. Per Managed Service for Apache Spark, BigQuery e Managed Service for Apache Airflow, l'importazione della derivazione è attivata per impostazione predefinita quando l'API Data Lineage è attiva.
Ad esempio, considera un'organizzazione test-org con le seguenti
configurazioni della tracciabilità di Managed Service for Apache Spark:
- Organizzazione
test-org: abilitata- Cartella
folder-a: Disabilitata- Progetto
project-a: nessuna configurazione impostata
- Progetto
- Cartella
folder-b: Abilitato- Progetto
project-b: disabilitato
- Progetto
- Cartella
In questo scenario, sono applicabili le seguenti impostazioni:
- Per
project-a, l'importazione della derivazione è disattivata. Knowledge Catalog inizia la valutazione daproject-a, non trova alcuna configurazione, passa afolder-ae applica la configurazione Disattivato dafolder-a. - Per
project-b, l'importazione della derivazione è disattivata. Knowledge Catalog inizia la valutazione daproject-be applica la configurazione Disattivato, ignorando le impostazioni infolder-betest-org.
Il controllo della generazione dei dati di tracciabilità ti aiuta a gestire i costi e le norme di governance. Ad esempio, puoi disabilitare la raccolta della tracciabilità per i progetti di sviluppo o per i carichi di lavoro ad alto volume che non richiedono il monitoraggio della tracciabilità.
Per informazioni su come configurare e controllare l'importazione della derivazione, vedi Controllare l'importazione della derivazione per un servizio.
Derivazione dei dati multiregionale
La derivazione dei dati è un servizio intrinsecamente regionalizzato. I metadati di tracciabilità, inclusi link, processi ed eventi, vengono registrati in modo sicuro e isolati all'interno della posizione geografica specifica in cui si verifica la trasformazione dei dati o la modifica delle risorse sottostanti.
Man mano che le moderne architetture dati aziendali vengono scalate, i workflow delle pipeline spesso
superano i confini di progetti e regioni. Ad esempio, una pipeline di trasformazione BigQuery in esecuzione in us-central1 potrebbe leggere una tabella di origine in us-east1 e restituire metriche aggregate in un bucket Cloud Storage che si trova in europe-west1.
Per stabilire una visione completa e end-to-end del ciclo di vita dei dati in questi spazi geografici indipendenti, utilizza un metodo di ricerca della derivazione multiregionale.
Per saperne di più, consulta Informazioni sulla ricerca della derivazione multiregionale.
Considerazioni e limitazioni relative alla derivazione dei dati
Quando pianifichi la tua strategia di governance dei dati, tieni presente le seguenti integrazioni della lineage, i parametri di conformità e le limitazioni del servizio.
Controlli della derivazione a livello di prodotto
Quando l'API Data Lineage è abilitata, i sistemi supportati segnalano la derivazione in base ai controlli a livello di prodotto. Per un elenco completo dei sistemi supportati e dei relativi controlli, consulta Sistemi supportati per la derivazione dei dati.
Impatto sulla fatturazione
Oltre ai prezzi standard, tieni presente quanto segue:
- L'API Data Lineage viene eseguita in base al progetto. Esamina l'impatto della fatturazione prima di attivarla nei flussi di lavoro dei progetti con molti dati.
- Per BigQuery Omni, l'elaborazione della derivazione è distribuita in regioni specifiche e i costi dipendono dalle regioni in cui viene eseguita l'elaborazione.
Conformità della derivazione dei dati
- La derivazione dei dati registra i metadati relativi allo spostamento dei dati, ma non acquisisce i dati stessi. Consulta il modello di informazioni sulla derivazione dei dati e il riferimento all'API Data Lineage per informazioni dettagliate sui campi inclusi nei metadati.
- La derivazione dei dati nell'ambito di Knowledge Catalog offre il supporto di VPC-SC.
- Knowledge Catalog non offre la possibilità di utilizzare chiavi di crittografia gestite dal cliente (CMEK) per proteggere i metadati della derivazione raccolti.
Limitazioni della derivazione dei dati
La tracciabilità dei dati presenta le seguenti limitazioni:
Tutte le informazioni sulla tracciabilità vengono conservate nel sistema solo per 30 giorni.
Le informazioni sulla derivazione persistono dopo l'eliminazione dell'origine dati correlata. Ad esempio, se elimini una tabella BigQuery, puoi comunque visualizzarne la tracciabilità tramite l'API e la console per un massimo di 30 giorni.
La derivazione dei dati non registra automaticamente le informazioni sulla derivazione diretta per le routine BigQuery. Se una routine viene utilizzata in una query, la derivazione dei dati registra la derivazione tra le tabelle che la routine legge come dipendenze delle tabelle che la query scrive.
Quando selezioni un nodo nel grafico della derivazione, il riquadro laterale dei dettagli del nodo è vuoto nei seguenti casi:
- La risorsa si trova in un'altra organizzazione.
- L'utente non è membro dell'organizzazione che ospita la risorsa.
Limitazioni della derivazione a livello di colonna
La tracciabilità a livello di colonna presenta le seguenti limitazioni aggiuntive:
La derivazione a livello di colonna non viene raccolta per i job di caricamento di BigQuery o per le routine.
La derivazione a livello di colonna upstream non viene raccolta per le tabelle esterne.
La derivazione a livello di colonna non viene raccolta se un job crea più di 1500 collegamenti a livello di colonna. In questi casi, viene raccolta solo la tracciabilità a livello di tabella.
Il supporto della derivazione a livello di colonna è limitato alle colonne di primo livello nelle tabelle BigQuery. I campi nidificati all'interno di tipi complessi (come STRUCT o JSON) non sono supportati.
La funzionalità di ricerca con il parametro del campo funziona solo sui link che definiscono esplicitamente le relazioni tra colonne. Non restituisce risultati né attraversa i link definiti solo a livello di tabella. Non è supportata la ricerca tra i link a livello di tabella e quelli a livello di colonna (ad esempio, trovare tutte le colonne correlate a un link a livello di tabella o viceversa). L'API restituisce solo i link in cui sia l'origine che la destinazione specificano un campo.
Il supporto per le tabelle partizionate è limitato, perché le colonne di partizionamento come
_PARTITIONDATEe_PARTITIONTIMEnon vengono riconosciute nel grafico della derivazione.Limitazioni della console:
- L'attraversamento del grafico della derivazione è limitato a una profondità di 20 livelli e 10.000 link in ogni direzione.
Prezzi
Knowledge Catalog utilizza lo SKU di elaborazione premium per addebitare la tracciabilità dei dati. Per saperne di più, consulta i prezzi.
Per separare gli addebiti della derivazione dei dati da altri addebiti nello SKU di elaborazione premium di Knowledge Catalog, nel report di fatturazione Cloud, utilizza l'etichetta
goog-dataplex-workload-typecon il valoreLINEAGE.Se chiami l'API Data Lineage
OriginsourceTypecon un valore diverso daCUSTOM, ciò comporta costi aggiuntivi.
Passaggi successivi
Scopri come monitorare la derivazione dei dati per una tabella BigQuery copiare ed eseguire query sui job.
Scopri come utilizzare la derivazione dei dati con i sistemi Google Cloud.
Scopri di più sulle visualizzazioni della derivazione nella consoleGoogle Cloud .
Esplora l'API Data Lineage.
Per informazioni amministrative, vedi Considerazioni e limitazioni della lineage dei dati e registrazione degli audit della lineage dei dati.