メインコンテンツまでスキップ

Workday Data Connectのカタログフェデレーション

備考

ベータ版

この機能はベータ版です。使用するには、ワークスペース管理者は プレビュー ページから Workday Data Connect Connector を有効にする必要があります。Databricksプレビューの管理を参照してください。

Workday Data Connect カタログフェデレーションを使用して、クラウドストレージから Workday Data Connect テーブルを直接読み込み、Unity Catalog にフォーリンテーブルとして追加します。クエリーはすべて Databricks コンピュート上で実行されるため、データチームは ETL パイプラインを構築することなく、Databricks からこれらのテーブルの検出、ガバナンス、およびクエリーを実行できます。データアクセスは読み取り専用です。

Databricks は、秘密鍵を使用した OAuth を使用して、プリンシパルとして登録する Workday 統合システムユーザー(ISU)として Workday Data Connect カタログに対して認証を行います。

Workdayでは、この製品をWorkday Data Lakeと呼んでいます。本ページを含むパートナーのドキュメントでは、これをWorkday Data Connectと呼んでいます。

カタログフェデレーションの詳細については、カタログフェデレーションとはを参照してください。

注記

このコネクタは Databricks へのデータの取り込みやコピーを行わず、Workday 向けの Lakeflow Connect インジェストコネクタにも関連していません。代わりに Workday データを Databricks に取り込むには、Workday レポートコネクタまたは Workday HCM コネクタを参照してください。

始める前に​

Workday Data Connect カタログフェデレーションを設定する前に、次の要件を確認してください。

ワークスペースの要件:

  • ワークスペースで Unity Catalog が有効になっている必要があります。Unity Catalog の概要を参照してください。

コンピュートの要件:

  • Databricks コンピュートでは、Databricks Runtime 19.8 以降と標準アクセス モードを使用する必要があります。専用アクセスモードはサポートされていません。

ネットワーク要件:

  • Databricksから https://<workday-host>/api/catalog のWorkday Data ConnectカタログEndpointへのネットワーク接続。WorkdayでDatabricksのIPアドレスを許可リストに追加する必要はありません。

必要な権限:

  • 接続を作成するには、メタストア管理者か、ワークスペースに接続されているUnity Catalogメタストアの CREATE CONNECTION 権限を持つユーザーである必要があります。
  • フォーリンカタログを作成するには、メタストアに対する CREATE CATALOG 権限を持ち、接続の所有者であるか、接続に対する CREATE FOREIGN CATALOG 権限を持っている必要があります。

Workday の要件:

  • Workday テナントに対して Workday Data Connect が有効になっており、クエリーを実行するテーブルが Iceberg REST カタログを介して共有されています。Workday データレイクの開始を参照してください。
  • Workday Data Connectカタログにプリンシパルとして登録されたWorkday統合システムユーザー(ISU)、共有テーブルへの読み取りアクセス権をそのISUに付与するそのISUのプリンシパルロール、およびそのプリンシパルのRSAキーペア。API クライアントを登録するには、データ レイク用 API クライアントの登録 (JWT ベアラー許可) を参照してください。

ステップ 1: 接続を作成する​

接続では、DatabricksがWorkday Data Connectカタログとの通信に使用するEndpointと資格情報を指定します。

接続を作成するには、カタログエクスプローラーを使用するか、次の CREATE CONNECTION SQLコマンドを使用します。

接続を作成するには:

  1. Databricks ワークスペースで、データアイコン。 カタログ をクリックします。
  2. カタログ ペインの上部で、追加またはプラスアイコン プラスアイコンをクリックし、メニューから 接続を作成 を選択します。
  3. 接続の基本 ページで、 接続名 を入力します。
  4. 接続タイプ で Workday Data Connect を選択します。
  5. 次へ をクリックします。
  6. 接続の詳細 ページで、次の値を入力します。
    • ホスト :Workday Data Connect Endpoint のホスト名(例:mycompany.myworkday.com)。
    • テナント : Workdayテナント。
    • Client ID : Workday API クライアントの Client ID。
    • プライベートキー : PEM形式のRSAプライベートキー。
    • プリンシパル名 :カタログプリンシパルとして登録した ISU の名前。
    • プリンシパルロール :共有テーブルへの読み取りアクセス権のスコープを定める Workday プリンシパルロール。The default isALLです。アクセス範囲を狭めるには、特定のロール(例:all-reads-role)を設定します。

ステップ 2: フォーリンカタログを作成する​

フォーリンカタログは、Unity CatalogでWorkday Data Connectカタログをミラーリングするため、Unity Catalogを使用してWorkdayテーブルへのアクセスを管理し、Databricksのコンピュートからクエリーを実行できます。

フォーリンカタログを作成するには、カタログエクスプローラー、またはノートブックまたはDatabricks SQLクエリーエディターの CREATE FOREIGN CATALOG SQLコマンドを使用できます。

  1. Databricks ワークスペースで、データアイコン。 カタログ をクリックします。
  2. Catalog ペインの上部で、追加またはプラスアイコン プラスアイコンをクリックし、メニューから[ カタログを作成 ]を選択します。
  3. 新規カタログを作成 ダイアログで、カタログの名前を入力します。
  4. タイプ で Foreign を選択します。
  5. ステップ 1 で作成した 接続 を選択します。
  6. ストレージの場所 には、Databricks がフェデレーションテーブルのメタデータを保存するクラウドストレージのパスを入力します。
  7. 作成 をクリックします。

フォーリンカタログは、資格情報によってアクセスが許可されているWorkday Data Connectカタログ全体を常にミラーリングします。表示される内容を絞り込むには、接続の作成時に、必要なテーブルへのみ読み取りアクセスを許可する principal_role を設定します。

ステップ 3: 権限を付与してカタログに対してクエリーを実行する​

フォーリンカタログを作成した後は、フェデレーテッド・テーブルにアクセスするための適切なUnity Catalogの権限がユーザーに必要となります。

  • すべてのユーザーには、カタログおよびスキーマに対して、それぞれ USE CATALOG および USE SCHEMA 権限が必要です。
  • フェデレーテッド・テーブルから読み取るには、ユーザーに SELECT 権限が必要です。

Unity Catalog の権限とその付与方法の詳細については、Unity Catalog での権限の管理を参照してください。

たとえば、ノートブックまたは 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>`;

これらの権限を持つユーザーは、3レベルの名前空間表記を使用してフェデレーションテーブルに対するクエリーを実行できます:

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

名前空間のマッピング​

Unity Catalogは、Workday Data Connectのオブジェクト階層を次のようにミラーリングします:

Workday Data Connect オブジェクト

Unity Catalogオブジェクト

カタログ

フォーリンカタログ

名前空間

スキーマ

テーブル

外部テーブル

Workday Data Connect オブジェクト

Unity Catalogオブジェクト

カタログ

フォーリンカタログ

名前空間

スキーマ

テーブル

外部テーブル

Workday Data Connectは、Unity Catalogの catalog.schema.table 階層に1対1でマッピングされるフラットな3階層の名前を公開します。追加の名前空間のネストはありません。

制限事項​

Workday Data Connectカタログのフェデレーションには次の制限があります:

  • このコネクタは、Workday Data Connectカタログを介して共有されるIcebergテーブルのみにアクセスできます。
  • スキーマ名およびテーブル名は、標準的なUnity Catalogの命名規則に従う必要があります。Databricksでは、ピリオド(.)、スペース()、またはスラッシュ(/)を含む名前はサポートされていません。セキュリティ保護可能なオブジェクトの命名規則を参照してください。