Compartir vía


Acceso a datos de Databricks mediante sistemas externos

En este artículo se proporciona información general sobre la funcionalidad y las recomendaciones para que los datos se administren y se rigen por Azure Databricks estén disponibles para otros sistemas.

Estos patrones se centran en escenarios en los que su organización necesita integrar herramientas o sistemas de confianza en los datos de Azure Databricks. Si busca instrucciones sobre el uso compartido de datos fuera de su organización, consulte Uso compartido de datos y recursos de inteligencia artificial de forma segura con los usuarios de otras organizaciones.

¿Qué acceso externo admite Azure Databricks?

Azure Databricks recomienda usar Unity Catalog para controlar todos los recursos de datos.

En la tabla siguiente se proporciona información general sobre los formatos de compatibilidad y los patrones de acceso para objetos de Catálogo de Unity.

Objeto de Unity Catalog Formatos admitidos Patrones de acceso
Tablas administradas Delta Lake, Iceberg Distribución de credenciales, catálogo REST de Iceberg, Delta Sharing
Tablas externas Delta Lake Dispensación de credenciales, Catálogo REST de Iceberg, Compartición Delta, URIs de la nube
Tablas externas CSV, JSON, Avro, Parquet, ORC, text URI en la nube
Volúmenes externos Todos los tipos de datos URI en la nube

Nota

El soporte de Iceberg describe las tablas escritas por Azure Databricks mediante Delta Lake, pero con las lecturas de Iceberg (UniForm) habilitadas.

Para obtener más información sobre estos objetos de catálogo de Unity, consulte lo siguiente:

Suministro de credenciales de Unity Catalog

La asignación de credenciales de Unity Catalog permite a los usuarios configurar clientes externos para heredar privilegios en los datos que gestiona Azure Databricks. Consulta Suministro de credenciales de Unity Catalog para obtener acceso al sistema externo.

Lectura de tablas con clientes de Iceberg

Azure Databricks proporciona compatibilidad de solo lectura a los clientes de Iceberg para las tablas registradas en Unity Catalog. Los clientes admitidos incluyen Apache Spark, Apache Flink, Trino y Snowflake. Consulta Lectura de tablas de Databricks desde clientes de Iceberg.

Uso compartido de tablas de solo lectura entre dominios

Puede usar Delta Sharing para conceder acceso de solo lectura a tablas delta administradas o externas entre dominios y sistemas admitidos. Los sistemas de software que admiten lecturas sin copia de tablas delta Sharing incluyen SAP, Amperity y Oracle. Ver Uso compartido de datos y activos de inteligencia artificial de forma segura con los usuarios de otras organizaciones.

Nota

También puede usar Delta Sharing para conceder acceso de solo lectura a los clientes o asociados. Delta Sharing también respalda los datos compartidos mediante el Marketplace de Databricks.

Lectura y escritura de tablas delta externas

Puede acceder a las tablas externas del catálogo de Unity respaldadas por Delta Lake desde clientes externos de lector y escritor de Delta Lake mediante URI y credenciales de almacenamiento de objetos en la nube.

El catálogo de Unity no rige las lecturas y escrituras realizadas directamente en el almacenamiento de objetos en la nube desde sistemas externos, por lo que debe configurar directivas y credenciales adicionales en la cuenta en la nube para asegurarse de que las directivas de gobernanza de datos se respetan fuera de Azure Databricks.

Nota

En la documentación de Azure Databricks se enumeran las limitaciones y las consideraciones de compatibilidad basadas en las versiones y características de plataforma de Databricks Runtime. Debe confirmar qué protocolos de lectura y escritura y características de tabla admite el cliente. Consulta delta.io.

Acceder a datos tabulares que no son de Delta Lake con tablas externas

Las tablas externas del catálogo de Unity admiten muchos formatos distintos de Delta Lake, incluidos Parquet, ORC, CSV y JSON. Las tablas externas almacenan todos los archivos de datos en directorios en una ubicación de almacenamiento de objetos en la nube especificada por un URI de nube proporcionado durante la creación de la tabla. Otros sistemas acceden a estos archivos de datos directamente desde el almacenamiento de objetos en la nube.

El catálogo de Unity no rige las lecturas y escrituras realizadas directamente en el almacenamiento de objetos en la nube desde sistemas externos, por lo que debe configurar directivas y credenciales adicionales en la cuenta en la nube para asegurarse de que las directivas de gobernanza de datos se respetan fuera de Azure Databricks.

La lectura y escritura en tablas externas de varios sistemas puede provocar problemas de coherencia y daños en los datos, ya que no se proporcionan garantías transaccionales para formatos distintos de Delta Lake.

Es posible que el catálogo de Unity no seleccione nuevas particiones escritas en tablas externas respaldadas por formatos distintos de Delta Lake. Databricks recomienda ejecutar periódicamente MSCK REPAIR TABLE table_name para asegurarse de que el Catálogo de Unity haya registrado todos los archivos de datos escritos por sistemas externos.

Acceder a datos no tabulares con volúmenes externos

Databricks recomienda usar volúmenes externos para almacenar archivos de datos no tabulares leídos o escritos por sistemas externos además de Azure Databricks. Consulta ¿Qué son los volúmenes de Unity Catalog?.

El catálogo de Unity no rige las lecturas y escrituras realizadas directamente en el almacenamiento de objetos en la nube desde sistemas externos, por lo que debe configurar directivas y credenciales adicionales en la cuenta en la nube para asegurarse de que las directivas de gobernanza de datos se respetan fuera de Azure Databricks.

Volúmenes proporciona API, SDK y otras herramientas para obtener archivos de los volúmenes y colocarlos en ellos. Consulta Administración de archivos en volúmenes.

Nota

Delta Sharing permite compartir volúmenes con otras cuentas de Azure Databricks, pero no se integra con sistemas externos.