Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Volumes sind Unity Catalog-Objekte, die Governance über nicht tabellarische Datasets ermöglichen. Volumes stellen ein logisches Speichervolume an einem Cloudobjektspeicherort dar. Volumes bieten Funktionen zum Zugreifen auf Dateien sowie zum Speichern, Verwalten und Organisieren von Dateien.
Tabellen bieten zwar Governance über tabellarische Datasets, Volumes unterstützen jedoch zusätzlich Governance für nicht tabellarische Datasets. Sie können Volumes verwenden, um Dateien in einem beliebigen Format zu speichern und darauf zuzugreifen, einschließlich strukturierter, semistrukturierter und unstrukturierter Daten.
Anwendungsfälle für Volumes
Databricks empfiehlt die Verwendung von Volumes zum Verwalten des Zugriffs auf alle Nicht-Tabellendaten. Ebenso wie Tabellen können Volumes verwaltet oder extern sein.
Anwendungsfälle für Volumes umfassen:
- Registrieren von Zielbereichen für Rohdaten, die von externen Systemen generiert werden, um die Verarbeitung in frühen Phasen von ETL-Pipelines und anderen Datentechnikaktivitäten zu unterstützen.
- Registrieren von Stagingspeicherorten für die Erfassung, z. B. mithilfe von Auto Loader-,
COPY INTO
- oder CTAS-Anweisungen (CREATE TABLE AS
). - Stellen Sie Dateispeicherorte für Datenwissenschaftler, Datenanalysten und Machine Learning-Ingenieure bereit, die als Teil ihrer explorativen Datenanalyse und anderen Data Science-Aufgaben verwendet werden können.
- Erteilen von Zugriff auf beliebige Dateien für Azure Databricks-Benutzer, die von anderen Systemen im Cloudspeicher erstellt und gespeichert werden, z. B. große Sammlungen unstrukturierter Daten (z. B. Bild-, Audio-, Video- und PDF-Dateien), die von Überwachungssystemen oder IoT-Geräten erfasst wurden, oder Bibliotheksdateien (JAR- und Python-Wheel-Dateien), die aus lokalen Abhängigkeitsverwaltungssystemen oder CI/CD-Pipelines exportiert werden.
- Speichern Sie Betriebsdaten, z. B. Protokollierungs- oder Prüfpunktdateien.
Wichtig
Sie können keine Dateien in Volumes im Unity Catalog als Tabellen registrieren. Volumes sind nur für den pfadbasierten Datenzugriff vorgesehen. Verwenden Sie Tabellen, wenn Sie im Unity Catalog mit Tabellendaten arbeiten möchten.
Was ist ein verwaltetes Volume?
Ein verwaltetes Volume ist ein von Unity Catalog verwaltetes Speichervolume, das am verwalteten Speicherort des enthaltenden Schemas erstellt wird. Weitere Informationen finden Sie unter Angeben eines verwalteten Speicherorts in Unity Catalog.
Verwaltete Volumes ermöglichen die Erstellung von verwaltetem Speicher für die Arbeit mit Dateien ohne den Mehraufwand durch externe Speicherorte und Speicheranmeldeinformationen. Sie müssen beim Erstellen eines verwalteten Volumes keinen Speicherort angeben, und der gesamte Dateizugriff auf Daten in verwalteten Volumes erfolgt über Pfade, die von Unity Catalog verwaltet werden.
Was ist ein externes Volume?
Ein externes Volume ist ein von Unity Catalog verwaltetes Speichervolume, das für ein Verzeichnis innerhalb eines externen Speicherorts mit von Unity Catalog verwalteten Speicheranmeldeinformationen registriert ist.
Unity Catalog verwaltet weder den Lebenszyklus noch das Layout der Dateien auf externen Volumes. Wenn Sie ein externes Volume löschen, löscht Unity Catalog die zugrunde liegenden Daten nicht.
Welcher Pfad wird für den Zugriff auf Dateien auf einem Volume verwendet?
Volumes befinden sich auf der dritten Ebene des Namespace mit drei Ebenen in Unity Catalog (catalog.schema.volume
):
Der Pfad für den Zugriff auf Volumes ist identisch, unabhängig davon, ob Sie Apache Spark, SQL, Python oder andere Sprachen und Bibliotheken verwenden. Dies unterscheidet sich von älteren Zugriffsmustern für Dateien im Objektspeicher, der an einen Azure Databricks-Arbeitsbereich gebunden ist.
Der Pfad für den Zugriff auf Dateien in Volumes verwendet das folgende Format:
/Volumes/<catalog>/<schema>/<volume>/<path>/<file-name>
Azure Databricks unterstützt außerdem ein optionales dbfs:/
-Schema bei der Arbeit mit Apache Spark, sodass der folgende Pfad ebenfalls funktioniert:
dbfs:/Volumes/<catalog>/<schema>/<volume>/<path>/<file-name>
Die Sequenz /<catalog>/<schema>/<volume>
im Pfad entspricht den drei Unity Catalog-Objektnamen, die der Datei zugeordnet sind. Diese Pfadelemente sind schreibgeschützt und können von Benutzer*innen nicht direkt geschrieben werden, was bedeutet, dass es nicht möglich ist, diese Verzeichnisse mithilfe von Dateisystemvorgängen zu erstellen oder zu löschen. Sie werden automatisch verwaltet und mit den entsprechenden Entitäten von Unity Catalog synchronisiert.
Hinweis
Sie können auch auf Daten in externen Volumes zugreifen, indem Sie Cloudspeicher-URIs verwenden.
Reservierte Pfade für Volumes
Volumes führen die folgenden reservierten Pfade ein, die für den Zugriff auf Volumes verwendet werden:
dbfs:/Volumes
/Volumes
Hinweis
Pfade sind auch für potenzielle Tippfehler für diese Pfade aus Apache Spark-APIs und dbutils
, einschließlich /volumes
, /Volume
, /volume
reserviert, unabhängig davon, ob ihnen dbfs:/
vorangestellt ist. Der Pfad /dbfs/Volumes
ist ebenfalls reserviert, kann aber nicht für den Zugriff auf Volumes verwendet werden.
Volumes werden erst ab Databricks Runtime 13.3 LTS unterstützt. In Databricks Runtime 12.2 LTS und darunter können Vorgänge mit /Volumes
Pfaden erfolgreich sein, sie können jedoch nur Daten in kurzlebige Speicherdatenträger schreiben, die an Computecluster angefügt sind, anstatt Daten wie erwartet auf Unity-Katalogvolumes zu speichern.
Wichtig
Wenn Sie bereits vorhandene Daten in einem reservierten Pfad im DBFS-Stamm gespeichert haben, können Sie ein Supportticket erstellen, um temporären Zugriff auf diese Daten zu erhalten und sie an einen anderen Speicherort zu verschieben.
Computeanforderungen
Wenn Sie mit Volumes arbeiten, müssen Sie ein SQL-Warehouse oder einen Cluster unter Databricks Runtime 13.3 LTS oder höher verwenden, es sei denn, Sie verwenden Azure Databricks-Benutzeroberflächen wie den Katalog-Explorer.
Begrenzungen
Um mit Unity Catalog-Volumes zu interagieren, müssen Sie Unity Catalog-fähiges Compute verwenden. Volumes unterstützen nicht alle Workloads.
In der folgenden Tabelle sind die Volumeneinschränkungen des Unity-Katalogs basierend auf der Version von Databricks Runtime aufgeführt:
Databricks Runtime-Version | Begrenzungen |
---|---|
Alle unterstützten Databricks Runtime-Versionen |
|
14.3 LTS und höher |
|
14.2 und darunter |
|
Nächste Schritte
Die folgenden Artikel enthalten weitere Informationen zur Arbeit mit Volumes: