Angeben eines verwalteten Speicherorts in Unity Catalog

Ein verwalteter Speicherort gibt einen Speicherort im Cloudobjektspeicher zum Speichern von Daten für verwaltete Tabellen und verwaltete Volumes an.

Sie können einen verwalteten Speicherort einem Metastore, einem Katalog oder einem Schema zuordnen. Verwaltete Speicherorte auf niedrigeren Ebenen in der Hierarchie überschreiben Speicherorte, die auf höheren Ebenen definiert sind, wenn verwaltete Tabellen oder verwaltete Volumes erstellt werden.

Verwalteter Speicher auf Metastore-Ebene ist optional, und neue Arbeitsbereiche, die für Unity Catalog aktiviert sind, werden automatisch ohne verwalteten Speicherort auf Metastore-Ebene erstellt. Von Azure Databricks wird empfohlen, verwalteten Speicher auf Katalogebene für die logische Datenisolation mit Metastore-Ebene und Schemaebene als Optionen zuzuweisen. Der Speicher auf Metastore-Ebene ist jedoch für einige Funktionen erforderlich, z. B. das Freigeben von Notebooks mithilfe der Delta-Freigabe oder die Verwendung von persönlichen Stagingspeicherorten als Azure Databricks-Partner. Weitere Informationen finden Sie unter Automatische Aktivierung von Unity Catalog, Bausteine für Datengovernance und Datenisolation und Erstellen eines Unity Catalog-Metastores.

Was ist ein verwalteter Speicherort?

Verwaltete Speicherorte weisen die folgenden Eigenschaften auf:

  • Verwaltete Tabellen und verwaltete Volumes speichern Daten und Metadatendateien im verwalteten Speicherort.
  • Verwaltete Speicherorte können nicht mit externen Tabellen oder externen Volumes überlappen.

In der folgenden Tabelle wird beschrieben, wie ein verwalteter Speicherort deklariert und Unity Catalog-Objekten zugeordnet wird:

Zugeordnetes Unity Catalog-Objekt Festlegung Beziehung zu externen Speicherorten
Metastore Wird vom Kontoadministrator während der Erstellung des Metastores konfiguriert. Kann externe Speicherorte nicht überlappen.
Katalog Wird während der Katalogerstellung mithilfe des Schlüsselworts MANAGED LOCATION angegeben. Muss sich an einem externen Speicherort befinden.
Schema Wird während der Schemaerstellung mithilfe des Schlüsselworts MANAGED LOCATION angegeben. Muss sich an einem externen Speicherort befinden.

Der verwaltete Speicherort, der Daten und Metadaten für verwaltete Tabellen und verwaltete Volumes speichert, verwendet die folgenden Regeln:

  • Wenn das umfassende Schema über einen verwalteten Speicherort verfügt, werden die Daten am verwalteten Speicherort des Schemas gespeichert.
  • Wenn das umfassende Schema keinen verwalteten Speicherort hat, aber der Katalog über einen verwalteten Speicherort verfügt, werden die Daten im verwalteten Speicherort des Katalogs gespeichert.
  • Verfügen weder das umfassende Schema noch der enthaltende Katalog über einen verwalteten Speicherort, dann werden die Daten im verwalteten Speicherort des Metastore gespeichert.

Unity-Katalog verhindert überlappende Standortgovernance. Siehe Wie funktionieren Pfade für Daten, die vom Unity Catalog verwaltet werden?.

Verwalteter Speicherort, Speicherstamm und Speicherort

Wenn Sie MANAGED LOCATION für einen Katalog oder ein Schema angeben, wird der angegebene Speicherort als Speicherstamm im Unity Catalog nachverfolgt. Um sicherzustellen, dass alle verwalteten Entitäten über einen eindeutigen Speicherort verfügen, fügt Unity Catalog dem angegebenen Speicherort Hash-Unterverzeichnisse hinzu, wobei das folgende Format verwendet wird:

Object Pfad
Schema <storage-root>/__unitystorage/schemas/00000000-0000-0000-0000-000000000000
Katalog <storage-root>/__unitystorage/catalogs/00000000-0000-0000-0000-000000000000

Der vollqualifizierte Pfad für den verwalteten Speicherort wird als Speicherort im Unity Catalog nachverfolgt.

Sie können denselben verwalteten Speicherort für mehrere Schemas und Kataloge angeben.

Erforderliche Rechte

Benutzer, die über die CREATE MANAGED STORAGE-Berechtigung für einen externen Speicherort verfügen, können verwaltete Speicherorte während der Katalog- oder Schemaerstellung konfigurieren.

Kontoadministratoren können auf Metastore-Ebene einen optionalen verwalteten Speicherort hinzufügen.

Festlegen eines verwalteten Speicherorts für einen Metastore

Informationen zum Festlegen eines verwalteten Speicherorts für einen Metastore finden Sie unter Hinzufügen von verwaltetem Speicher zu einem vorhandenen Metastore.

Festlegen eines verwalteten Speicherorts für einen Katalog

Legen Sie einen verwalteten Speicherort für einen Katalog mithilfe des Schlüsselworts MANAGED LOCATION während der Katalogerstellung fest, wie im folgenden Beispiel gezeigt:

CREATE CATALOG <catalog-name>
MANAGED LOCATION 'abfss://<container-name>@<storage-account>.dfs.core.windows.net/<path>/<directory>';

Sie können auch den Catalog-Explorer verwenden, um den verwalteten Speicherort für einen Katalog festzulegen. Weitere Informationen finden Sie unter Erstellen von Katalogen.

Festlegen eines verwalteten Speicherorts für ein Schema

Legen Sie einen verwalteten Speicherort für ein Schema mithilfe des Schlüsselworts MANAGED LOCATION während der Schemaerstellung fest, wie im folgenden Beispiel gezeigt:

CREATE CATALOG <catalog>.<schema-name>
MANAGED LOCATION 'abfss://<container-name>@<storage-account>.dfs.core.windows.net/<path>/<directory>';

Sie können auch den Catalog-Explorer verwenden, um den verwalteten Speicherort für ein Schema festzulegen. Weitere Informationen finden Sie unter Erstellen von Schemas.

Nächste Schritte

Verwalten von Speicherorten werden zum Erstellen von verwalteten Tabellen und verwalteten Volumes verwendet. Weitere Informationen finden Sie unter Arbeiten mit verwalteten Tabellen und Was sind Unity-Katalogvolumes?.