Compartilhar via


Usar Carregador Automático com o Catálogo do Unity

O Carregador Automático pode ingerir dados com segurança de locais externos configurados com o Catálogo do Unity. Para saber mais sobre como conectar o armazenamento com segurança ao Catálogo do Unity, consulte Conectar-se ao armazenamento de objetos de nuvem usando o Catálogo do Unity. O Carregador Automático depende do fluxo estruturado para processamento incremental. Para obter recomendações e limitações, consulte Usar o Catálogo do Unity com o fluxo estruturado.

Observação

No Databricks Runtime 11.3 LTS e posteriores, você pode usar o Auto Loader com modos de acesso padrão ou dedicados (anteriormente chamados de modos de acesso compartilhado e de usuário único).

Por padrão, há suporte ao modo de listagem de diretórios. O modo de notificação de arquivo só tem suporte na computação com modo de acesso dedicado.

Ingerir dados de locais externos gerenciados pelo Catálogo do Unity com o Carregador Automático

Você pode usar o Carregador Automático para ingerir dados de todo local externo gerenciado pelo Catálogo do Unity. Você deve ter permissões READ FILES no local externo.

Observação

O Azure Data Lake Storage é o único tipo de armazenamento do Azure compatível com o Catálogo do Unity.

Especificar locais dos recursos do Carregador Automático para o Catálogo do Unity

O modelo de segurança do Catálogo do Unity considera que todos os locais de armazenamento referenciados em uma carga de trabalho são gerenciados pelo Catálogo do Unity. O Databricks recomenda sempre armazenar informações de evolução de esquema e ponto de verificação em locais de armazenamento gerenciados pelo Catálogo do Unity. O Catálogo do Unity não permite aninhar arquivos de inferência e evolução de esquema ou ponto de verificação no diretório de tabela.

Exemplos

Os exemplos a seguir consideram que o usuário da execução tem privilégios de proprietário nas tabelas de destino e as seguintes configurações e concessões:

Local de armazenamento Conceder
abfss://autoloader-source@<storage-account>.dfs.core.windows.net/json-data LER ARQUIVOS
abfss://dev-bucket@<storage-account>.dfs.core.windows.net LER ARQUIVOS, GRAVAR ARQUIVOS, CREATE TABLE

Usar o Carregador Automático para carregar em uma tabela gerenciada do Catálogo do Unity

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"))