Aller au contenu principal

Fédération de catalogues Workday Data Connect

info

Bêta

Cette fonctionnalité est en bêta. Pour l'utiliser, un administrateur du workspace doit activer Workday Data Connect Connector depuis la page Previews . Consultez Gérer les aperçus Databricks.

Utilisez la fédération de catalogues Workday Data Connect pour lire les tables Workday Data Connect directement à partir du stockage cloud et les ajouter à Unity Catalog en tant que tables externes. Les queries s’exécutent entièrement sur le compute Databricks, ce qui permet aux équipes de données de découvrir, de régir et d’interroger ces tables à partir de Databricks sans créer de pipelines ETL. L’accès aux données est en lecture seule.

Databricks s’authentifie auprès du catalogue Workday Data Connect en tant qu’utilisateur du système d’intégration Workday (ISU) que vous enregistrez en tant que principal, à l’aide d’OAuth avec une clé privée.

Workday appelle ce produit Workday Data Lake. La documentation partenaire, y compris cette page, désigne cet élément sous le nom de Workday Data Connect.

Pour en savoir plus sur la fédération de catalogues, consultez la page Qu’est-ce que la fédération de catalogues ?.

remarque

Ce connecteur n’ingère ni ne copie de données dans Databricks, et il n’est pas lié aux connecteurs d’ingestion Lakeflow Connect pour Workday. Pour ingérer des données Workday dans Databricks à la place, consultez la rubrique Workday Reports connector ou Workday HCM connector.

Avant de commencer​

Examinez les conditions suivantes avant de configurer la fédération de catalogues Workday Data Connect.

Exigences du Workspace :

Configuration requise pour le compute :

  • Le compute Databricks doit utiliser Databricks Runtime 19.8 ou version supérieure et le mode d’accès standard. Le mode d’accès dédié n’est pas pris en charge.

Exigences en matière de mise en réseau :

  • Connectivité réseau de Databricks vers votre endpoint de catalogue Workday Data Connect à l'adresse https://<workday-host>/api/catalog. Vous n'avez pas besoin d'ajouter les adresses IP de Databricks à la liste verte dans Workday.

Autorisations requises :

  • Pour créer une connexion, vous devez être administrateur de métastore ou utilisateur disposant du privilège CREATE CONNECTION sur le métastore Unity Catalog associé au Workspace.
  • Pour créer un catalogue externe, vous devez disposer de l'autorisation CREATE CATALOG sur le métastore et être le propriétaire de la connexion ou disposer du privilège CREATE FOREIGN CATALOG sur la connexion.

Exigences Workday :

  • Workday Data Connect activé pour votre tenant Workday, avec les tables que vous souhaitez interroger partagées via son catalogue REST Iceberg. Consultez la page Get Started with Workday Data Lake.
  • Un utilisateur du système d'intégration Workday (ISU) enregistré en tant que principal sur le catalogue Workday Data Connect, un rôle principal pour cet ISU qui accorde un accès en lecture aux tables partagées, et une paire de clés RSA pour ce principal. Pour enregistrer le client API, consultez Enregistrer le client API pour le data lake (octroi du porteur JWT).

Étape 1 : créer une connexion​

Une connexion spécifie l'Endpoint et les identifiants que Databricks utilise pour communiquer avec le catalogue Workday Data Connect.

Pour créer une connexion, utilisez l'Explorateur de catalogue ou la commande CREATE CONNECTION SQL :

Pour créer la connexion :

  1. Dans votre Workspace Databricks, cliquez sur Icône de données. Catalog .
  2. En haut du volet Catalog , cliquez sur l’icône Icône d’ajout ou plus plus et sélectionnez Create a connection dans le menu.
  3. Sur la page Bases des connexions, saisissez un nom de connexion.
  4. Sélectionnez un Connection type défini sur Workday Data Connect .
  5. Cliquez sur Suivant .
  6. Sur la page Connection details , saisissez les valeurs suivantes :
    • Host : le hostname de votre endpoint Workday Data Connect, par exemple mycompany.myworkday.com.
    • Tenant : votre tenant Workday.
    • Client ID : identifiant client du client d’API Workday.
    • Private key : une clé privée RSA au format PEM.
    • Nom du principal : le nom de l'ISU que vous avez enregistré en tant que principal du catalogue.
    • Rôle de principal : rôle de principal Workday qui délimite l'accès en lecture aux tables partagées. The default is ALL. Pour restreindre l'accès, définissez un rôle spécifique, par exemple all-reads-role.

