Partager via


Configurer le catalogue Delta Lake

Remarque

Nous allons mettre hors service Azure HDInsight sur AKS le 31 janvier 2025. Avant le 31 janvier 2025, vous devrez migrer vos charges de travail vers Microsoft Fabric ou un produit Azure équivalent afin d’éviter leur arrêt brutal. Les clusters restants de votre abonnement seront arrêtés et supprimés de l’hôte.

Seul le support de base sera disponible jusqu’à la date de mise hors service.

Important

Cette fonctionnalité est disponible actuellement en mode Aperçu. Les Conditions d’utilisation supplémentaires pour les préversions de Microsoft Azure contiennent davantage de conditions légales qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou ne se trouvant pas encore en disponibilité générale. Pour plus d’informations sur cette préversion spécifique, consultez les Informations sur la préversion d’Azure HDInsight sur AKS. Pour toute question ou pour des suggestions à propos des fonctionnalités, veuillez envoyer vos requêtes et leurs détails sur AskHDInsight, et suivez-nous sur la Communauté Azure HDInsight pour plus de mises à jour.

Cet article fournit une présentation de la façon de configurer le catalogue Delta Lake dans votre cluster Trino avec HDInsight sur AKS. Vous pouvez ajouter un nouveau catalogue en mettant à jour votre modèle ARM de cluster, à l'exception du catalogue ruche, que vous pouvez ajouter lors de la création du cluster Trino dans le Portail Microsoft Azure.

Prérequis

Étapes pour configurer le catalogue Delta Lake

  1. Configurez le metastore Hive pour les définitions et les emplacements de tables, si aucun metastore n’est déjà configuré.

    Configurez la base de données externe du metastore Hive et le répertoire de stockage par défaut dans le fichier config.properties (plus d’informations sur la configuration 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"
                }                        ]
        },
    

    Remarque

    referenceName doit correspondre à la valeur fournie dans hive.metastore.hdi.metastoreDbConnectionPasswordSecret

  2. Mettez à jour votre modèle ARM de cluster pour ajouter un nouveau fichier de configuration de catalogue Delta Lake. Cette configuration doit être définie dans serviceConfigsProfiles sous la propriété clusterProfile du modèle ARM.

    Propriété Valeur Description
    fileName delta.properties Nom du fichier catalogue. Si le fichier s'appelle delta.properties, delta devient le nom du catalogue.
    connector.name delta_lake Type du catalogue. Pour Delta Lake, le type de catalogue doit être delta_lake
    hive.metastore hdi Type de metastore Hive à utiliser pour ce catalogue. Tapez hdi, cela demande au cluster d’utiliser le service metastore Hive dans le cluster, configuré ci-dessus.
    delta.register-table-procedure.enabled true Obligatoire pour permettre l’enregistrement de tables externes.

    Consultez la documentation Trino pour d'autres options de configuration de Delta Lake.

    "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. Attribuez le rôle Storage Blob Data Owner au MSI attribué par l'utilisateur de votre cluster dans le compte de stockage contenant les tables delta. Découvrez comment attribuer un rôle.

    • Le nom MSI attribué par l’utilisateur est répertorié dans la propriété msiResourceId de la ressource JSON du cluster.

Déployez le modèle ARM mis à jour pour refléter les modifications apportées à votre cluster. Découvrez comment déployer un modèle ARM.
Une fois déployé avec succès, vous pouvez voir le catalogue « delta » dans votre cluster Trino.

Étapes suivantes

Lire les tableaux de Delta Lakes (Synapse ou emplacement externe)