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

Workday HCMからデータを取り込む

備考

ベータ版

この機能はベータ版です。ワークスペース管理者は、 プレビュー ページからこの機能へのアクセスを制御できます。「Databricks プレビューの管理」を参照してください。

このページではLakeFlow Connectを使用して、管理された Workday Human Capital Management (HCM) 取り込みパイプラインを作成する方法を説明します。

要件

  • 取り込みパイプラインを作成するには、まず次の手順を実行する必要があります。

    • ワークスペースでUnity Catalogが有効になっている必要があります。

    • ワークスペースでサーバレスコンピュートを有効にする必要があります。 「サーバレス コンピュート要件」を参照してください。

    • 新しい接続を作成する場合: メタストアに対するCREATE CONNECTION権限が必要です。

      コネクタが UI ベースのパイプライン オーサリングをサポートしている場合、管理者はこのページのステップを完了することで、接続とパイプラインを同時に作成できます。 ただし、パイプラインを作成するユーザーが API ベースのパイプライン オーサリングを使用している場合、または管理者以外のユーザーである場合、管理者はまずカタログ エクスプローラーで接続を作成する必要があります。 「管理対象取り込みソースへの接続」を参照してください。

    • 既存の接続を使用する場合: 接続オブジェクトに対するUSE CONNECTION権限またはALL PRIVILEGESが必要です。

    • ターゲット カタログに対するUSE CATALOG権限が必要です。

    • 既存のスキーマに対するUSE SCHEMAおよびCREATE TABLE権限、またはターゲット カタログに対するCREATE SCHEMA権限が必要です。

Workday HCM から取り込むには、まず「Workday HCM への認証を構成する」のステップを完了する必要があります。

取り込みパイプラインを作成する

各ソース テーブルはストリーミング テーブルに取り込まれます。 サポートされているソース テーブルの一覧については、 「サポートされているデータ」を参照してください。

Databricks Asset Bundles を使用して、Workday HCM パイプラインをコードとして管理します。バンドルにはジョブとタスクの YAML 定義を含めることができ、 Databricks CLIを使用して管理でき、さまざまなターゲット ワークスペース (開発、ステージング、本番運用など) で共有して実行できます。 詳細については、 Databricksアセット バンドルとは何ですか?」を参照してください。 。

  1. Databricks CLI を使用して新しいバンドルを作成します。

    Bash
    databricks bundle init
  2. バンドルに 2 つの新しいリソース ファイルを追加します。

    • パイプライン定義ファイル ( resources/workday_hcm_pipeline.yml )。パイプライン.ingestion_定義を参照してください。 および
    • データ取り込みの頻度を制御するジョブ定義ファイル ( resources/workday_hcm_job.yml )。
  3. Databricks CLI を使用してパイプラインをデプロイします。

    Bash
    databricks bundle deploy

これらの例を使用してパイプラインを構成します。

単一のソーステーブルを取り込む

次のパイプライン定義ファイルは、単一のソース テーブルを取り込みま す。

YAML
variables:
dest_catalog:
default: main
dest_schema:
default: ingest_destination_schema

# The main pipeline for workday_hcm_dab
resources:
pipelines:
pipeline_workday_hcm:
name: workday_hcm_pipeline
catalog: ${var.dest_catalog}
schema: ${var.dest_schema}
ingestion_definition:
connection_name: <workday-hcm-connection>
objects:
# An array of objects to ingest from Workday HCM. This example ingests the workers table.
- table:
source_schema: default
source_table: workers
destination_catalog: ${var.dest_catalog}
destination_schema: ${var.dest_schema}

複数のソーステーブルを取り込む

次のパイプライン定義ファイルは、複数のソース テーブルを取り込みま す。

YAML
variables:
dest_catalog:
default: main
dest_schema:
default: ingest_destination_schema

# The main pipeline for workday_hcm_dab
resources:
pipelines:
pipeline_workday_hcm:
name: workday_hcm_pipeline
catalog: ${var.dest_catalog}
schema: ${var.dest_schema}
ingestion_definition:
connection_name: <workday-hcm-connection>
objects:
# An array of objects to ingest from Workday HCM.
- table:
source_schema: default
source_table: workers
destination_catalog: ${var.dest_catalog}
destination_schema: ${var.dest_schema}
- table:
source_schema: default
source_table: payroll
destination_catalog: ${var.dest_catalog}
destination_schema: ${var.dest_schema}

バンドルワークフローファイル

以下は、Databricks Asset Bundle で使用するジョブ定義ファイルの例です。ジョブは毎日、最後の実行からちょうど 1 日後に実行されます。

YAML
resources:
jobs:
workday_hcm_dab_job:
name: workday_hcm_dab_job

trigger:
periodic:
interval: 1
unit: DAYS

email_notifications:
on_failure:
- <email-address>

tasks:
- task_key: refresh_pipeline
pipeline_task:
pipeline_id: ${resources.pipelines.pipeline_workday_hcm.id}

一般的なパターン

高度なパイプライン構成については、 「管理された取り込みパイプラインの一般的なパターン」を参照してください。

次のステップ

パイプラインを開始、スケジュールし、アラートを設定します。一般的なパイプラインメンテナンスタスクを参照してください。

その他のリソース