Compartilhar via


Configurações de acesso a dados

Importante

Essas instruções se aplicam a padrões de acesso a dados herdados. A Databricks recomenda usar locais externos do Unity Catalog para acesso a dados. ConsulteConectar-se ao armazenamento de objetos de nuvem usando o Catálogo do Unity.

Este artigo descreve como gerenciar propriedades de acesso a dados para SQL warehouses em um espaço de trabalho.

Importante

A alteração dessas configurações reinicia todos os SQL warehouses em execução.

Configurar uma entidade de serviço

Para configurar o acesso dos seus SQL Warehouses a uma conta de armazenamento do Azure Data Lake Storage usando principais de serviço, siga estas etapas:

  1. Registre um aplicativo do Microsoft Entra ID (antigo Azure Active Directory) e registre as seguintes propriedades:

    • ID do aplicativo (cliente): uma ID que identifica exclusivamente o aplicativo do Microsoft Entra ID.
    • ID de diretório (locatário): uma ID que identifica exclusivamente a instância do Microsoft Entra ID (chamada de ID de diretório (locatário) no Azure Databricks).
    • Segredo do cliente: o valor de um segredo do cliente criado para este registro de aplicativo. O aplicativo usará essa cadeia de caracteres secreta para provar sua identidade.
  2. Na sua conta de armazenamento, adicione uma atribuição de função para o aplicativo registrado na etapa anterior para ele ter acesso à conta de armazenamento.

  3. Crie um escopo secreto com suporte do Azure Key Vault ou com escopo do Databricks, consulte Gerenciar escopos de segredo e registre o valor da propriedade de nome do escopo:

    • Nome do escopo: o nome do escopo de segredo criado.
  4. Se estiver usando o Azure Key Vault, crie um segredo no Azure Key Vault, usando o segredo do cliente no campo Valor. Para obter um exemplo, consulte Etapa 4: Adicionar o segredo do cliente ao Azure Key Vault. Mantenha um registro do nome secreto que você escolheu.

    • Nome do segredo: o nome do segredo do Azure Key Vault criado.
  5. Se estiver usando um escopo com suporte do Databricks, crie um novo segredo usando a CLI do Databricks e use-o para armazenar o segredo do cliente obtido na Etapa 1. Mantenha um registro da chave secreta que você inseriu nesta etapa.

    • Chave secreta: a chave do segredo criado com o backup do Databricks.

    Observação

    Opcionalmente, você pode criar um segredo adicional para armazenar a ID do cliente obtida na Etapa 1.

  6. Clique no nome de usuário na barra superior do workspace e selecione Configurações na lista suspensa.

  7. Clique na guia Computação.

  8. Clique em Gerenciar ao lado de SQL warehouses.

  9. No campo Configuração de Acesso a Dados, clique no botão Adicionar Entidade de Serviço.

  10. Configure as propriedades para sua conta de armazenamento do Azure Data Lake Storage.

  11. Clique em Adicionar.

    Conta de armazenamento do ADLS2

    Você notará que novas entradas foram adicionadas à caixa de texto Configuração de Acesso aos Dados.

  12. Clique em Save (Salvar).

Você também pode editar diretamente as entradas da caixa de texto Configuração de Acesso aos Dados.

Configurar propriedades de acesso a dados para SQL warehouses

Para configurar todos os warehouses com propriedades de acesso a dados:

  1. Clique no nome de usuário na barra superior do workspace e selecione Configurações na lista suspensa.

  2. Clique na guia Computação.

  3. Clique em Gerenciar ao lado de SQL warehouses.

  4. Na caixa de texto Configuração de Acesso a Dados, especifique pares de chave-valor que contenham propriedades do metastore.

    Importante

    Para definir uma propriedade de configuração do Spark com o valor de um segredo sem expor esse valor ao Spark, defina o valor como {{secrets/<secret-scope>/<secret-name>}}. Substitua <secret-scope> pelo escopo do segredo e <secret-name> pelo nome do segredo. O valor deve começar com {{secrets/ e terminar com }}. Para obter mais informações sobre essa sintaxe, consulte Gerenciar segredos.

  5. Clique em Save (Salvar).

Você também pode configurar propriedades de acesso a dados usando o provedor Terraform do Databricks e databricks_sql_global_config.

Propriedades com suporte

  • Para uma entrada que termine com *, todas as propriedades nesse prefixo têm suporte.

    Por exemplo, spark.sql.hive.metastore.* indica que há suporte para spark.sql.hive.metastore.jars e spark.sql.hive.metastore.version, e também para quaisquer outras propriedades iniciadas com spark.sql.hive.metastore.

  • Para propriedades cujos valores contêm informações confidenciais, você pode armazenar as informações confidenciais em um segredo e definir o valor da propriedade como o nome do segredo usando a seguinte sintaxe: secrets/<secret-scope>/<secret-name>.

As propriedades a seguir têm suporte para SQL warehouses:

  • spark.sql.hive.metastore.*

  • spark.sql.warehouse.dir

  • spark.hadoop.datanucleus.*

  • spark.hadoop.fs.*

  • spark.hadoop.hive.*

  • spark.hadoop.javax.jdo.option.*

  • spark.hive.*

Para obter mais informações sobre como definir essas propriedades, confira Metastore do Hive externo.