Dati rilevati

Questa guida spiega come abilitare e utilizzare Dataplex Scoperta. Scansioni ed estrazioni del rilevamento i metadati dai dati di un data lake e li registra Dataproc Metastore, BigQuery e Data Catalog per come analisi, ricerca ed esplorazione.

Panoramica

Per ogni asset Dataplex con il rilevamento abilitato, Dataplex fa quanto segue:

  • Esegue la scansione dei dati associati all'asset.
  • Raggruppa i file strutturati e semistrutturati in tabelle.
  • Raccoglie metadati tecnici, come nome della tabella, schema e definizione della partizione.

Per i dati non strutturati, come immagini e video, Dataplex Discovery rileva e registra automaticamente i gruppi di file che condividono lo stesso tipo di media come set di file. Ad esempio, se gs://images/group1 contiene immagini GIF e gs://images/group2 contiene immagini JPEG, Dataplex Discovery rileva e registra due set di file. Per i dati strutturati, come Avro, Discovery rileva i file solo se si trovano in cartelle che contengono lo stesso formato dei dati e lo stesso schema.

Le tabelle e i set di file rilevati vengono registrati in Data Catalog per la ricerca e il rilevamento. Le tabelle vengono visualizzate in Dataproc Metastore come tabelle Hive e in BigQuery come tabelle esterne, in modo che i dati viene resa automaticamente disponibile per l'analisi.

Discovery supporta i seguenti modelli strutturati e semistrutturati formati dei dati:

Rilevamento supporta il seguente formato di compressione per dati strutturati e semistrutturati:

  • Compressione interna per i seguenti formati:

    Compressione Esempio di estensione del file Formato supportato
    gzip .gz.parquet Parquet
    lz4 .lz4.parquet Parquet
    Rapido .snappy.parquet Parquet, ORC, Avro
    lzo .lzo.parquet Parquet, ORC
  • Compressione esterna per file JSON e CSV:

    • gzip
    • bzip2

Configurazione rilevamento

La scoperta è attiva per impostazione predefinita quando crei una nuova zona o un nuovo asset. Puoi disattivare il rilevamento a livello di zona o di asset.

Quando crei una zona o un asset, puoi scegliere di ereditare Impostazioni di rilevamento a livello di zona o override Impostazioni di rilevamento a livello di asset.

Di seguito sono riportate le opzioni di configurazione di Discovery disponibili a livello di zona e asset:

  • Rilevamento attivo e disattivato.

  • Pianificazione della scoperta: questa opzione può essere impostata su una programmazione predefinita, ad esempio ogni ora o ogni giorno, oppure su una programmazione personalizzata definita in formato cron. I nuovi asset vengono analizzati quando vengono aggiunti. Per ulteriori informazioni, consulta la sezione Configurare le pianificazioni cron. Consigliato: pianifica la pubblicazione della campagna discovery ogni ora o meno frequentemente.

  • Pattern di inclusione o esclusione: definisci i file da includere o escludere Scansioni di scoperta, utilizzando i pattern glob nei tag di inclusione o escludi percorso. Ad esempio, se vuoi escludere gs://test_bucket/foo/.. da rilevamento, inserisci **/foo/* come percorso di esclusione. Le virgolette causano errori. Assicurati di inserire **/foo/* anziché "**/foo/*". Questa funzione è disponibile solo per gli asset Cloud Storage. Quando esistono contemporaneamente entrambi i pattern di inclusione ed esclusione, quelli di esclusione vengono applicati per primi.

  • Specifiche JSON o CSV: consente di fornire ulteriori informazioni. sui dati semistrutturati, come CSV e JSON, per migliorare l'accuratezza Risultati della scoperta.

    • Per i file CSV, puoi fornire una delle seguenti opzioni:

      • Delimitatore: questo campo accetta un carattere, ad eccezione di \r e \n. Se viene fornito più di un carattere, viene utilizzato solo il primo carattere della stringa. Se non viene specificato, Discovery utilizza una virgola come delimitatore.

      • Numero di righe di intestazione: questo campo accetta il valore 0 o 1. Il valore predefinito è 0. Quando il valore è 0, Discovery esegue l'inferenza dell'intestazione e, se viene rilevata un'intestazione, estrae i nomi delle colonne dall'intestazione e reimposta il valore su 1.

      • Codifica: questo campo accetta i nomi delle codifiche di stringa, ad esempio UTF-8, US-ASCII o ISO-8859-1. Se non viene specificato nulla, viene utilizzato UTF-8 come per impostazione predefinita.

      • Disattiva inferenza dei tipi: questo campo accetta un valore booleano. È è impostata su false per impostazione predefinita. Per i dati CSV, se disattivi l'inferenza del tipo, tutte le colonne vengono registrate come stringhe.

    • Per i file JSON, puoi fornire uno dei seguenti elementi:

      • Codifica: questo campo accetta i nomi delle codifiche di stringa, ad esempio UTF-8, US-ASCII o ISO-8859-1. Se non viene specificato nulla, viene utilizzato UTF-8 come predefinita.

      • Disabilita l'inferenza del tipo di dati: questo campo accetta un valore booleano. Per impostazione predefinita è impostato su false. Per i dati JSON, se disattivi l'inferenza del tipo, tutte le colonne vengono registrate come tipi primitivi (stringa, numero o booleano).

