Compartir vía


Adición de un recurso de conexión de Catálogo de Unity a una aplicación de Databricks

Agregue conexiones de Unity Catalog como recursos de las Apps de Databricks para habilitar el acceso seguro a servicios externos y fuentes de datos. Las conexiones del catálogo de Unity administran las credenciales y los detalles de autenticación, por lo que no es necesario codificar las credenciales de forma rígida en el código de la aplicación.

Añadir un recurso de conexión de Unity Catalog

Antes de agregar una conexión de Catálogo de Unity como recurso, revise los requisitos previos del recurso de la aplicación.

  1. Al crear o editar una aplicación, vaya al paso Configurar .
  2. En la sección Recursos de la aplicación, haga clic en + Agregar recurso.
  3. Seleccione Conexión UC como tipo de recurso.
  4. Elija una conexión de Catálogo de Unity en la lista de conexiones disponibles en el área de trabajo.
  5. Seleccione el nivel de permiso de la aplicación:
    • Usar conexión: Concede permiso a la aplicación para usar la conexión para acceder a los servicios externos. Corresponde al USE CONNECTION privilegio.
  6. (Opcional) Especifique una clave de recurso personalizada, que es la forma en que hace referencia a la conexión en la configuración de la aplicación. La clave predeterminada es connection.

Al añadir un recurso de conexión del Catálogo de Unity:

  • Azure Databricks concede al principal de servicio de la aplicación el USE CONNECTION privilegio en la conexión seleccionada.
  • La aplicación puede acceder a servicios externos sin administrar las credenciales directamente.
  • El catálogo de Unity administra de forma segura las credenciales de conexión y no se expone al código de la aplicación.

Variables de entorno

Al implementar una aplicación con un recurso de conexión de Catálogo de Unity, Azure Databricks expone el nombre de conexión a través de variables de entorno a las que puede hacer referencia mediante el valueFrom campo .

Configuración de ejemplo:

env:
  - name: UC_CONNECTION_NAME
    valueFrom: connection # Use your custom resource key if different

Uso de la conexión en la aplicación:

import os
from databricks.sdk import WorkspaceClient
from databricks.sdk.service.serving import ExternalFunctionRequestHttpMethod

# Access the connection name
connection_name = os.getenv("UC_CONNECTION_NAME")

# Initialize workspace client
w = WorkspaceClient()

# Make HTTP request through the connection
response = w.serving_endpoints.http_request(
    conn=connection_name,
    method=ExternalFunctionRequestHttpMethod.POST,
    path="/api/v1/resource",
    json={"key": "value"},
    headers={"extra_header_key": "extra_header_value"},
)

# Process the response
print(response)

Para obtener más información, consulte Uso de variables de entorno para acceder a los recursos.

Eliminar un recurso de conexión de Catálogo de Unity

Cuando se elimina un recurso de conexión de Unity Catalog de una aplicación, el principal de servicio de la aplicación pierde el acceso a la conexión. La propia conexión permanece sin cambios y sigue estando disponible para otros usuarios y aplicaciones que tienen los permisos adecuados.

procedimientos recomendados

Tenga en cuenta lo siguiente cuando trabaje con los recursos de conexión del catálogo de Unity:

  • Implemente la lógica de control de errores y reintento para errores de conexión y problemas de red.
  • Supervise los tiempos de respuesta de la API y la latencia de conexión, especialmente para las solicitudes entre regiones o entre nubes.
  • Considere los costos de salida de datos al realizar solicitudes a servicios externos, especialmente para cargas grandes o llamadas API de gran volumen.
  • Revise y gire periódicamente las credenciales de conexión según las directivas de seguridad.
  • Valide las respuestas de API e implemente los valores de tiempo de espera adecuados para las llamadas de servicio externos.