Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O Auto Loader pode ingerir dados de locais externos configurados de forma segura com o Unity Catalog. Para saber mais sobre como conectar o armazenamento com segurança ao Unity Catalog, consulte Conectar-se ao armazenamento de objetos na nuvem usando o Unity Catalog. O Auto Loader depende do Structured Streaming para processamento incremental; para obter recomendações e limitações, consulte Usando o catálogo Unity com streaming estruturado.
Nota
Nos Databricks Runtime 11.3 LTS e versões superiores, pode usar o Auto Loader com modos de acesso normal ou dedicados, anteriormente conhecidos como modos de acesso partilhado e de utilizador único.
O modo de listagem de diretório é suportado por padrão. O modo de notificação de ficheiros só é suportado em computação com acesso dedicado.
Especificar localizações para recursos do Auto Loader para o Catálogo Unity
O modelo de segurança do Unity Catalog pressupõe que todos os locais de armazenamento referenciados em uma carga de trabalho serão gerenciados pelo Unity Catalog. O Databricks recomenda sempre armazenar informações de ponto de verificação e evolução do esquema em locais de armazenamento gerenciados pelo Unity Catalog. O Unity Catalog não permite inserir ficheiros de ponto de verificação ou de inferência e evolução de esquema no diretório da tabela.
Ingerir dados do armazenamento na cloud usando o Unity Catalog
Os exemplos seguintes assumem que o utilizador executante tem READ FILES permissões sobre a localização externa, privilégios de proprietário nas tabelas de destino e as seguintes configurações e concessões.
Nota
O Armazenamento Azure Data Lake é o único tipo de armazenamento do Azure suportado pelo Catálogo Unity.
| Localização de armazenamento | Subvenção |
|---|---|
abfss://autoloader-source@<storage-account>.dfs.core.windows.net/json-data |
READ FILES |
abfss://dev-bucket@<storage-account>.dfs.core.windows.net |
READ FILES, WRITE FILES, CREATE TABLE |
Use o Auto Loader para carregar numa tabela gerida pelo Unity Catalog
Os exemplos seguintes demonstram como usar o Auto Loader para ingerir dados numa tabela gerida pelo Unity Catalog.
Python
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"))
SQL
CREATE OR REFRESH STREAMING TABLE dev_catalog.dev_database.dev_table
AS SELECT * FROM STREAM read_files(
'abfss://autoloader-source@<storage-account>.dfs.core.windows.net/json-data',
format => 'json'
);
Quando utiliza uma instrução read_files dentro de um pipeline "Lakeflow Spark Declarative Pipelines", as localizações de checkpoint e de esquema são geridas automaticamente.