Partilhar via


Configurar catálogo Delta Lake

Nota

Vamos desativar o Azure HDInsight no AKS em 31 de janeiro de 2025. Antes de 31 de janeiro de 2025, você precisará migrar suas cargas de trabalho para o Microsoft Fabric ou um produto equivalente do Azure para evitar o encerramento abrupto de suas cargas de trabalho. Os clusters restantes na sua subscrição serão interrompidos e removidos do anfitrião.

Apenas o apoio básico estará disponível até à data da reforma.

Importante

Esta funcionalidade está atualmente em pré-visualização. Os Termos de Utilização Suplementares para Pré-visualizações do Microsoft Azure incluem mais termos legais que se aplicam a funcionalidades do Azure que estão em versão beta, em pré-visualização ou ainda não disponibilizadas para disponibilidade geral. Para obter informações sobre essa visualização específica, consulte Informações de visualização do Azure HDInsight no AKS. Para perguntas ou sugestões de recursos, envie uma solicitação no AskHDInsight com os detalhes e siga-nos para obter mais atualizações na Comunidade do Azure HDInsight.

Este artigo fornece uma visão geral de como configurar o catálogo Delta Lake em seu cluster Trino com o HDInsight no AKS. Você pode adicionar um novo catálogo atualizando seu modelo ARM de cluster, exceto o catálogo hive, que pode ser adicionado durante a criação do cluster Trino no portal do Azure.

Pré-requisitos

Etapas para configurar o catálogo Delta Lake

  1. Configure o metastore do Hive para definições de tabela e locais se você não tiver um metastore já configurado.

    Configure o banco de dados de metastore externo do Hive e o diretório de armazenamento padrão no config.properties arquivo (mais informações sobre a configuração do Trino):

    "serviceConfigsProfiles": [
        {
            "serviceName": "trino",
            "configs": [
                {
                    "component": "common",
                    "files": [
                        {
                            "fileName": "config.properties",
                            "values": {
                                "hive.metastore.hdi.metastoreDbConnectionURL": "jdbc:sqlserver://{{DATABASE_SERVER}}.database.windows.net;database={{DATABASE_NAME}};encrypt=true;trustServerCertificate=true;create=false;loginTimeout=30",
                                "hive.metastore.hdi.metastoreDbConnectionUserName": "{{DATABASE_USER_NAME}}",
                                "hive.metastore.hdi.metastoreDbConnectionPasswordSecret": "{{SECRET_REFERENCE_NAME}}",
                                "hive.metastore.hdi.metastoreWarehouseDir": "abfs://{{AZURE_STORAGE_CONTAINER}}@{{AZURE_STORAGE_ACCOUNT_NAME}}.dfs.core.windows.net/hive/warehouse"
                            }
                        }
                    ]
                }
            ]
        }
    ]
    "secretsProfile": {
            "keyVaultResourceId": "/subscriptions/{USER_SUBSCRIPTION_ID}/resourceGroups/{USER_RESOURCE_GROUP}/providers/Microsoft.KeyVault/vaults/{USER_KEYVAULT_NAME}",
            "secrets": [
                {
                    "referenceName": "{{SECRET_REFERENCE_NAME}}",
                    "type": "Secret",
                    "keyVaultObjectName": "myCredSecret"
                }                        ]
        },
    

    Nota

    referenceName deve corresponder ao valor fornecido em hive.metastore.hdi.metastoreDbConnectionPasswordSecret

  2. Atualize seu modelo ARM de cluster para adicionar um novo arquivo de configuração do catálogo Delta Lake. Essa configuração precisa ser definida na serviceConfigsProfiles propriedade under clusterProfile do modelo ARM.

    Property valor Description
    fileName delta.propriedades Nome do arquivo de catálogo. Se o arquivo for chamado delta.properties, delta torna-se o nome do catálogo.
    connector.name delta_lake O tipo do catálogo. Para Delta Lake, o tipo de catálogo deve ser delta_lake
    hive.metastore IDH Tipo de metastore do hive a ser usado para este catálogo. Tipo hdi, ele instrui o cluster a usar o serviço Hive Metastore no cluster, configurado acima.
    delta.register-table-procedure.enabled verdadeiro Necessário para permitir que tabelas externas sejam registradas.

    Consulte a documentação do Trino para obter outras opções de configuração do lago delta.

    "serviceConfigsProfiles": [
    {
        "serviceName": "trino",
        "configs": [
            {
                "component": "catalogs",
                "files": [
                            {
                                "fileName": "delta.properties",
                                "values": {
                                    "connector.name": "delta_lake",
                                    "hive.metastore": "hdi",
                                    "delta.register-table-procedure.enabled": "true"
                                }
                            }
       ]
    
    ...
    
  3. Atribua a função ao MSI atribuído pelo Storage Blob Data Owner usuário do cluster na conta de armazenamento que contém as tabelas delta. Saiba como atribuir uma função.

    • O nome MSI atribuído pelo usuário é listado msiResourceId na propriedade no recurso JSON do cluster.

Implante o modelo ARM atualizado para refletir as alterações no cluster. Saiba como implantar um modelo ARM.
Uma vez implantado com sucesso, você pode ver o catálogo "delta" em seu cluster Trino.

Próximos passos

Leia as tabelas Delta Lakes (Sinapse ou Localização Externa)