Delen via


Padregels en toegang in Unity Catalog-volumes

Op deze pagina worden beperkingen rondom padoverlappen in Unity Catalog uitgelegd, en padgebaseerde toegangspatronen voor gegevensbestanden in Unity Catalog-objecten beschreven, en hoe Unity Catalog paden beheert voor tabellen en volumes.

Beperkingen voor overlappende paden in Unity Catalog

Unity Catalog dwingt gegevensbeheer af door te voorkomen dat beheerde mappen met gegevens elkaar overlappen. Unity Catalog dwingt de volgende regels af:

  • Externe locaties kunnen andere externe locaties niet overlappen.
  • Tabellen en volumes slaan gegevensbestanden op externe locaties of de hoofdlocatie van de metastore op.
  • Volumes kunnen andere volumes niet overlappen.
  • Tabellen kunnen andere tabellen niet overlappen.
  • Tabellen en volumes kunnen elkaar niet overlappen.
  • Beheerde opslaglocaties kunnen elkaar niet overlappen. Zie Een beheerde opslaglocatie opgeven in Unity Catalog.
  • Externe volumes kunnen beheerde opslaglocaties niet overlappen.
  • Externe tabellen kunnen beheerde opslaglocaties niet overlappen.

Deze regels betekenen dat de volgende beperkingen bestaan in Unity Catalog:

  • U kunt geen externe locatie definiëren binnen een andere externe locatie.
  • U kunt geen volume binnen een ander volume definiëren.
  • U kunt een tabel in een andere tabel niet definiëren.
  • U kunt geen tabel definiëren voor gegevensbestanden of mappen binnen een volume.
  • U kunt een volume in een map in een tabel niet definiëren.

Opmerking

U kunt altijd op pad gebaseerde toegang gebruiken om gegevensbestanden van volumes te schrijven of te lezen, waaronder Delta Lake. U kunt deze gegevensbestanden niet registreren als tabellen in de Unity Catalog-metastore.

Volledig beheerde paden voor tabellen en volumes

Wanneer u een beheerde tabel of een beheerd volume maakt, maakt Unity Catalog een nieuwe map in de opslaglocatie die is geconfigureerd voor Unity Catalog die is gekoppeld aan het bijbehorende schema. De naam van deze map wordt willekeurig gegenereerd om mogelijke conflicten met andere mappen die al aanwezig zijn te voorkomen. Dit gedrag verschilt van hoe Hive-metastore beheerde tabellen maakt.

Padgebaseerde toegang tot beheerde tabellen in Unity Catalog wordt niet ondersteund. Communiceer altijd met beheerde tabellen van Unity Catalog met behulp van tabelnamen en beheerde Unity Catalog-volumes met behulp van volumepaden.

Externe locatiepaden voor tabellen en volumes

Wanneer u een externe tabel of volume maakt, geeft u een pad op binnen een externe locatie die wordt beheerd door Unity Catalog.

Belangrijk

Om padconflicten te voorkomen, raadt Databricks aan om externe tabellen en volumes te maken in submappen in plaats van in de hoofdmap van een externe locatie.

Voor gebruiksgemak kunt u communiceren met externe tabellen van Unity Catalog met behulp van tabelnamen en externe volumes met behulp van volumepaden. Gebruikers met voldoende bevoegdheden hebben ook rechtstreeks toegang tot gegevens via het volledige cloudopslagpad.

Toegang tot gegevens via cloud-URI's voor deze objecten wordt volledig beheerd door Unity Catalog-bevoegdheden, waardoor eventuele bevoegdheden op de externe locatie zelf worden overschreven. Zie Pad overlapbeperkingen in Unity Catalog - en Unity Catalog-bevoegdheden en beveiligbare objecten.

Toegang tot gegevens in Unity Catalog

Unity Catalog-objecten bieden toegang tot gegevens via object-id's, volumepaden of cloud-URI's. U kunt deze waarden gebruiken voor toegang tot gegevens die zijn gekoppeld aan volumes en tabellen.

Unity Catalog-tabellen worden geopend met behulp van een id met drie lagen met het volgende patroon:

<catalog_name>.<schema_name>.<table_name>

Volumebestandspaden in Unity Catalog

Volumes bieden een bestandspad voor toegang tot gegevensbestanden met het volgende patroon:

/Volumes/<catalog_name>/<schema_name>/<volume_name>/<path_to_file>

Voor cloud-URI's moeten gebruikers het stuurprogramma, de opslagcontainer-id en het volledige pad naar de doelbestanden opgeven, zoals in het volgende voorbeeld:

abfss://<container_name>@<storage_account>.dfs.core.windows.net/<path>

In de volgende tabel ziet u de toegangsmethoden die zijn toegestaan voor Unity Catalog-objecten:

Voorwerp Objectidentificatie Bestandspad Cloud-URI
Externe locatie Nee Nee ja
Beheerde tabel ja Nee Nee
Externe tabel ja Nee ja
Beheerd volume Nee ja Nee
Extern volume Nee ja ja

Opmerking

Unity Catalog-volumes gebruiken object-id's met drie lagen met het volgende patroon voor beheeropdrachten (zoals CREATE VOLUME en DROP VOLUME):

<catalog_name>.<schema_name>.<volume_name>

Als u daadwerkelijk met bestanden in volumes wilt werken, moet u op pad gebaseerde toegang gebruiken.