Teilen über


Konfigurieren des Delta Lake-Katalogs

Wichtig

Diese Funktion steht derzeit als Vorschau zur Verfügung. Die zusätzlichen Nutzungsbedingungen für Microsoft Azure-Vorschauen enthalten weitere rechtliche Bestimmungen, die für Azure-Features in Betaversionen, in Vorschauversionen oder anderen Versionen gelten, die noch nicht allgemein verfügbar gemacht wurden. Informationen zu dieser spezifischen Vorschau finden Sie unter Informationen zur Vorschau von Azure HDInsight on AKS. Bei Fragen oder Funktionsvorschlägen senden Sie eine Anfrage an AskHDInsight mit den entsprechenden Details, und folgen Sie uns für weitere Updates in der Azure HDInsight-Community.

Dieser Artikel enthält eine Übersicht über das Konfigurieren des Delta Lake-Katalogs in Ihrem Trino-Cluster mit HDInsight on AKS. Sie können einen neuen Katalog hinzufügen, indem Sie Ihre Cluster-ARM-Vorlage – außer dem Hive-Katalog – aktualisieren, den Sie während der Trino-Clustererstellung im Azure-Portal hinzufügen können.

Voraussetzungen

Schritte zum Konfigurieren des Delta Lake-Katalogs

  1. Konfigurieren Sie den Hive-Metastore für Tabellendefinitionen und Speicherorte, wenn Sie noch keinen Metastore konfiguriert haben.

    Konfigurieren der externen Hive-Metastore-Datenbank und des Standardspeicherverzeichnisses in der config.properties Datei (weitere Informationen zur Trino-Konfiguration):

    "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"
                }                        ]
        },
    

    Hinweis

    referenceName sollte dem Wert entsprechen, der in hive.metastore.hdi.metastoreDbConnectionPasswordSecret bereitgestellt ist

  2. Aktualisieren Sie Ihre Cluster-ARM-Vorlage, um eine neue Delta Lake-Katalogkonfigurationsdatei hinzuzufügen. Diese Konfiguration muss in serviceConfigsProfiles unter der clusterProfile-Eigenschaft der ARM-Vorlage definiert werden.

    Eigenschaft Wert Beschreibung
    fileName delta.properties Name der Katalogdatei. Wenn die Datei mit delta.properties benannt ist, wird delta der Katalogname.
    connector.name delta_lake Der Typ des Katalogs. Für Delta Lake muss der Katalogtyp delta_lake sein
    hive.metastore hdi Typ des Hive-Metastores, der für diesen Katalog verwendet werden soll. Typ hdi, weist den Cluster an, den oben konfigurierten Hive Metastore-Dienst im Cluster zu verwenden.
    delta.register-table-procedure.enabled true Erforderlich, damit externe Tabellen registriert werden können.

    Weitere Konfigurationsoptionen für Delta Lakes finden Sie in der Trino-Dokumentation.

    "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. Weisen Sie die Storage Blob Data Owner-Rolle ihrem clusterbenutzerzugewiesenen MSI im Speicherkonto zu, das die Delta-Tabellen enthält. Erfahren Sie, wie Sie eine Rolle zuweisen.

    • Der dem Benutzer zugewiesene MSI-Name wird in der msiResourceId-Eigenschaft im Ressourcen-JSON des Clusters aufgeführt.

Stellen Sie die aktualisierte ARM-Vorlage bereit, um die Änderungen in Ihrem Cluster widerzuspiegeln. Erfahren Sie, wie Sie eine ARM-Vorlage bereitstellen.
Nach der erfolgreichen Bereitstellung können Sie den „delta“-Katalog in Ihrem Trino-Cluster sehen.

Nächste Schritte

Lesen von Delta Lakes-Tabellen (Synapse oder externer Standort)