CData SSIS Components を使用して JD Edwards のデータを Databricks にマイグレーション

Cameron Leblanc
Cameron Leblanc
Senior Technology Evangelist
CData SSIS Tasks for JD Edwards と Databricks を使用して、JD Edwards のデータを Databricks に簡単にプッシュできます。



Databricks は、大量のデータを簡単に処理、分析、可視化できる統合データ分析プラットフォームです。データエンジニアリング、データサイエンス、機械学習の機能を単一のプラットフォームに統合し、チームがコラボレーションしてデータからインサイトを得ることを容易にします。

CData SSIS Components は、SQL Server Integration Services を拡張し、さまざまなソースやデスティネーションからデータを簡単にインポート・エクスポートできるようにします。

この記事では、Databricks へのエクスポート時のデータ型マッピングの考慮事項を確認し、CData SSIS Components for JD Edwards と Databricks を使用してJD Edwards のデータを Databricks にマイグレーションする方法を説明します。

データ型マッピング

Databricks スキーマ CData スキーマ

int, integer, int32

int

smallint, short, int16

smallint

double, float, real

float

date

date

datetime, timestamp

datetime

time, timespan

time

string, varchar

長さ > 4000 の場合:nvarchar(max)、それ以外:nvarchar(length)

long, int64, bigint

bigint

boolean, bool

tinyint

decimal, numeric

decimal

uuid

nvarchar(length)

binary, varbinary, longvarbinary

binary(1000) または SQL Server 2000 以降は varbinary(max)


特別な考慮事項

  • String/VARCHAR: Databricks の String カラムは、カラムの長さによって異なるデータ型にマッピングされます。カラムの長さが 4000 を超える場合、カラムは nvarchar(max) にマッピングされます。それ以外の場合は、nvarchar(length) にマッピングされます。
  • DECIMAL: Databricks は最大 38 桁の精度の DECIMAL 型をサポートしていますが、それを超えるソースカラムはロードエラーを引き起こす可能性があります。

前提条件

プロジェクトの作成とコンポーネントの追加

  1. Visual Studio を開き、新しい Integration Services プロジェクトを作成します。 SSIS プロジェクトの作成
  2. Control Flow 画面に新しい Data Flow Task を追加し、Data Flow Task を開きます。
  3. Data Flow Task に CData JD Edwards Source コントロールと CData Databricks Destination コントロールを追加します。 ソースとデスティネーションコントロールの追加(Salesforce の例)

JD Edwards ソースの設定

以下の手順に従って、JD Edwards への接続に必要なプロパティを指定します。

  1. CData JD Edwards Source をダブルクリックしてソースコンポーネントエディタを開き、新しい接続を追加します。 ソースコンポーネントエディタを開く(Salesforce の例)
  2. CData JD Edwards Connection Manager で接続プロパティを設定し、接続をテストして保存します。

    ドライバーは Application Interface Services(AIS)Server を経由して JD Edwards に接続します。以下の接続プロパティを設定します。

    • URL:AIS Server のベース HTTPS URL(例:https://jde-ais.example.com:8300)。
    • User:JD Edwards のユーザー名。
    • Password:JD Edwards のパスワード。
    • Environment(オプション):使用する JD Edwards の環境(例:本番環境なら PD920、開発環境なら DV920)。指定しない場合は、AIS Server のデフォルト環境が使用されます。
    • Role(オプション):セッションで使用する JD Edwards のロール。指定しない場合は、AIS Server のデフォルトロールが使用されます。
    • DeviceName(オプション):接続元のデバイスまたはアプリケーションの識別子。AIS Server での監査やログ記録に使用されます。
    • Jasserver(オプション):リクエストのルーティング先となる Java Application Server(JAS)インスタンス。クラスタ環境で便利です。

    公開するデータの選択

    JD Edwards ではテーブルとビジネスビューが System Code ごとに整理されており、ドライバーは各 System Code をそれぞれ個別のスキーマとして公開します。利用できるスキーマは、以下のプロパティで制御できます。

    • DataModel:System Code をスキーマとして公開する ERP モジュール(カンマ区切りで複数指定可)。接続先インスタンスのすべての System Code を公開する場合は All を指定します。デフォルトは FinancialManagement です。
    • SystemCodes:DataModel の System Code に加えて公開したい System Code のカンマ区切りリスト(例:42,43)。

    接続時、ドライバーは認証情報を AIS Server に送信してセッショントークンを取得し、キャッシュします。セッションの有効期限が切れる前に、新しいトークンが自動でリクエストされます。

    ソース接続の設定(Salesforce の例)
  3. 接続を保存後、「Table or view」を選択し、Databricks にエクスポートするテーブルまたはビューを選択して、CData JD Edwards Source Editor を閉じます。 エクスポートするテーブルの選択(Salesforce の例)

Databricks デスティネーションの設定

JD Edwards Source を設定したら、Databricks 接続を設定してカラムをマッピングします。

  1. CData Databricks Destination をダブルクリックしてデスティネーションコンポーネントエディタを開き、新しい接続を追加します。 デスティネーションコンポーネントエディタを開く
  2. CData Databricks Connection Manager で接続プロパティを設定し、接続をテストして保存します。Databricks クラスターに接続するには、以下のようにプロパティを設定します。

    注意:必要な値は、Databricks インスタンスで Clusters に移動し、目的のクラスターを選択して、Advanced Options の下にある JDBC/ODBC タブを選択することで確認できます。

    • Server:Databricks クラスターの Server Hostname を設定します。
    • HTTPPath:Databricks クラスターの HTTP Path を設定します。
    • Token:個人用アクセストークンを設定します(この値は、Databricks インスタンスの User Settings ページに移動し、Access Tokens タブを選択することで取得できます)。

    その他の便利な接続プロパティ

    • QueryPassthrough: True に設定すると、クエリは Databricks に直接渡されます。
    • ConvertDateTimetoGMT: True に設定すると、コンポーネントはローカルマシンの時刻ではなく、日時値を GMT に変換します。
    • UseUploadApi: このプロパティを true に設定すると、Bulk INSERT 操作で大量のデータがある場合にパフォーマンスが向上します。
    • UseCloudFetch: このオプションは、テーブルに 100 万件を超えるエントリがある場合にクエリ効率を向上させるために CloudFetch を使用するかどうかを指定します。
    デスティネーション接続の設定
  3. 接続を保存後、Use a Table メニューでテーブルを選択し、Action メニューで Insert を選択します。 デスティネーションテーブルの選択
  4. Column Mappings タブで、入力カラムからデスティネーションカラムへのマッピングを設定します。 カラムのマッピング(Salesforce の例)

プロジェクトの実行

これでプロジェクトを実行できます。SSIS Task の実行が完了すると、SQL テーブルのデータが選択したテーブルにエクスポートされます。

はじめる準備はできましたか?

JD Edwards SSIS Component の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

JD Edwards Icon JD Edwards SSIS Components

SSIS ソースコンポーネントは、SQL Server SSIS のワークフロー内で簡単にJD Edwards データにリアルタイム接続できるパワフルなツールです。

データフロー内のJD Edwards コンポーネントを使ってAccountLedger、ProposalofPayment、ContractRevenueSummary、EmployeeEnrollment、RentIncreaseAmounts などを同期できます。データ同期、ローカルバックアップ、ワークフローの自動化などに最適!