Étape 2 : créer un catalogue étranger​

Un catalogue étranger reflète le catalogue Workday Data Connect dans Unity Catalog afin de vous permettre d’utiliser Unity Catalog pour gérer l’accès aux tables Workday et les interroger à partir du compute Databricks.

Pour créer un catalogue externe, vous pouvez utiliser l’Explorateur de catalogue ou la commande SQL CREATE FOREIGN CATALOG dans un notebook ou dans l’éditeur de query Databricks SQL.

  1. Dans votre Workspace Databricks, cliquez sur Icône de données. Catalog .
  2. En haut du volet Catalog , cliquez sur l'icône Plus Icône d’ajout ou plus et sélectionnez Create a catalog dans le menu.
  3. Dans la boîte de dialogue Create a new catalog , saisissez un nom pour le catalogue.
  4. Sélectionnez un Type défini sur Foreign .
  5. Sélectionnez la connexion Connection que vous avez créée à l'étape 1.
  6. Pour Emplacement du stockage cloud , saisissez le chemin de stockage cloud dans lequel Databricks stocke les métadonnées des tables fédérées.
  7. Cliquez sur Créer .

Le catalogue étranger reflète toujours l'intégralité du catalogue Workday Data Connect auquel vos identifiants vous donnent accès. Pour restreindre les éléments visibles, définissez un principal_role qui accorde un accès en lecture uniquement aux tables souhaitées lors de la création de la connexion.

Étape 3 : accorder les autorisations et query le catalogue​

Une fois le catalogue étranger créé, les utilisateurs ont besoin des autorisations Unity Catalog appropriées pour accéder aux tables fédérées :

  • Tous les utilisateurs ont besoin respectivement des autorisations USE CATALOG et USE SCHEMA sur le catalogue et le schéma.
  • Pour lire à partir d'une table fédérée, les utilisateurs ont besoin de l'autorisation SELECT.

Pour plus d’informations sur les privilèges Unity Catalog et sur la manière de les accorder, consultez la rubrique Manage privileges in Unity Catalog.

Par exemple, exécutez les commandes suivantes dans un notebook ou dans l'éditeur de query Databricks SQL :

SQL
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>`;

Les utilisateurs disposant de ces autorisations peuvent ensuite query les tables fédérées à l’aide de la notation d’espace de noms à trois niveaux :

SQL
SELECT * FROM <catalog-name>.<schema-name>.<table-name>;

Mappage d’espaces de noms​

Unity Catalog reflète la hiérarchie des objets Workday Data Connect de la manière suivante :

Objet Workday Data Connect

Objet Unity Catalog

Catalogue

Catalogue étranger

Espace de noms

Schéma

Table

Table étrangère

Objet Workday Data Connect

Objet Unity Catalog

Catalogue

Catalogue étranger

Espace de noms

Schéma

Table

Table étrangère

Workday Data Connect expose des noms plats à trois niveaux qui correspondent de manière biunivoque à la hiérarchie catalog.schema.table d’Unity Catalog. Il n'y a pas d'imbrication d'espace de noms supplémentaire.

Limitations​

La fédération de catalogues Workday Data Connect présente les limitations suivantes :

  • Le connecteur peut accéder uniquement aux tables Iceberg partagées via le catalogue Workday Data Connect.
  • Les noms de schéma et de table respectent les limitations de nommage standard de Unity Catalog. Databricks ne prend pas en charge les noms contenant un point (.), un espace () ou une barre oblique (/). Consultez la section Exigences de nommage des objets sécurisables.