Pubblicare i metadati

Quando crei una zona di dati nel lake Dataplex, Dataplex crea un set di dati BigQuery nel progetto contenente il lake. Dataplex pubblica le tabelle in quel set di dati per le tabelle rilevate nei bucket Cloud Storage aggiunti all'account la zona dati come asset. Il set di dati è definito metadati pubblicazione di set di dati corrispondente alla zona.

Ogni zona di dati Dataplex viene mappata a un set di dati in BigQuery o a un database in Dataproc Metastore, dove le informazioni sui metadati vengono rese disponibili automaticamente.

Puoi modificare i metadati a rilevamento automatico come il nome della tabella o lo schema, utilizzando l'API dei metadati Dataplex.

Visualizza le tabelle e i set di file rilevati

Puoi cercare tabelle e set di file rilevati nella visualizzazione Cerca di Dataplex nella console Google Cloud.

Open Search

Per risultati di ricerca più precisi, usa filtri specifici di Dataplex, ad esempio nomi di lake e zone dati. I primi 50 elementi per facet sono visualizzato nell'elenco dei filtri. Puoi trovare eventuali altri elementi utilizzando la cassa di ricerca.

Ogni voce contiene metadati tecnici e operativi dettagliati.

Nella pagina dei dettagli della voce, puoi eseguire query sulla tabella in BigQuery e visualizzare i dettagli di registrazione di Dataproc Metastore corrispondenti.

Se una tabella Cloud Storage può essere pubblicata in BigQuery come tabella esterna, nella visualizzazione dei dettagli della voce puoi vedere quanto segue:

  • Riferimenti alle tabelle esterne BigQuery
  • Un pulsante Apri in BigQuery per iniziare ad analizzare i dati in BigQuery.

Le voci dei metadati Dataplex sono direttamente visibili e cercabili in Data Catalog. Per saperne di più, consulta la documentazione di riferimento sulla ricerca di Data Catalog.

Tutte le voci rilevate possono essere visualizzate tramite l'API di metadati Dataplex.

Azioni di rilevamento

Discovery genera le seguenti azioni di amministratore ogni volta che vengono rilevati problemi relativi ai dati durante le scansioni.

Formato dei dati non valido

Le azioni includono:

  • Formato dei dati incoerente in una tabella. Ad esempio, esistono file di formati diversi con lo stesso prefisso della tabella.

  • Formato dei dati non valido nelle zone selezionate (dati non in formato Avro, Parquet o ORC).

Schema non compatibile

Le azioni includono:

  • Uno schema rilevato dal rilevamento non è compatibile con schema di tabella attivo nell'API di metadati in Dataproc Metastore. Gli schemi A e B non sono compatibili se:

    • A e B condividono campi con lo stesso nome, ma di tipi di dati diversi e incompatibili. Ad esempio stringa e numero intero.

    • A e B non hanno campi sovrapposti.

    • A e B hanno almeno un campo non null non trovato nell'altro schema.

  • Deviazione dello schema rispetto a uno schema gestito dall'utente nella zona organizzata.

Definizione della partizione non valida

Le azioni includono:

  • Denominazione delle partizioni non coerente. Ad esempio: gs://sales_data/year=2020/month=10/day=01 e gs://sales_data/year=2020/region=us.

  • Denominazione delle partizioni in stile non Hive nella zona di dati selezionati. Per esempio, gs://sales_data/2020/10/01 invece di gs://sales_data/year=2020/month=10/day=01.

Dati mancanti

Le azioni includono:

  • Nella zona dei dati selezionati, i dati sottostanti di una tabella o di un set di file registrati non esistono più. In altre parole, è stata scoperta e registrata una tabella o un set di file di zone selezionate, ma in un secondo momento i dati sottostanti sono stati eliminati. Puoi risolvere il problema reintegrando i dati o eliminando la voce dei metadati.

Risolvi le azioni di rilevamento

I dati con azioni vengono controllati dalle successive scansioni di Discovery. Una volta risolto il problema che attiva l'azione, l'azione viene risolta automaticamente con la successiva scansione di rilevamento pianificata.

