Esegui query su dati esterni con Data Catalog
Oracle Cloud Infrastructure Data Catalog è il servizio di gestione dei metadati per Oracle Cloud che ti aiuta a scoprire i dati e a supportare la governance dei dati. Fornisce un inventario di asset, un glossario aziendale e un metastore comune per i data lake.
Autonomous Database può sfruttare questi metadati per semplificare notevolmente la gestione e accedere all'area di memorizzazione degli oggetti del data lake. Anziché definire manualmente le tabelle esterne per accedere al data lake, utilizzare le tabelle esterne definite e gestite automaticamente. Queste tabelle verranno trovate negli schemi protetti di Autonomous Database che vengono mantenuti aggiornati con le modifiche in Data Catalog.
Per ulteriori informazioni su Data Catalog, consulta la documentazione di Data Catalog.
- Informazioni sull'esecuzione di query con Data Catalog
Grazie alla sincronizzazione con i metadati del Data Catalog, Autonomous Database crea automaticamente tabelle esterne per ogni entità logica raccolta da Data Catalog. Queste tabelle esterne vengono definite negli schemi di database completamente gestiti dal processo di sincronizzazione dei metadati. Gli utenti possono eseguire immediatamente query sui dati senza dover derivare manualmente lo schema (colonne e tipi di dati) per le origini dati esterne e creare manualmente tabelle esterne. - Concetti correlati all'esecuzione di query con Data Catalog
Per eseguire query con Data Catalog è necessaria una comprensione dei concetti riportati di seguito. - Mapping sincronizzazione
Il processo di sincronizzazione crea e aggiorna gli schemi e le tabelle esterne di Autonomous Database in base agli asset dati, alle cartelle, alle entità logiche, agli attributi e alle sostituzioni personalizzate pertinenti di Data Catalog. - Flusso di lavoro tipico con Data Catalog
È disponibile un flusso di lavoro tipico delle azioni eseguite dagli utenti che desiderano eseguire query con Data Catalog. - Esempio: MovieStream Scenario
In questo scenario, Moviestream sta acquisendo i dati in una zona di destinazione nello storage degli oggetti. Gran parte di questi dati, ma non necessariamente tutti, viene quindi utilizzato per alimentare un Autonomous Database. Prima di alimentare Autonomous Database, i dati vengono trasformati, puliti e successivamente memorizzati nell'area "gold". - Esempio: scenario dati partizionati
Questo scenario illustra come creare tabelle esterne in Autonomous Database basate sulle entità logiche di Data Catalog raccolte dai dati partizionati nell'area di memorizzazione degli oggetti.
Argomento padre: eseguire query sui dati esterni con Autonomous Database
Informazioni sull'interrogazione con Data Catalog
Grazie alla sincronizzazione con i metadati del Data Catalog, Autonomous Database crea automaticamente tabelle esterne per ogni entità logica raccolta da Data Catalog. Queste tabelle esterne vengono definite negli schemi di database completamente gestiti dal processo di sincronizzazione dei metadati. Gli utenti possono eseguire immediatamente query sui dati senza dover derivare manualmente lo schema (colonne e tipi di dati) per le origini dati esterne e creare manualmente tabelle esterne.
La sincronizzazione è dinamica e mantiene l'Autonomous Database aggiornato rispetto alle modifiche ai dati di base, riducendo i costi di amministrazione in quanto mantiene automaticamente centinaia o migliaia di tabelle. Inoltre, consente a più istanze di Autonomous Database di condividere lo stesso Data Catalog, riducendo ulteriormente i costi di gestione e fornendo un set comune di definizioni aziendali.
Le cartelle/bucket di Data Catalog sono contenitori sincronizzati con gli schemi di Autonomous Database. Le entità logiche all'interno di tali cartelle/bucket vengono mappate alle tabelle esterne di Autonomous Database. Questi schemi e tabelle esterne vengono generati e gestiti automaticamente tramite il processo di sincronizzazione:
- Le cartelle/bucket vengono mappate agli schemi di database solo a scopo organizzativo.
- L'organizzazione ha lo scopo di essere coerente con il data lake e ridurre al minimo la confusione quando si accede ai dati attraverso percorsi diversi.
- Data Catalog è l'origine della verità per le tabelle contenute negli schemi. Le modifiche apportate nel Data Catalog aggiornano le tabelle dello schema durante una sincronizzazione successiva.
Per utilizzare questa funzionalità, un amministratore di Database Data Catalog avvia una connessione a un'istanza di Data Catalog, seleziona gli asset dati e le entità logiche da sincronizzare ed esegue la sincronizzazione. Il processo di sincronizzazione crea schemi e tabelle esterne in base agli asset dati raccolti in Data Catalog e alle entità logiche selezionate. Non appena vengono create le tabelle esterne, gli analisti dati possono avviare l'esecuzione di query sui dati senza dover derivare manualmente lo schema per le origini dati esterne e creare tabelle esterne.
Il package
DBMS_DCAT
è disponibile per l'esecuzione dei task necessari per eseguire query sugli asset dati dell'area di memorizzazione degli oggetti Data Catalog. Vedere DBMS_DCAT Package.
Argomento padre: eseguire query sui dati esterni con Data Catalog
Concetti correlati all'esecuzione di query con Data Catalog
Per eseguire query con Data Catalog è necessaria una descrizione dei concetti riportati di seguito.
- Catalogo dati
-
Data Catalog raccoglie gli asset dati che puntano alle origini dati dell'area di memorizzazione degli oggetti su cui si desidera eseguire query con Autonomous Database. In Data Catalog è possibile specificare la modalità di organizzazione dei dati durante la raccolta, supportando diversi pattern di organizzazione dei file. Nell'ambito del processo di raccolta di Data Catalog, è possibile selezionare i bucket e i file che si desidera gestire all'interno dell'asset. Per ulteriori informazioni, vedere Panoramica di Data Catalog.
- Aree di memorizzazione degli oggetti
-
I negozi oggetti dispongono di bucket che contengono una vasta gamma di oggetti. Alcuni tipi comuni di oggetti trovati in questi bucket includono: file CSV, parquet, avro, json e ORC. I bucket in genere hanno una struttura o un motivo di progettazione per gli oggetti che contengono. Esistono molti modi diversi per strutturare i dati e molti modi diversi di interpretare questi modelli.
Ad esempio, un pattern di progettazione tipico utilizza cartelle di livello superiore che rappresentano le tabelle. I file all'interno di una determinata cartella condividono lo stesso schema e contengono dati per tale tabella. Le sottocartelle vengono spesso utilizzate per rappresentare le partizioni di tabella (ad esempio, una sottocartella per ogni giorno). Data Catalog fa riferimento a ogni cartella di livello superiore come entità logica e questa entità logica viene mappata a una tabella esterna di Autonomous Database.
- Connessione
-
Una connessione è una connessione di Autonomous Database a un'istanza di Data Catalog. Per ogni istanza di Autonomous Database possono esistere connessioni a più istanze di Data Catalog. Le credenziali di Autonomous Database devono disporre dei diritti per accedere agli asset di Data Catalog raccolti dallo storage degli oggetti.
- Raccolta
-
Processo di Data Catalog che analizza lo storage degli oggetti e genera le entità logiche dai data set.
- Data Asset
-
Un asset dati in Data Catalog rappresenta un'origine dati che include database, storage degli oggetti Oracle, Kafka e altro ancora. Autonomous Database utilizza gli asset dello storage degli oggetti Oracle per la sincronizzazione dei metadati.
- Entità dati
-
Per entità dati in Data Catalog si intende una raccolta di dati, ad esempio una tabella o una vista di database, o un singolo file e in genere dispone di molti attributi che ne descrivono i dati.
- Entità logica
-
In Data Lakes, numerosi file in genere comprendono una singola entità logica. Ad esempio, è possibile disporre di file clickstream giornalieri che condividono lo stesso schema e lo stesso tipo di file.
Un'entità logica di Data Catalog è un gruppo di file di storage degli oggetti che vengono derivati durante la raccolta applicando pattern di nomi file creati e assegnati a un asset dati.
- oggetto dati
-
Un oggetto dati in Data Catalog si riferisce agli asset dati e alle entità dati.
- Pattern di nomi file
-
In un data lake, i dati possono essere organizzati in modi diversi. In genere, le cartelle acquisiscono file dello stesso schema e tipo. È necessario registrarsi al Data Catalog per la modalità di organizzazione dei dati. I pattern di nomi file vengono utilizzati per identificare la modalità di organizzazione dei dati. In Data Catalog è possibile definire pattern di nomi file utilizzando espressioni regolari. Quando Data Catalog raccoglie un asset dati con un pattern di nomi file assegnato, le entità logiche vengono create in base al pattern di nomi file. Definendo e assegnando questi pattern agli asset dati, è possibile raggruppare più file come entità logiche in base al pattern di nomi file.
- Sincronizzazione (sincronizzazione)
-
Autonomous Database esegue le sincronizzazioni con Data Catalog per mantenere automaticamente aggiornato il proprio database rispetto alle modifiche ai dati di base. La sincronizzazione può essere eseguita manualmente o in base a una pianificazione.
Il processo di sincronizzazione crea schemi e tabelle esterne in base agli asset dati di Data Catalog e alle entità logiche. Questi schemi sono protetti, ovvero i relativi metadati sono gestiti da Data Catalog. Se si desidera modificare i metadati, è necessario apportare le modifiche in Data Catalog. Gli schemi di Autonomous Database rifletteranno eventuali modifiche dopo l'esecuzione della sincronizzazione successiva. Per ulteriori dettagli, vedere Mapping di sincronizzazione.
Argomento padre: eseguire query sui dati esterni con Data Catalog
Mapping sincronizzazione
Il processo di sincronizzazione crea e aggiorna gli schemi e le tabelle esterne di Autonomous Database in base agli asset dati, alle cartelle, alle entità logiche, agli attributi e alle sostituzioni personalizzate pertinenti di Data Catalog.
Data Catalog | Autonomous Database | Descrizione mapping |
---|---|---|
Asset e cartella dati (bucket di storage degli oggetti) |
Nome schema |
Valori predefiniti: Per impostazione predefinita, il nome dello schema generato in Autonomous Database ha il formato seguente:
Personalizzazioni: È possibile personalizzare i valori predefinitidata-asset-name e folder-name definendo proprietà personalizzate, nomi business e nomi visualizzati per sostituire questi nomi predefiniti.
Esempi:
|
Entità logica | Tabella esterna |
Le entità logiche sono mappate a tabelle esterne. Se l'entità logica dispone di un attributo partizionato, viene mappata a una tabella esterna partizionata. Il nome della tabella esterna deriva dal nome visualizzato o dal nome attività dell'entità logica corrispondente. Se è impostato Ad esempio, se |
Attributi dell'entità logica | Colonne tabella esterna |
Nomi delle colonne: i nomi delle colonne delle tabelle esterne derivano dai nomi visualizzati degli attributi dell'entità logica corrispondente o dai nomi business. Per le entità logiche derivate dai file Parquet, Avro e ORC, il nome della colonna è sempre il nome visualizzato dell'attributo in quanto rappresenta il nome del campo derivato dai file di origine. Per gli attributi corrispondenti a un'entità logica derivata da file CSV, per generare il nome della colonna vengono utilizzati i seguenti campi attributo in ordine di precedenza:
Tipo di colonna: la proprietà personalizzata Per gli attributi corrispondenti a un'entità logica derivata dai file Avro con tipi di dati Lunghezza colonna: la proprietà personalizzata Precisione colonna: la proprietà personalizzata Per gli attributi corrispondenti a un'entità logica derivata dai file Avro con tipi di dati Scala colonna: la proprietà personalizzata |
Argomento padre: eseguire query sui dati esterni con Data Catalog
Workflow standard con Data Catalog
Esiste un flusso di lavoro tipico delle azioni eseguite dagli utenti che desiderano eseguire query con Data Catalog.
L'amministratore delle query di Database Data Catalog o l'amministratore del database concede l'accesso READ alle tabelle esterne generate in modo che gli analisti dei dati e altri utenti del database possano sfogliare ed eseguire query sulle tabelle esterne.
La tabella seguente descrive ogni azione in dettaglio. Per una descrizione dei diversi tipi di utente inclusi in questa tabella, vedere Utenti e ruoli del Data Catalog.
Il package
DBMS_DCAT
è disponibile per l'esecuzione dei task necessari per eseguire query sugli asset dati dell'area di memorizzazione degli oggetti Data Catalog. Vedere DBMS_DCAT Package.
Azione | Chi è l'utente | descrizione; |
---|---|---|
Creare i criteri |
Amministratore Database Data Catalog |
Il principal della risorsa Autonomous Database o la credenziale utente di Autonomous Database devono disporre delle autorizzazioni appropriate per gestire Data Catalog e leggere dallo storage degli oggetti. Ulteriori informazioni: Credenziali e criteri IAM obbligatori. |
Crea credenziali |
Amministratore Database Data Catalog |
Assicurarsi che le credenziali del database siano disponibili per accedere a Data Catalog e per eseguire query sull'area di memorizzazione degli oggetti. L'utente chiama Ulteriori informazioni: DBMS_CLOUD CREATE_CREDENTIAL Procedura, Usa principal risorsa con DBMS_CLOUD. |
Creare le connessioni a Data Catalog |
Amministratore Database Data Catalog |
Per avviare una connessione tra un'istanza di Autonomous Database e un'istanza di Data Catalog, l'utente chiama La connessione all'istanza di Data Catalog deve utilizzare un oggetto credenziali del database con privilegi OCI (Oracle Cloud Infrastructure) sufficienti. Ad esempio, è possibile utilizzare il token di servizio del principal delle risorse per l'istanza di Autonomous Database o un utente OCI con privilegi sufficienti. Una volta stabilita la connessione, l'istanza di Data Catalog viene aggiornata con lo spazio di nomi
DBMS_DCAT e le proprietà personalizzate (se non esistono già). L'utente può eseguire una query per visualizzare la nuova connessione, incluse tutte le connessioni correnti:
Ulteriori informazioni: SET_DATA_CATALOG_CONN Procedura, UNSET_DATA_CATALOG_CONN Procedura. |
Crea una sincronizzazione selettiva |
Amministratore Database Data Catalog |
Creare un job di sincronizzazione selezionando gli oggetti Data Catalog da sincronizzare. L'utente può:
Ulteriori informazioni: vedere CREATE_SYNC_JOB Procedura, DROP_SYNC_JOB Procedura, Mapping di sincronizzazione |
Sincronizza con Data Catalog |
Amministratore Database Data Catalog |
L'utente avvia un'operazione di sincronizzazione. La sincronizzazione viene avviata manualmente tramite la chiamata alla procedura L'operazione di sincronizzazione crea, modifica ed elimina tabelle e schemi esterni in base ai contenuti di Data Catalog e alle selezioni di sincronizzazione. La configurazione manuale viene applicata utilizzando le proprietà personalizzate di Data Catalog. Ulteriori informazioni: vedere RUN_SYNC Procedura, CREATE_SYNC_JOB Procedura, Mapping di sincronizzazione |
Monitora sincronizzazione e visualizza log |
Amministratore Database Data Catalog |
L'utente può visualizzare lo stato della sincronizzazione eseguendo una query sulla vista USER_LOAD_OPERATIONS . Al termine del processo di sincronizzazione, l'utente può visualizzare un log dei risultati della sincronizzazione, inclusi i dettagli sui mapping delle entità logiche alle tabelle esterne.
Ulteriori informazioni: Monitoraggio e risoluzione dei problemi dei carichi |
Consenti privilegi |
Amministratore query database Data Catalog, amministratore database |
L'amministratore delle query del Data Catalog o del database deve concedere READ sulle tabelle esterne generate agli utenti degli analisti dati. Ciò consente agli analisti di dati di eseguire query sulle tabelle esterne generate. |
Sfoglia ed esegui query sulle tabelle esterne |
Analista di dati |
Gli analisti di dati possono eseguire query sulle tabelle esterne tramite qualsiasi strumento o applicazione che supporta Oracle SQL. Gli analisti di dati possono esaminare gli schemi e le tabelle sincronizzati negli schemi DCAT$* ed eseguire query sulle tabelle utilizzando Oracle SQL. Ulteriori informazioni: Mapping di sincronizzazione |
Arresta connessioni a Data Catalog |
Amministratore Database Data Catalog |
Per rimuovere un'associazione Data Catalog esistente, l'utente chiama la procedura UNSET_DATA_CATALOG_CONN. Questa azione viene eseguita solo quando non si prevede più di utilizzare Data Catalog e le tabelle esterne derivate dal catalogo. Questa azione elimina i metadati del Data Catalog ed elimina le tabelle esterne sincronizzate dall'istanza di Autonomous Database. Le proprietà personalizzate nei criteri Data Catalog e OCI non sono interessate. Ulteriori informazioni: UNSET_DATA_CATALOG_CONN Procedura |
Argomento padre: eseguire query sui dati esterni con Data Catalog
Esempio: scenario MovieStream
In questo scenario, Moviestream sta acquisendo dati in una zona di destinazione sullo storage degli oggetti. Gran parte di questi dati, ma non necessariamente tutti, viene quindi utilizzato per alimentare un Autonomous Database. Prima di alimentare Autonomous Database, i dati vengono trasformati, puliti e successivamente memorizzati nell'area "gold".
Data Catalog viene utilizzato per raccogliere queste origini e quindi fornire un contesto aziendale ai dati. I metadati del Data Catalog sono condivisi con Autonomous Database e consentono agli utenti di Autonomous Database di eseguire query su tali origini dati utilizzando Oracle SQL. Questi dati possono essere caricati in Autonomous Database o sottoposti a query in modo dinamico utilizzando tabelle esterne.
Per ulteriori informazioni sull'uso di Data Catalog, vedere Documentazione di Data Catalog.
Argomento padre: eseguire query sui dati esterni con Data Catalog
Esempio: scenario dati partizionati
Questo scenario illustra come creare tabelle esterne in Autonomous Database basate sulle entità logiche di Data Catalog raccolte dai dati partizionati nell'area di memorizzazione degli oggetti.
L'esempio seguente si basa sull'esempio: MovieStream Scenario ed è stato adattato per dimostrare l'integrazione con i dati partizionati. Data Catalog viene utilizzato per raccogliere queste origini e quindi fornire un contesto aziendale ai dati. Per ulteriori informazioni su questo esempio, vedere Esempio: MovieStream Scenario.
Per ulteriori informazioni sull'uso di Data Catalog, vedere Documentazione di Data Catalog.
Argomento padre: eseguire query sui dati esterni con Data Catalog