Informazioni sull'esecuzione di query su cataloghi e database remoti
Questo argomento descrive come eseguire query sui dati esterni utilizzando i metadati del catalogo utilizzando una sintassi SQL del modulo: [schema].object@catalog_name
.
Qui la sintassi [schema].object@catalog_name
si riferisce a una rappresentazione di accesso agli oggetti di database
La tabella descrive i parametri e le relative descrizioni utilizzati nella sintassi:
Parametri | Descrizione |
---|---|
Schema |
Questo campo è facoltativo e viene impostato automaticamente sull'utente corrente. Uno schema è uno spazio di nomi all'interno di un catalogo che organizza oggetti di database correlati quali tabelle, viste, procedure o funzioni. Funge da contenitore logico per questi oggetti. |
Oggetto | Questo campo fa riferimento a qualsiasi oggetto di database contenuto in uno schema, ad esempio tabelle, viste, procedure o funzioni. |
Catalog | Nel campo Catalogo viene visualizzato il nome del catalogo con la tabella di riferimento. È possibile creare e gestire i cataloghi utilizzando il pacchetto DBMS_CATALOG o lo strumento Catalogo della suite di strumenti Data Studio.
|
È possibile sostituire i cataloghi con dbLinks.
Accesso alle tabelle remote
- Montare un catalogo: iniziare attivando un catalogo su qualsiasi tipo di data store supportato (ad esempio Iceberg, Delta Lake e così via). Il MOUNT di un catalogo standardizza i metadati, consentendo l'accesso SQL ai dati esterni come se fossero tabelle all'interno di uno schema nel catalogo. Fare riferimento alla sezione Gestisci cataloghi per i passi dettagliati sul montaggio dei cataloghi. Una volta eseguito il MOUNT del catalogo e standardizzato il metadati, è possibile eseguire direttamente query sui dati esterni utilizzando SQL. Anche se i dati esterni non esistono fisicamente come tabelle tradizionali, il catalogo li astrae in un formato tabulare per semplificare l'esecuzione delle query.
- Fare riferimento alla tabella: una volta eseguito il MOUNT, è possibile fare riferimento alla tabella remota specificando lo schema e il catalogo (se applicabile) seguiti dal nome della tabella utilizzando la sintassi seguente:
[remote_schema].table@catalog
.
Qui schema
in questo identificativo è lo schema remoto che contiene la tabella remota. Table
, in questo caso, è il nome della tabella nel catalogo remoto.
L'utente deve disporre delle credenziali appropriate per accedere alla tabella e al catalogo specifici.
Punti fondamentali da considerare
- La funzione è progettata utilizzando il pacchetto
DBMS_CATALOG
installato in un ambiente ADB-S. - Le operazioni DDL (ad esempio,
CREATE, ALTER, DROP
) non sono consentite sui database remoti tramite cataloghi. In questo caso, potrebbe verificarsi un errore "ORA-02021: le operazioni DDL non sono consentite in un database remoto" . - Restrizione con lo stesso nome: questa funzione applica che per un determinato utente non possano esistere un collegamento DB e un catalogo con lo stesso nome.
Si utilizzerà SQL Worksheet Editor di Database Actions per eseguire query SQL. È innanzitutto necessario connettersi all'istanza di Database Actions e selezionare SQL nel menu Sviluppo.
Requisiti indispensabili:
Sarà necessario un account OCI.
In che modo DBlinks è diverso dai cataloghi?
DBLinks: vengono utilizzati principalmente per connettersi ed eseguire query su un altro database direttamente utilizzando una sintassi.
SELECT * FROM <schema_name>.<table_name>@<dblink_name>;
Quando viene eseguito il MOUNT di un catalogo su un altro database tramite un DBLink, non è necessario definire separatamente i metadati nel catalogo perché la sintassi DBLink accede direttamente agli oggetti di database remoti. In sostanza, DBLink funge da connessione trasparente al database remoto, consentendo l'esecuzione delle query come se i dati fossero locali.
Catalog: fungono da livello di metadati che possono essere attivati su diversi tipi di data store, non solo i database connessi tramite DBLinks, ma anche i data catalog esterni o le condivisioni di dati come i provider Delta Share o Live Share. Quando viene eseguito il MOUNT di un catalogo su un'area di memorizzazione non di database, la sintassi @catalog
adatta le query per generare tabelle esterne in linea, consentendo l'accesso ai dati esterni senza richiedere un DBLink. Ciò significa che i cataloghi estraggono la gestione dei metadati e forniscono un'interfaccia unificata per eseguire query su diverse origini dati, incluse quelle esterne.
Argomento padre: Eseguire query su cataloghi e database remoti