Compartir a través de


Configuración del catálogo de Delta Lake

Importante

Azure HDInsight en AKS se retiró el 31 de enero de 2025. Conozca más sobre a través de este anuncio.

Debe migrar las cargas de trabajo a microsoft Fabric o un producto equivalente de Azure para evitar la terminación repentina de las cargas de trabajo.

Importante

Esta característica está actualmente en versión preliminar. Los Términos de uso complementarios para las versiones preliminares de Microsoft Azure incluyen más términos legales que se aplican a las características de Azure que se encuentran en versión beta, en versión preliminar o, de lo contrario, aún no se han publicado en disponibilidad general. Para obtener información sobre esta versión preliminar específica, consulte información de la versión preliminar de Azure HDInsight en AKS. Para preguntas o sugerencias de características, envíe una solicitud en AskHDInsight con los detalles y siganos para obtener más actualizaciones sobre comunidad de Azure HDInsight.

En este artículo se proporciona información general sobre cómo configurar el catálogo de Delta Lake en el clúster de Trino con HDInsight en AKS. Puede agregar un nuevo catálogo actualizando la plantilla de ARM del clúster, excepto el catálogo de Hive, que puede agregar durante creación de clústeres de Trino en Azure Portal.

Prerrequisitos

Pasos para configurar el catálogo de Delta Lake

  1. Configurar el metastore de Hive para las definiciones y ubicaciones de tabla si no tiene ya configurado un metastore.

    Configure la base de datos de metastore externa de Hive y el directorio de almacenamiento predeterminado en config.properties archivo (más información sobre configuración de 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 debe coincidir con el valor proporcionado en hive.metastore.hdi.metastoreDbConnectionPasswordSecret

  2. Actualice la plantilla de ARM del clúster para agregar un nuevo archivo de configuración de catálogo de Delta Lake. Esta configuración debe definirse en serviceConfigsProfiles dentro de la propiedad clusterProfile de la plantilla de ARM.

    Propiedad Valor Descripción
    Nombre de archivo delta.properties Nombre del archivo de catálogo. Si el archivo se denomina delta.properties, delta se convierte en el nombre del catálogo.
    connector.name delta_lake Tipo del catálogo. Para Delta Lake, el tipo de catálogo debe ser delta_lake
    hive.metastore hdi Tipo de metastore de hive que se va a usar para este catálogo. Escriba hdi, indica al clúster que use el servicio Metastore de Hive en clúster, configurado anteriormente.
    delta.register-table-procedure.enabled verdadero Necesario para permitir que se registren tablas externas.

    Consulte documentación de Trino para ver otras opciones de configuración 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. Asigne el rol Storage Blob Data Owner a la MSI asignada por el usuario del clúster en la cuenta de almacenamiento que contiene las tablas delta. Obtenga información sobre cómo asignar un rol.

    • El nombre MSI asignado por el usuario aparece en la propiedad msiResourceId en el json del recurso del clúster.

Implemente la plantilla de ARM actualizada para reflejar los cambios en el clúster. Obtenga información sobre cómo implementar una plantilla de ARM.
Una vez implementado correctamente, usted puede ver el catálogo "delta" en el clúster de Trino.

Pasos siguientes

leer tablas de Delta Lakes (Synapse o ubicación externa)