Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Importante
Esta característica se encuentra en su versión beta. Para usarlo, un administrador de espacio de trabajo debe activar Workday Data Connect Connector desde la página de Previsualizaciones . Consulte Administrar versiones preliminares de Azure Databricks.
Utiliza la federación de catálogos de Workday Data Connect para leer las tablas de Workday Data Connect directamente desde almacenamiento en la nube y añadirlas al Catálogo de Unity como tablas extranjeras. Las consultas se ejecutan completamente en Azure Databricks compute, por lo que los equipos de datos pueden descubrir, gobernar y consultar estas tablas desde Azure Databricks sin necesidad de construir pipelines ETL. El acceso a datos es de solo lectura.
Azure Databricks se autentica en el catálogo Workday Data Connect como un usuario de sistema de integración de Workday (ISU) que registras como principal, mediante OAuth con una clave privada.
Workday llama a este producto Workday Data Lake. La documentación de socios, incluida esta página, la denomina Workday Data Connect.
Para saber más sobre la federación de catálogos, consulta ¿Qué es la federación por catálogo?.
Note
Este conector no ingirte ni copia datos en Azure Databricks, y no está relacionado con los conectores de ingestión de Lakeflow Connect para Workday. Para incorporar datos de Workday en Azure Databricks en su lugar, consulta el conector Workday Reports o el conector Workday HCM.
Requirements
Revisa los siguientes requisitos antes de configurar la federación del catálogo Workday Data Connect.
Requisitos del área de trabajo:
- El área de trabajo debe estar habilitada para el catálogo de Unity. Consulte Introducción al catálogo de Unity.
Requisitos de proceso:
- La instancia de proceso de Azure Databricks debe utilizar Databricks Runtime 19.8 o superior y el modo de acceso estándar. No se admite el modo de acceso dedicado.
Requisitos de red:
- Conectividad de red desde Azure Databricks hasta tu endpoint del catálogo Workday Data Connect en
https://<workday-host>/api/catalog. No necesitas permitir incluir direcciones IP de Azure Databricks en Workday.
Permisos necesarios:
- Para crear una conexión, debe ser administrador del metastore o usuario con el privilegio
CREATE CONNECTIONen el metastore de Unity Catalog adjunto al área de trabajo. - Para crear un catálogo externo, debe tener el permiso
CREATE CATALOGen el metastore, y ser el propietario de la conexión o tener el privilegioCREATE FOREIGN CATALOGen la conexión.
Requisitos para la jornada laboral:
- Workday Data Connect está habilitado en tu entorno de Workday, con las tablas que quieres consultar compartidas a través de su catálogo REST de Iceberg. Consulta Comienza con Workday Data Lake.
- Un usuario del Sistema de Integración Workday (ISU) registrado como principal en el catálogo Workday Data Connect, un rol principal para esa ISU que concede acceso de lectura a las tablas compartidas, y un par de claves RSA para ese principal. Para registrar el cliente API, consulte Registrar API Client for Data Lake (JWT Bearer Grant).
Paso 1: Crear una conexión
Una conexión especifica el endpoint y las credenciales que Azure Databricks utiliza para comunicarse con el catálogo Workday Data Connect.
Para crear una conexión, utiliza el Explorador de Catálogos o el CREATE CONNECTION comando SQL:
Explorador de catálogos
Para crear la conexión:
- En el área de trabajo de Azure Databricks, haga clic en
Catalog.
- En la parte superior del panel Catálogo, haga clic en el
y seleccione Crear una conexión en el menú. - En la página de conceptos básicos de Conexión , introduce un nombre de Conexión.
- Seleccione un tipo de conexión de Workday Data Connect.
- Haga clic en Siguiente.
- En la página de detalles de la conexión , introduzca los siguientes valores:
-
Host: El nombre de host del punto de conexión de Workday Data Connect, por ejemplo,
mycompany.myworkday.com - Tenant: Tu tenant de Workday.
- ID de cliente: ID de cliente del cliente de Workday API.
- Clave privada: Una clave privada RSA en formato PEM.
- Nombre de la entidad principal: El nombre de la ISU que registraste como entidad principal del catálogo.
-
Rol principal: El rol principal de Workday que supervisa el acceso de lectura a las tablas compartidas. El valor predeterminado es
ALL. Para restringir el acceso, establece un rol específico, por ejemploall-reads-role.
-
Host: El nombre de host del punto de conexión de Workday Data Connect, por ejemplo,
SQL
Ejecute el comando siguiente en un cuaderno o en el editor de consultas SQL de Databricks:
CREATE CONNECTION <connection-name> TYPE WORKDAY_DATA_CONNECT
OPTIONS (
host '<workday-host>',
tenant '<workday-tenant>',
client_id '<client-id>',
private_key secret('<secret-scope>','<secret-key>'),
principal_name '<isu-name>',
principal_role '<principal-role>'
);
-
host: El nombre del host del extremo de Workday Data Connect, por ejemplo,mycompany.myworkday.com. -
tenant: Tu tenant de Workday. -
client_id: ID del cliente del cliente de la API Workday. -
private_key: Una clave privada RSA en formato PEM. Databricks recomienda que lo almacenes como un secreto. -
principal_name: El nombre de la ISU que registraste como principal del catálogo. -
principal_role: El rol principal de Workday que delimita el acceso de lectura a las tablas compartidas. El valor predeterminado esALL. Para restringir el acceso, establece un rol específico, por ejemploall-reads-role.
Databricks recomienda usar secretos en lugar de cadenas de texto plano para valores sensibles como la clave privada. Para información sobre cómo crear secretos, véase Gestión de secretos.
Paso 2: Crear un catálogo extranjero
Un catálogo extranjero refleja el catálogo de Workday Data Connect en el Catálogo de Unity para que puedas usar el Catálogo de Unity para gestionar el acceso a las tablas de Workday y consultarlas desde el cálculo de Azure Databricks.
Para crear un catálogo extranjero, puedes usar Catalog Explorer, el CREATE FOREIGN CATALOG comando SQL en un cuaderno o el editor de consultas SQL de Databricks.
Explorador de catálogos
- En el área de trabajo de Azure Databricks, haga clic en
Catalog.
- En la parte superior del panel Catálogo, haga clic en el
y seleccione Crear un catálogo en el menú. - En el cuadro de diálogo Crear un nuevo catálogo , introduce un nombre para el catálogo.
- Seleccione un tipo de foráneo.
- Selecciona la conexión que creaste en el Paso 1.
- Para la ubicación de almacenamiento, introduce la ruta de almacenamiento en la nube donde Azure Databricks almacena metadatos para las tablas federadas.
- Haga clic en Crear.
SQL
Ejecute el siguiente comando en un cuaderno o en el editor de consultas de Databricks SQL. Los elementos entre corchetes son opcionales.
CREATE FOREIGN CATALOG [IF NOT EXISTS] <catalog-name>
USING CONNECTION <connection-name>
OPTIONS (storage_root '<storage-root-path>');
-
storage_root:Obligatorio. Una ruta de ubicación externa en la que Azure Databricks pueda escribir. Azure Databricks utiliza esta ubicación para almacenar metadatos de las tablas federadas. Los datos de las tablas Workday no se copian a esta ubicación.
El catálogo extranjero siempre refleja todo el catálogo de Workday Data Connect al que tus credenciales otorgan acceso. Para reducir lo que es visible, configura una principal_role que conceda acceso de lectura solo a las tablas que quieres cuando crees la conexión.
Paso 3: Conceder permisos y consultar el catálogo
Después de crear el catálogo extranjero, los usuarios necesitan los permisos apropiados del Catálogo de Unity para acceder a las tablas federadas:
- Todos los usuarios necesitan
USE CATALOGyUSE SCHEMApermisos en el catálogo y el esquema, respectivamente. - Para leer desde una tabla federada, los usuarios necesitan el
SELECTpermiso.
Para obtener más información sobre los privilegios del catálogo de Unity y cómo concederlos, consulte Administrar privilegios en el catálogo de Unity.
Por ejemplo, ejecuta los siguientes comandos en un cuaderno o en el editor de consultas SQL de Databricks:
GRANT USE CATALOG ON CATALOG <catalog-name> TO `<principal>`;
GRANT USE SCHEMA ON SCHEMA <catalog-name>.<schema-name> TO `<principal>`;
GRANT SELECT ON TABLE <catalog-name>.<schema-name>.<table-name> TO `<principal>`;
Los usuarios con estos permisos pueden entonces consultar las tablas federadas usando la notación de espacio de nombres de tres niveles:
SELECT * FROM <catalog-name>.<schema-name>.<table-name>;
Mapeo de espacios de nombres
Unity Catalog refleja la jerarquía de objetos Workday Data Connect de la siguiente manera:
| Objeto Workday Data Connect | Objeto de Unity Catalog |
|---|---|
| Catálogo | Catálogo externo |
| Namespace | Esquema |
| Tabla | Tabla externa |
Workday Data Connect presenta nombres planos con tres niveles que se corresponden uno a uno con la jerarquía de Unity Catalog catalog.schema.table. No hay anidación adicional en espacios de nombres.
Limitations
La federación de catálogos Workday Data Connect tiene las siguientes limitaciones:
- El conector solo puede acceder a las tablas Iceberg compartidas a través del catálogo Workday Data Connect.
- Los nombres de esquema y tabla siguen las restricciones de nomenclatura estándar de Unity Catalog. Azure Databricks no admite nombres que contengan un punto (
.), espacio () o barra diagonal (/). Consulte Requisitos de nomenclatura de objetos protegibles.