Altre azioni

Oltre alle azioni di rilevamento precedenti, in Dataplex sono disponibili altri tre tipi di azioni relative allo stato delle risorse e alla propagazione delle norme di sicurezza.

  • Risorsa mancante: non è stato trovato il bucket o il set di dati sottostante corrispondenti a una risorsa esistente.

  • Risorsa non autorizzata: Dataplex non dispone di risorse sufficienti. autorizzazioni per eseguire il rilevamento o applicare criteri di sicurezza al bucket o al set di dati gestito da Dataplex

  • Problemi di propagazione dei criteri di sicurezza: i criteri di sicurezza specificati per un determinato lake, una determinata zona o un determinato asset non sono stati propagati correttamente ai bucket o ai set di dati sottostanti. Mentre tutte le altre azioni si verificano a livello di asset, questo tipo di azione può essere attivato a livello di lago, zona e asset.

Questi tipi di azioni vengono risolti automaticamente quando la risorsa sottostante o che gli errori di configurazione della sicurezza vengano risolti.

Domande frequenti

Che cosa devo fare se lo schema dedotto da Discovery non è corretto?

Se lo schema dedotto è diverso da quello previsto per una determinata tabella, può sostituire lo schema dedotto aggiornando i metadati utilizzando API metadata di Google. Assicurati di impostare userManaged a true in modo che la modifica non venga sovrascritta nelle successive Scansioni di rilevamento.

Come faccio a escludere file da una ricerca di Discovery?

Per impostazione predefinita, Discovery esclude dalla scansione determinati tipi di file, tra cui:

  • _SUCCESS
  • _started
  • _committed
  • _metadata, _METADATA, _Metadata
  • _common_metadata, _COMMON_METADATA
  • File che iniziano con README o readme
  • Directory che iniziano con base_, delta_, delete_delta_, bucket_, followed by a number
  • Directory che iniziano con .

Puoi specificare altri pattern di inclusione o esclusione utilizzando la configurazione di Discovery a livello di zona o asset oppure l'API di metadati.

Cosa devo fare se il raggruppamento delle tabelle rilevato da Discovery è troppo granulare?

Se le tabelle rilevate da Discovery sono a un livello più granulare rispetto al percorso principale della tabella, ad esempio ogni singola partizione è registrata come tabella, i motivi potrebbero essere diversi:

  • Ci sono differenze di formato, ad esempio un mix di file Avro e Parquet, in il percorso principale previsto della tabella, che divide la tabella in raggruppamenti più piccoli.

  • Esistono diversi tipi di incompatibilità dello schema nel percorso della radice della tabella previsto, che suddividono la tabella in raggruppamenti più piccoli.

Puoi risolvere il problema in uno dei seguenti modi:

  • Correggi le differenze di formato o schema in modo che tutti i file nello stesso percorso della radice della tabella abbiano un formato coerente e uno schema compatibile.

  • Escludi i file eterogenei utilizzando la configurazione del pattern di esclusione nell'ambito della configurazione della zona/della risorsa o dell'API di metadati.

Dopo aver eseguito uno dei passaggi correttivi, nella successiva scansione del rilevamento si verifica quanto segue:

  • Le tabelle di livello inferiore esistenti vengono rimosse automaticamente l'API dei metadati Dataplex, BigQuery, Dataproc Metastore e Data Catalog.
  • Viene invece creata una nuova tabella di livello superiore con il percorso principale previsto della tabella.

Come si specificano i nomi delle tabelle?

Puoi specificare i nomi delle tabelle utilizzando l'API di metadati.

Che cosa succede se creo manualmente le tabelle in Dataproc Metastore o BigQuery?

Se il rilevamento è abilitato per un determinato asset, non è necessario registrare manualmente le voci in Dataproc Metastore in BigQuery.

Puoi definire manualmente il nome della tabella, lo schema e le definizioni delle partizioni, disattivando al contempo Dataplex Discovery. In alternativa, esegui queste operazioni:

  1. Crea una tabella specificando solo le informazioni richieste, ad esempio il percorso radice della tabella.
  2. Usa Dataplex Discovery per completare il resto i metadati, ad esempio le definizioni di schema e partizione.
  3. Mantieni aggiornati i metadati.

Cosa devo fare se la mia tabella non viene visualizzata in BigQuery?

Sebbene tutti i metadati di Dataplex siano registrati centralmente nell'API dei metadati, solo le tabelle Cloud Storage compatibili con BigQuery vengono pubblicate in BigQuery come tabelle esterne. Nell'ambito dei dettagli delle voci di tabella nell'API di metadati, puoi trovare un indicatore di compatibilità BigQuery che indica quali entità vengono pubblicate in BigQuery e perché.

Passaggi successivi