Delen via


Automatisch laden gebruiken met Unity Catalog

Auto Loader kan veilig gegevens opnemen van externe locaties die zijn geconfigureerd met Unity Catalog. Zie Connect to cloud object storage using Unity Catalog (Verbinding maken met cloudobjectopslag met behulp van Unity Catalog) voor meer informatie over het veilig verbinden van opslag met Unity Catalog. Automatisch laden is afhankelijk van Structured Streaming voor incrementele verwerking; Zie Unity Catalog gebruiken met structured streaming voor aanbevelingen en beperkingen.

Notitie

In Databricks Runtime 11.3 LTS en hoger kunt u Auto Loader gebruiken met standaard- of toegewezen toegangsmodi (voorheen gedeelde en toegangsmodi voor één gebruiker).

De weergavemodus voor directory's wordt standaard ondersteund. Bestandsmeldingsmodus wordt alleen ondersteund op computersystemen met de toegewezen toegangsmodus.

Gegevens opnemen van externe locaties die worden beheerd door Unity Catalog met Auto Loader

U kunt automatische laadprogramma's gebruiken om gegevens op te nemen vanaf elke externe locatie die wordt beheerd door Unity Catalog. U moet machtigingen hebben READ FILES voor de externe locatie.

Notitie

Azure Data Lake Storage is het enige Azure-opslagtype dat wordt ondersteund door Unity Catalog.

Locaties specificeren voor Auto Loader-resources voor Unity Catalog

In het Beveiligingsmodel van Unity Catalog wordt ervan uitgegaan dat alle opslaglocaties waarnaar wordt verwezen in een workload worden beheerd door Unity Catalog. Databricks raadt aan altijd controlepunt- en schemaontwikkelingsgegevens op te slaan op opslaglocaties die worden beheerd door Unity Catalog. Met Unity Catalog kunt u geen controlepunt-, schema-inferentie- en evolutiebestanden onder de tabelmap nesten.

Voorbeelden

De volgende voorbeelden gaan ervan uit dat de uitvoerende gebruiker eigenaarrechten heeft op de doeltabellen en de volgende configuraties en machtigingen heeft:

Opslaglocatie Toekenning
abfss://autoloader-source@<storage-account>.dfs.core.windows.net/json-data BESTANDEN LEZEN
abfss://dev-bucket@<storage-account>.dfs.core.windows.net BESTANDEN LEZEN, BESTANDEN SCHRIJVEN, CREATE TABLE

Gebruik Auto Loader om een door Unity Catalog beheerde tabel te laden

checkpoint_path = "abfss://dev-bucket@<storage-account>.dfs.core.windows.net/_checkpoint/dev_table"

(spark.readStream
  .format("cloudFiles")
  .option("cloudFiles.format", "json")
  .option("cloudFiles.schemaLocation", checkpoint_path)
  .load("abfss://autoloader-source@<storage-account>.dfs.core.windows.net/json-data")
  .writeStream
  .option("checkpointLocation", checkpoint_path)
  .trigger(availableNow=True)
  .toTable("dev_catalog.dev_database.dev_table"))