Creare catalogs
Questo articolo illustra come creare catalogs in Unity Catalog. Un catalog contiene schemi (database)e un schema contiene tables, views, volumes, modelli e funzioni.
Per altre informazioni su catalogs, vedere Che cosa sono catalogs in Azure Databricks?
Nota
Per informazioni su come creare un catalogesterno, un oggetto Catalog Unity che replica un database in un sistema dati esterno, vedere Creare un catalogesterno. Consulta anche Gestire e usare catalogsesterne.
Requisiti
Per creare un catalog, indipendentemente dal tipo di catalog:
- È necessario essere un amministratore del metastore di Azure Databricks o avere il privilegio per
CREATE CATALOG
il metastore. - La risorsa di calcolo usata per eseguire un notebook per creare un catalog deve trovarsi in Databricks Runtime 11.3 o versione successiva e deve usare una modalità di accesso conforme a Unity Catalog. Vedere Modalità di accesso usata. I magazzini SQL supportano sempre Unity Catalog.
Per creare un condiviso catalog:
- La condivisione di condivisione Delta deve esistere già nell'area di lavoro. Vedere Ricerca per categorie rendere disponibili i dati condivisi al team?
- È necessario essere un amministratore del metastore, avere il
USE PROVIDER
privilegio per il metastore o possedere l'oggetto provider che include la condivisione.
Per creare uno standard catalog:
- Se si specifica un percorso di archiviazione gestito per il catalog, è necessario disporre del privilegio
CREATE MANAGED STORAGE
nella posizione esterna di destinazione. - Se non esiste alcuna risorsa di archiviazione gestita a livello di metastore, è necessario specificare un percorso di archiviazione gestito per il catalog.
Per creare un esterno catalog:
- È necessario essere il proprietario della connessione utilizzata per creare il catalog esterno o avere il privilegio
CREATE FOREIGN CATALOG
sulla connessione. - È necessario usare il calcolo in Databricks Runtime 13.1 o versione successiva. I warehouse SQL devono essere Pro o Serverless.
Creare un catalog
Per creare un catalog, è possibile usare Catalog Explorer, un comando SQL, l'API REST, il Databricks CLI o Terraform. Quando si crea un catalog, vengono creati automaticamente due schemi (database): default
e information_schema
.
Catalog Esploratore
Accedere a un'area di lavoro collegata al metastore.
Fare clic sull'icona
Catalog.
Fare clic sul pulsante Crea Catalog.
Nella finestra di dialogo
Crea una nuova immettere un nome di eil Tipo di che si desidera creare: - standardcatalog: un oggetto proteggibile che organizza dati e asset di intelligenza artificiale gestiti da Unity Catalog. Per tutti i casi d'uso tranne la federazione lakehouse e catalogs creato da Delta Sharing shares.
- Foreigncatalog: oggetto proteggibile che esegue il mirroring di un database su un sistema dati esterno tramite Lakehouse Federation. Vedere Panoramica della configurazione di Lakehouse Federation.
- Sharedcatalog: un oggetto proteggibile che organizza dati e altri asset condivisi con te come quota Delta Sharing . La creazione di un catalog da una condivisione rende tali asset disponibili per essere letti dagli utenti nell'area di lavoro. Vedere Che cos'è una condivisione?.
A seconda del tipo di catalog, specificare le opzioni seguenti:
Per lo standard catalogs: è opzionale, ma è fortemente consigliato indicare un percorso di archiviazione gestito . È necessario avere il
CREATE MANAGED STORAGE
privilegio per la posizione esterna di destinazione usata come posizione di archiviazione gestita. Vedere Specificare un percorso di archiviazione gestito in Unity Catalog.Facoltativamente, è possibile specificare un sottopercorso di una posizione esterna definita. Se non è stata definita una posizione esterna, è possibile crearne una facendo clic su Crea una nuova posizione esterna.
Importante
Se l'area di lavoro non dispone di una posizione di archiviazione a livello di metastore, è necessario specificare un percorso di archiviazione gestito quando si crea un catalog.
Per i catalogsstranieri: è necessario select una Connection, ovvero un oggetto proteggibile in Unity Catalog che specifica un percorso e un credentials per l'accesso a un sistema di database esterno. Vedere Panoramica della configurazione di Lakehouse Federation.
Dopo aver selezionato la connessione, immettere il nome del Database o di un altro elemento Databricks Catalog che si desidera duplicare.
I requisiti variano a seconda dell'origine dati:
- MySQL usa uno spazio dei nomi a due livelli e pertanto non richiede un nome di database.
- Per connections a catalog in un'altra area di lavoro di Databricks, inserire il nome Databricks del Catalog anziché un nome di database.
Se non si dispone di una connessione definita, è possibile crearne una facendo clic su Crea una nuova connessione.
Per condiviso: è necessarioun provider di e un Share . Dopo aver selezionato il provider, è possibile select uno dei sharesdel provider.Se non si è certi del provider e della condivisione desiderata, è possibile che sia più semplice cercare providers e shares usando il browser Catalog Explorer. Visualizza providers e shares che un fornitore ha condiviso con te.
Cliccare su Crea.
Nel Catalog creato! finestra di dialogo fare clic su Visualizza catalog per accettare il catalog come configurato automaticamente oppure fare clic su Configura catalog (scelta consigliata) per configurare le autorizzazioni catalog, le associazioni dell'area di lavoro e i metadati.
Se si fa clic su Visualizza catalog, il catalog sarà accessibile a tutte le aree di lavoro collegate al metastore e il privilegio
BROWSE
verrà concesso a tutti gli utenti dell'account. È possibile ignorare il resto dei passaggi di questa procedura e procedere con l'aggiunta di schemi al catalog. Vedere Creare schemi.Puoi tornare alla pagina dei dettagli catalog in Catalog Explorer in qualsiasi momento per update il proprietario, i tag, i commenti, i collegamenti all'area di lavoro, le autorizzazioni e gli schemi.
Nella pagina Configura catalog> aree di lavoro, specificare l'area di lavoro a cui è vincolato il catalog.
Per impostazione predefinita, il catalog viene condiviso con tutte le aree di lavoro associate al metastore corrente. Se il catalog conterrà dati che devono essere limitati a specifiche aree di lavoro, deseleziona l'opzione Tutte le aree di lavoro hanno accesso e usa il pulsante Assegna alle aree di lavoro per aggiungere quelle aree di lavoro. L'area di lavoro corrente deve essere inclusa.
Dopo aver assegnato un'area di lavoro, è possibile modificare facoltativamente il livello di accesso lettura & scrittura a di sola lettura: select'area di lavoro dal list e fare clic sul pulsante Gestisci livello di accesso.
Per altre informazioni, vedere Limitcatalog l'accesso a aree di lavoro specifiche.
Fare clic su Avanti per assegnare Autorizzazioni per il tuo catalog.
Per impostazione predefinita, tutti gli utenti dell'account hanno il privilegio
BROWSE
, il che consente loro di scoprire i metadati catalog senza necessitare dell'accesso in lettura ai dati having.Per grant un privilegio a un utente, gruppo o entità del servizio, fare clic su Grant e seguire le istruzioni in sugli oggetti proteggibili e privilegi di Unity Catalog.
Fare clic su Avanti per aggiungere i metadati dei tag e dei commenti facoltativi.
Tag sono coppie chiave-valore che è possibile usare per organizzare e classificare catalogs per semplificare la ricerca e l'individuazione degli asset di dati. Values sono facoltativi. Consultare Applicare tag agli oggetti proteggibili di Unity Catalog.
Un commento è un campo aperto che viene spesso usato per fornire una descrizione per consentire agli utenti di individuare gli asset di dati nel catalog. Vedere Aggiungere commenti ai dati e agli asset IA.
Fare clic su Salva.
Aggiungere schemi e oggetti dati alla catalog.
Vedere Creare schemi.
È possibile usare Catalog Explorer per update il proprietario, i tag, i commenti, le associazioni dell'area di lavoro e le autorizzazioni in qualsiasi momento dopo la creazione del catalog.
SQL
Per creare un catalogstandard, eseguire il seguente comando SQL in un notebook o in un editor di query SQL. Gli elementi tra parentesi sono facoltativi. Sostituire il segnaposto values:
<catalog-name>
: un nome per il catalog.<location-path>
: facoltativo ma fortemente consigliato. Specificare un percorso di memorizzazione se si desidera che i tables gestiti in questa catalog vengano archiviati in un percorso diverso da quello di archiviazione predefinito configurato per il metastore.Importante
Se l'area di lavoro non dispone di una posizione di archiviazione a livello di metastore, è necessario specificare una posizione di archiviazione gestita quando si crea un catalog.
Questo percorso deve essere definito in una configurazione del percorso esterno ed è necessario avere il
CREATE MANAGED STORAGE
privilegio per la configurazione della posizione esterna. È possibile usare il percorso definito nella configurazione della posizione esterna o un sottopercorso (in altre parole,'abfss://my-container-name@storage-account-name.dfs.core.windows.net/finance'
o'abfss://my-container-name@storage-account-name.dfs.core.windows.net/finance/product'
).<comment>
: Descrizione facoltativa o altro commento.
CREATE CATALOG [ IF NOT EXISTS ] <catalog-name>
[ MANAGED LOCATION '<location-path>' ]
[ COMMENT <comment> ];
Ad esempio, per creare un catalog denominato example
:
CREATE CATALOG IF NOT EXISTS example;
Per creare un catalogcondiviso, eseguire il comando seguente in un notebook o in un editor di query SQL. Gli elementi tra parentesi sono facoltativi.
CREATE CATALOG [IF NOT EXISTS] <catalog-name>
USING SHARE <provider-name>.<share-name>;
[ COMMENT <comment> ];
Per creare un oggetto esterno catalog, eseguire il comando seguente in un notebook o nell'editor di query SQL. Gli elementi tra parentesi sono facoltativi. Sostituisci il segnaposto values.
-
<catalog-name>
: Nome del catalog in Azure Databricks. -
<connection-name>
: l'oggetto di connessione che definisce l'origine dati, il percorso e l'accesso credentials. -
<database-name>
: nome del database di cui si vuole eseguire il mirroring come catalog in Azure Databricks. Non obbligatorio per MySQL, che usa uno spazio dei nomi a due livelli. Per la federazione di Databricks-to-Databricks Lakehouse, usarecatalog '<external-catalog-name>'
invece . -
<external-catalog-name>
: solo Databricks-to-Databricks: Nome del catalog nell'area di lavoro di Databricks esterna di cui si esegue il mirroring. Vedere Eseguire query federate in un'altra area di lavoro di Databricks.
CREATE FOREIGN CATALOG [IF NOT EXISTS] <catalog-name> USING CONNECTION <connection-name>
OPTIONS [(database '<database-name>') | (catalog '<external-catalog-name>')];
Vedere anche Creare un catalogesterno.
Per limitcatalog l'accesso ad aree di lavoro specifiche nel tuo account, anche noto come binding delle aree di lavorocatalog, vedere Limitcatalog l'accesso ad aree di lavoro specifiche.
Per descrizioni dettagliate dei parametri, vedere CREATE CATALOG.
Dopo aver creato il catalog, assegna privilegi al catalog. Vedi i privilegi di Unity Catalog e gli oggetti proteggibili.
Altro
Terraform: è possibile creare un catalog usando il provider Databricks Terraform e databricks_catalog. È possibile recuperare informazioni sulle catalogs usando databricks_catalogs.
API REST: Usare POST /api/2.1/unity-catalog/catalogs.
dell'interfaccia della riga di comando di Databricks: databricks catalogs create <catalog-name> [options]
Per un list di opzioni, eseguire databricks catalogs create -h
. Le opzioni sono descritte anche nelle informazioni di riferimento sulle API. Seguire il collegamento API nel paragrafo precedente.
Dopo aver creato il catalog, assegnare privilegi al catalog. Vedere i privilegi di Unity Catalog e gli oggetti proteggibili.