Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OCI Data Integration技術情報 / ocidi_technical_jp

OCI Data Integration技術情報 / ocidi_technical_jp

OCI Data Integrationに関する技術情報です。

参考情報 (英語はブラウザの翻訳機能をご利用ください)
マニュアル(OCI)
LiveLabs(チュートリアル)
Data Integration blog

3115a782126be714b5f94d24073c957d?s=128

oracle4engineer
PRO

June 13, 2022
Tweet

More Decks by oracle4engineer

Other Decks in Technology

Transcript

  1. Oracle Cloud Infrastructure Data Integration 技術資料 日本オラクル株式会社 2021年6月13日

  2. OCI Data Integrationを利用するときに確認いただける技術資料を目的としています。 概要および課金体系については別資料OCI Data Integration Overviewをご確認ください。 ※画面イメージは最新のものと異なる可能性があります 本資料について Copyright

    © 2021, Oracle and/or its affiliates 2
  3. GUIベースのクラウドETLサービス サービス概要/特徴 • OCI Data Integration は、様々なデータ変換処理を行う ためのETL機能と、コーディング無しで設計するグラフィカルな インタフェースを提供します •

    OCI Data Integration により、簡単にデータの準備、統合、 ロードを行うことが可能です。 こんな課題に役立ちます • データサイエンスやアナリティクスに使用されるデータレイクへ の大規模なデータのロードと変換を効率的に実行したい • 分析目的で使用されるDW(自律型データウェアハウスな ど)へのスケーラブルなデータロードと変換を効率的に実行 したい サービス価格 • Oracle Cloud Infrastructure - Data Integration - Workspace(ETL開発時): ¥19.2 [Workspace Usage Per Hour] • Oracle Cloud Infrastructure - Data Integration(ETL実行時): ¥4.8 [Gigabyte of Data Processed Per Hour] • Oracle Cloud Infrastructure - Data Integration - Pipeline Operator Execution(Pipeline/Schedule実行時): ¥36.0 [Execution Hour] Oracle Cloud Infrastructure - Data Integration Copyright © 2021, Oracle and/or its affiliates 3
  4. アクセス OCIコンソールの「アナリティクスとAI」から「データ統合」をクリック Oracle Cloud Infrastructure - Data Integration Copyright ©

    2021, Oracle and/or its affiliates 4
  5. 1. 利用に必要な作業 2. コンポーネント 3. データ・フロー演算子 4. リリース新機能履歴 内容 Copyright

    © 2021, Oracle and/or its affiliates 5
  6. ネットワークコンポーネントの構成 必要なポリシーの作成 OCI Data Integration 利用に必要な作業 Copyright © 2021, Oracle

    and/or its affiliates 6
  7. ネットワークコンポーネントの構成 1. Data Integrationはパブリック・ネットワーク、プライベート・ネットワークの両方に対応します。プライベートネットワークを利 用する場合は、Data IntegrationのワークスペースのためのVCNとサブネットが必要です • リージョナルサブネットのみをサポート(VCNウィザードのデフォルトは非リージョナルサブネットなので注意) 2. Data

    Integationからデータソースへの接続経路を確立する必要があります • パブリックネットワークの場合 ⇒ Oracle Object StorageなどOCIサービスはService Gateway経由、他のリソースはインターネット経由のアクセスがで きることが必要 • プライベートネットワークの場合 ⇒アクセスが必要なデータソースにあわせてネットワーク設定が必要。以下のblogのシナリオ別の例を参考にしてくださ い https://blogs.oracle.com/dataintegration/post/understanding-vcn-configuration-for-oracle-cloud- infrastructure-oci-data-integration Data Integrationの利用に必要な作業 Copyright © 2021, Oracle and/or its affiliates 7
  8. ポリシーの作成:Data Integrationサービスに必要なポリシー Data Integrationに対する権限付与 Data Integrationの利用に必要な作業 Copyright © 2021, Oracle

    and/or its affiliates 8 ポリシー Allow service dataintegration to use virtual-network-family in compartment <<コンパートメント名>> • OCIDにVCNの利用を許可 • テナンシーレベルでの許可も可 • In compartment -> in tenancy Allow service dataintegration to inspect compartments in compartment <<コンパートメント名>> • コンパートメント間でワークスペースの移動を行う場合に必要 • テナンシーレベルでの許可も可 • In compartment -> in tenancy Allow service dataintegration to inspect users in compartment <<コンパー トメント名>> • Created byにユーザ名を表示させる場合に必要。設定しない場合は "Unknown User" allow service dataintegration to {TENANCY_INSPECT} in compartment <<コンパートメント名>> allow service dataintegration to {DIS_METADATA_INSPECT} in compartment <<コンパートメント名>> • ワークスペース内の検索をするために必要
  9. ポリシーの作成:利用ユーザーに必要なポリシー デフォルトでアクセスできるのはOCI管理者(Administratorグループ)のみであり、OCI管理者以外のユーザーで利用す る場合は、グループを作成し、適切なアクセス権の付与を行います ワークスペースの管理(作成、削除)、開発、実行をするために必要なポリシー(Data Integration管理者) Data Integrationの利用に必要な作業 Copyright © 2021,

    Oracle and/or its affiliates 9 ポリシー allow group <<ユーザグループ>> to manage dis-workspaces in compartment <<コンパートメント名>> • ワークスペースのすべての権限。useの場合は作成、削除は不可、ワー クスペース内の操作のみ allow group <<ユーザグループ>> to manage dis-work-requests in compartment <<コンパートメント名>> • ワークスペース操作(作成、削除など)のステータス確認 allow group <<ユーザグループ>> to manage tag-namespaces in compartment in compartment <<コンパートメント名>> • タグ付けに必要 allow group <<ユーザグループ>> to use virtual-network-family in compartment <<コンパートメント名>> • VCNの利用を許可 • テナンシーレベルでの許可も可 In compartment -> in tenancy allow group <<ユーザグループ>> to inspect instance-family in compartment <<コンパートメント名> • サブネットに十分なポリシーがあるか確認するために必要
  10. ポリシーの作成:利用ユーザーに必要なポリシー(条件指定) where句の中でAPI単位や、対象のリソース(Workspace、Applicationなど)を限定でき、管理者と開発者、オペ レーターとロールにあわせた細やかな設定も可能です • target.workspace.id(ワークスペース)/target.application.key(アプリケーション)/target.folder.key(プロジェクト、 フォルダー) • request.permission(権限)/request.operation(API操作) ロール別のポリシー例 Data

    Integrationの利用に必要な作業 Copyright © 2021, Oracle and/or its affiliates 10 ロール ポリシー例 Data Integration開発者 ワークスペース上での開発 Allow group <<開発者グループ>> to reads dis-workspaces in compartment <<コンパートメント名>> Allow group <<開発者グループ>> to use dis-workspaces in compartment <<コンパートメント名>> where ALL {target.workspace.id='<<ワークスペースのOCID>>',request.permission in ('DIS_WORKSPACE_OBJECT_READ','DIS_WORKSPACE_OBJECT_CREATE','DIS_WORKSPACE_OBJECT_U PDATE','DIS_WORKSPACE_OBJECT_DELETE','DIS_WORKSPACE_OBJECT_EXECUTE')} Data Integration オペレータ Data Integratonタスクの 実行 Allow group <<オペレータグループ>> to reads dis-workspaces in compartment <<コンパートメント名>> Allow group <<オペレータグループ>> to use dis-workspaces in compartment <<コンパートメント名>> where ALL {target.workspace.id='<<ワークスペースのOCID>>',request.permission in ('DIS_WORKSPACE_OBJECT_READ','DIS_WORKSPACE_OBJECT_EXECUTE')}
  11. ポリシーの作成:データ・アセットのアクセスや機能の利用に必要なポリシー作成 データ・アセットのタイプや連携する機能に合わせてData Integrationがアクセスするためのポリシー作成が必要です • ワークスペースを限定して利用させたい場合はワークスペースのocidを確認して指定します 例 • Data IntegrationでObject Storageを利用するために必要なポリシー

    • allow group <グループ名> to use object-family in compartment <コンパートメント名> • allow any-user to manage buckets in compartment <コンパートメント名> where ALL {request.principal.type=‘disworkspace’,request.principal.id=‘<作成したワークスペースのocid>’} • allow any-user to manage objects in compartment <コンパートメント名> where ALL {request.principal.type=‘disworkspace’,request.principal.id=‘<作成したワークスペースのocid>’} • Data IntegrationでAutonomous Databaseを利用するために必要なポリシー • allow any-user {PAR-MANAGE} in compartment <コンパートメント名> where ALL {request.principal.type='disworkspace' ,request.principal.id=’<作成したワークスペースのocid>’} Data Integrationの利用に必要な作業 Copyright © 2021, Oracle and/or its affiliates 11
  12. ポリシーの作成:クロステナンシーの場合はrootコンパートメントの設定が追加で必要 OCIではクロステナンシーの権限設定は一般に、テナンシーを越えて利用する側ではEndorse、利用される側ではAdmit という特別なIAM Policyの設定が必要です • これらのIAM Policyは各テナンシーのrootコンパートメントに設定する必要があります • (Endorseを広く記述しても)利用される側のAdmitで認められた範囲でしか操作できません 例:異なるテナンシーのオブジェクトストレージにアクセスする場合

    Data Integrationの利用に必要な作業 Copyright © 2021, Oracle and/or its affiliates 12 Data Integrationのテナンシーのrootコンパートメントで設定 Define tenancy <<name>> as <<Object_Storage_Tenancy_OCID>> Endorse group <<group_name>> to inspect compartments in tenancy <<name>> Endorse group <<group_name>> to use object-family in tenancy <<name>> Object Storageのテナンシーのrootコンパートメントで設定 Define tenancy <<name>> as <Workspace_Tenancy_OCID> Define group <<group_name>> as <<group_OCID>> Admit group <<group_name>> of tenancy <<name>> to inspect compartments in tenancy Admit group <<group_name>> of tenancy <<name>> to use object-family in compartment <<compartment-name>>
  13. (参考)ポリシー作成の支援ツール:ポリシー・ビルダー ポリシー・ユース・ケースを利用するとテンプレートに沿った内容のポリシーを設定することができます。 Data Integrationの利用に必要な作業 Copyright © 2021, Oracle and/or its

    affiliates 13 ①「データ統合」を選択 ②テンプレートを選択
  14. (参考)ポリシー作成の支援ツール:Data Integration画面での案内 ワークスペース/データアセットの作成中に必要なポリシー 情報を表示/設定を行うことができます 以下の2つから選択が可能 • 表示されたポリシーをコピーする • 表示されたポリシーを含むポリシーを直接作成 データアセットの接続テストやワークスペースの作成時に必

    要なポリシーがない場合は、エラーメッセージとともに通知 が行われます Data Integrationの利用に必要な作業 Confidential – © 2021 Oracle Internal/Restricted/Highly Restricted
  15. OCI Data Integration コンポーネント Copyright © 2021, Oracle and/or its

    affiliates 15
  16. OCI Data Integrationの主なコンポーネント Copyright © 2021, Oracle and/or its affiliates

    コンポーネント 説明 WORKSPACE すべてのコンポーネントをまとめる統合的なリソース・コンテナ DATA ASSET メタデータを含むデータソースや物理ストアを表すコンポーネント PROJECT 設計時リソース(Task, Data Flow,Pipelineなど)のためのコンテナ DATA FLOW ソースからターゲットの間のデータの流れおよび操作を定義する設計時リソース TASK データ操作を行う設計時リソース(データ操作タイプによってIntegration Task, Data Loader Task, OCI Data Flow Task, Pipeline Task、SQL Task, Rest Taskから選択) Applicationに公開して実行するコンポーネント PIPELINE 複数の公開済みタスクを順番に接続するためのオーケストレーション・コンポーネント APPLICATION 依存関係とともに登録されたTaskなどの実行用コンテナ PATCH アプリケーションの更新を表現するコンポーネント(ログとして格納) RUN Taskの実行を表現する実行用コンポーネント REFERENCE 公開済みタスクに関連付けられたData Asset、Connection、Schema 16
  17. 例:Object StorageからDatabaseへデータを変換してロードする OCI Data Integrationの主なコンポーネントと利用ステップ例 Copyright © 2021, Oracle and/or

    its affiliates 1.Workspace Object Storage Database1 : : 1.ワークスペース(Workspace)にアクセス Database2 ソースおよびターゲット となるデータソース 17
  18. 例:Object StorageからDatabaseへデータを変換してロードする OCI Data Integrationの主なコンポーネントと利用ステップ例 Copyright © 2021, Oracle and/or

    its affiliates 1.Workspace Object Storage Database1 : : 1.ワークスペース(Workspace)にアクセス 2.データ・アセット(Data Asset)の作成 ソース、ターゲットのデータソースの接続情報をそれぞれ設 定する Database2 2.Data Asset lake db1 db2 ソースおよびターゲット となるデータソース 18
  19. 例:Object StorageからDatabaseへデータを変換してロードする OCI Data Integrationの主なコンポーネントと利用ステップ例 Copyright © 2021, Oracle and/or

    its affiliates 1.Workspace 3.Project Object Storage Database1 : : 1.ワークスペース(Workspace)にアクセス 2.データ・アセット(Data Asset)の作成 ソース、ターゲットのデータソースの接続情報をそれぞれ設 定する 3.プロジェクト(Project)の作成 設計を行うためのコンテナを作成する Database2 2.Data Asset lake db1 db2 ソースおよびターゲット となるデータソース 19
  20. 例:Object StorageからDatabaseへデータを変換してロードする OCI Data Integrationの主なコンポーネントと利用ステップ例 Copyright © 2021, Oracle and/or

    its affiliates 1.Workspace 3.Project Object Storage Database1 : : 1.ワークスペース(Workspace)にアクセス 2.データ・アセット(Data Asset)の作成 ソース、ターゲットのデータソースの接続情報をそれぞれ設 定する 3.プロジェクト(Project)の作成 設計を行うためのコンテナを作成する 4.データ・フロー(Data Flow)の作成 ソース、ターゲットのデータ・アセットを指定し、変換ルールを 作成 Database2 2.Data Asset lake db1 db2 ソースおよびターゲット となるデータソース 4.Data Flow 20
  21. 例:Object StorageからDatabaseへデータを変換してロードする OCI Data Integrationの主なコンポーネントと利用ステップ例 Copyright © 2021, Oracle and/or

    its affiliates 1.Workspace 3.Project Object Storage Database1 : : 5.Task (Integration) 1.ワークスペース(Workspace)にアクセス 2.データ・アセット(Data Asset)の作成 ソース、ターゲットのデータソースの接続情報をそれぞれ設 定する 3.プロジェクト(Project)の作成 設計を行うためのコンテナを作成する 4.データ・フロー(Data Flow)の作成 ソース、ターゲットのデータ・アセットを指定し、変換ルールを 作成 5. タスク(Task)の作成 データ・フロー用のタスク(統合タスク)を作成してデータ・フ ローを指定する Database2 2.Data Asset lake db1 db2 ソースおよびターゲット となるデータソース 4.Data Flow 21
  22. 例:Object StorageからDatabaseへデータを変換してロードする OCI Data Integrationの主なコンポーネントと利用ステップ例 Copyright © 2021, Oracle and/or

    its affiliates 1.Workspace 3.Project 6.Application Object Storage Database1 : : 5.Task (Integration) 1.ワークスペース(Workspace)にアクセス 2.データ・アセット(Data Asset)の作成 ソース、ターゲットのデータソースの接続情報をそれぞれ設 定する 3.プロジェクト(Project)の作成 設計を行うためのコンテナを作成する 4.データ・フロー(Data Flow)の作成 ソース、ターゲットのデータ・アセットを指定し、変換ルールを 作成 5. タスク(Task)の作成 データ・フロー用のタスク(統合タスク)を作成してデータ・フ ローを指定する 6.アプリケーション(Application)を作成 タスクを実行するためのコンテナを作成 Database2 2.Data Asset lake db1 db2 ソースおよびターゲット となるデータソース 4.Data Flow 22
  23. 例:Object StorageからDatabaseへデータを変換してロードする OCI Data Integrationの主なコンポーネントと利用ステップ例 Copyright © 2021, Oracle and/or

    its affiliates 1.Workspace 3.Project 6.Application Object Storage Database1 : : 5.Task (Integration) 1.ワークスペース(Workspace)にアクセス 2.データ・アセット(Data Asset)の作成 ソース、ターゲットのデータソースの接続情報をそれぞれ設 定する 3.プロジェクト(Project)の作成 設計を行うためのコンテナを作成する 4.データ・フロー(Data Flow)の作成 ソース、ターゲットのデータ・アセットを指定し、変換ルールを 作成 5. タスク(Task)の作成 データ・フロー用のタスク(統合タスク)を作成してデータ・フ ローを指定する 6.アプリケーション(Application)を作成 タスクを実行するためのコンテナを作成 7.タスクの公開(Publish) アプリケーションの更新としてパッチ(Patch)が作成され、タ スクがデプロイされる Task (Integration) Publish 7.Patch Database2 2.Data Asset lake db1 db2 ソースおよびターゲット となるデータソース 4.Data Flow 23
  24. 例:Object StorageからDatabaseへデータを変換してロードする OCI Data Integrationの主なコンポーネントと利用ステップ例 Copyright © 2021, Oracle and/or

    its affiliates 1.Workspace 3.Project 6.Application Object Storage Database1 : : 5.Task (Integration) 1.ワークスペース(Workspace)にアクセス 2.データ・アセット(Data Asset)の作成 ソース、ターゲットのデータソースの接続情報をそれぞれ設 定する 3.プロジェクト(Project)の作成 設計を行うためのコンテナを作成する 4.データ・フロー(Data Flow)の作成 ソース、ターゲットのデータ・アセットを指定し、変換ルールを 作成 5. タスク(Task)の作成 データ・フロー用のタスク(統合タスク)を作成してデータ・フ ローを指定する 6.アプリケーション(Application)を作成 タスクを実行するためのコンテナを作成 7.タスクの公開(Publish) アプリケーションの更新としてパッチ(Patch)が作成され、タ スクがデプロイされる 8.(必要に応じて)参照(Reference)でマップ 別のデータソースで処理をさせたい場合にタスクで指定した Data Assetを別のData Assetでマッピングする Task (Integration) Publish 7.Patch Database2 2.Data Asset lake db1 db2 ソースおよびターゲット となるデータソース 8.Reference Map 4.Data Flow 24
  25. 例:Object StorageからDatabaseへデータを変換してロードする OCI Data Integrationの主なコンポーネントと利用ステップ例 Copyright © 2021, Oracle and/or

    its affiliates 1.Workspace 3.Project 6.Application Run 9.Run Object Storage Database1 : : 5.Task (Integration) 1.ワークスペース(Workspace)にアクセス 2.データ・アセット(Data Asset)の作成 ソース、ターゲットのデータソースの接続情報をそれぞれ設 定する 3.プロジェクト(Project)の作成 設計を行うためのコンテナを作成する 4.データ・フロー(Data Flow)の作成 ソース、ターゲットのデータ・アセットを指定し、変換ルールを 作成 5. タスク(Task)の作成 データ・フロー用のタスク(統合タスク)を作成してデータ・フ ローを指定する 6.アプリケーション(Application)を作成 タスクを実行するためのコンテナを作成 7.タスクの公開(Publish) アプリケーションの更新としてパッチ(Patch)が作成され、タ スクがデプロイされる 8.(必要に応じて)参照(Reference)でマップ 別のデータソースで処理をさせたい場合にタスクで指定した Data Assetを別のData Assetでマッピングする 9.タスクを実行(Run)する タスク実行のランタイムアーティファクトが作成され、処理が 実行される Task (Integration) Publish 7.Patch Database2 2.Data Asset lake db1 db2 ソースおよびターゲット となるデータソース 8.Reference Map 4.Data Flow 25
  26. Copyright © 2021, Oracle and/or its affiliates 26 ワークスペース

  27. 概要 Data Integrationの全リソースのコンテナ。Data Integrationの操作、処理はワークスペースの起動(アクティブであるこ と)が必須 • ワークスペースは複数作成することが可能 • デフォルトはテナントのリージョンごとに5つまでのサービス制限 •

    OCIのクォータ制限による制限可 ワークスペース Copyright © 2021, Oracle and/or its affiliates 27
  28. ワークスペースのホーム ワークスペース Copyright © 2021, Oracle and/or its affiliates 28

  29. 入力項目 以下を入力 • 名前 • ネットワークの選択 • 必要に応じて「プライベート・ネットワークの有効化」で VCNとサブネット、オプションを選択 •

    (オプション)顧客ネットワークのDNSサーバ情報を登録 • タグ(オプション) 「ステータスの表示」でステータスの確認が可能 ワークスペースの作成 Copyright © 2021, Oracle and/or its affiliates 29
  30. 起動と停止 作成後のワークスペースは起動済みの状態 • 停止時は開発およびETL処理実行不可 • ワークスペースが起動している時間で課金 起動/停止はワークスペースのアクションメニューから実行 • 起動や停止には数分時間がかかる •

    停止は強制停止なしの場合はアクティブなタスクを待機する 起動/停止中は「ステータスの表示」で進捗確認が可能 ワークスペースの運用管理 Copyright © 2021, Oracle and/or its affiliates 30
  31. (参考)起動時間や停止時間はロギングのログから確認が可能 OCIコンソール - "監視及び管理" - "ロギング" ワークスペースの運用管理 Copyright © 2021,

    Oracle and/or its affiliates 31
  32. そのほかのアクション • 編集(ワークスペース起動時のみアクセス可) • ワークスペースの名前、説明の編集 • ネットワークの変更は不可 • ログの表示 •

    タグの追加、表示 • リソースの移動 • ワークスペースのコンパートメント間の移動 • 終了 • ワークスペースの終了。 • 関連するすべてのオブジェクトとリソースが削除され、復元は不可 ワークスペースの運用管理 Copyright © 2021, Oracle and/or its affiliates 32
  33. 監視:ワークスペースホーム画面の”Monitor Workspace” ワークスペースの稼働時間、処理されたデータの合計などのメトリック、アプリケーションのタスク実行情報を表示 ワークスペースの運用管理 Copyright © 2021, Oracle and/or its

    affiliates 33
  34. Workspace Summary:ワークスペースの稼働情報のサマリ Overview:一定期間内のアプリケーションのタスク実行情報。アプリケーションの選択も可 監視:ワークスペースホーム画面の”Monitor Workspace” ワークスペースの運用管理 Copyright © 2021, Oracle

    and/or its affiliates Total Runs タスク実行の合計数 Success 正常に完了したタスク実行の合計数 Running 実行中のタスク実行の合計数 Failed 失敗したタスク実行の合計数 Terminated 終了した実行の合計数 Workspace Uptime ワークスペースが最後に起動されてからの稼働時間 Workspace Usage ワークスペースが作成されてからの累積稼働時間 Total Data Processed すべてのタスク実行によって読み取られた累積データ量 34
  35. Copyright © 2021, Oracle and/or its affiliates 35 データ・アセット

  36. 概要 • Data Integrationで利用するデータベースなどのデータ・ソース • データ・アセットは1つ以上の接続(ユーザーとパスワードの組み合わ せ)を持つ • 付与されている権限の範囲でデータ・アセット上のスキーマおよエンティ ティを確認することができる

    • スキーマ • データ・アセット内のエンティティのコレクション。Object Storageの場 合はバケットと表示 • エンティティ • データベーステーブルやビュー、単一の論理ファイルなどデータのコレク ション。多くの属性を持つ • サポートされるデータはUnicodeのみ • Oracle Databaseの場合はキャラクタセットがUTF8 データ・アセット Copyright © 2021, Oracle and/or its affiliates 36
  37. 2022/5現在 • Oracle Database for DBaaS and Exadata DB Systems

    • Oracle Object Storage • Oracle Autonomous Data Warehouse • Oracle Autonomous Transaction Processing • MySQL / PostgreSQL / Apache Hive /HDFS • Fusion Application(BICC)/Fusion Application(BIP) • Amazon RDS/Redshift、Amazon S3、Aurora • Microsoft SQL Server、Azure Synapse、Azure SQL Database • IBM DB2 • Influx DB ソース/ターゲット片側のみサポートの場合があるので注意 ドキュメントを必ず確認 • https://docs.oracle.com/en-us/iaas/data-integration/using/data-assets.htm データ・アセットでサポートされているデータ・ソース Copyright © 2021, Oracle and/or its affiliates 37
  38. Fusion Application:Oracle BI Cloud Connector(BICC) BICC経由でFusion Applicationをソースとして利用可 • Object Storageが別途必要

    2種類の抽出が可能 • Full:すべてのデータを抽出 • Incremental:ユーザーが指定した最終抽出日から作成 または変更されたデータを抽出 • どちらも必要に応じて、最初の抽出日を指定可能 データ・アセットでサポートされているデータ・ソース Copyright © 2021, Oracle and/or its affiliates 38
  39. Fusion Application : Oracle BI Publisher(BIP) BIP経由でFusion Applicationsをソースとして利用 • BIPレイヤーで利用可能なすべてのレポート

    ⇒データエンティティ • BIPのフォルダー ⇒データアセットのスキーマ パラメータのサポート • BIPからデータを抽出するためのパラメーターとして、 チャンクサイズと行制限を指定 • BIPレポートパラメータをパラメータ化 データ・アセットでサポートされているデータ・ソース Copyright © 2021 Oracle and/or its affiliates.
  40. オブジェクトタイプと圧縮タイプ • OCI Object Storage/AWS S3でサポートされるオブジェクトタイプ。プリミティブ型の読み取り/書き込みが可能。 • CSV • JSON

    • Parquet • Avro • OCI Object Storageでサポートされる圧縮タイプ • Auto (Default) Parquet/AvroはAutoのみ • Gzip • Bzip2 • Deflate • Lz4 • Snappy データ・アセットでサポートされているデータ・ソース Copyright © 2021, Oracle and/or its affiliates 40
  41. 階層のサポート(現在Oracle Object Storageのみ) JSON,Parquet,Avroで配列または構造体の要素の処 理、変換をサポート • 複数行のJSON • リーフレベルの変換 •

    DataXplorerでの複雑なデータの表示 • 配列値のVarchar型での保存 json_expression.cities [0] .city_nameのようなイン デックスを使用した配列型へのアクセス可 特定の制限があるためドキュメントを確認 https://docs.oracle.com/en-us/iaas/data- integration/using/data-assets.htm データ・アセットでサポートされているデータ・ソース Copyright © 2021, Oracle and/or its affiliates 41
  42. 利用できないOracle Databaseのデータ型 •ROWID •UROWID •BFILE •TIMESTAMP WITH LOCAL TIMEZONE •INTERVAL

    DAY TO SECOND •INTERVAL YEAR TO MONTH •XMLTYPE •SDO_GEOMETRY •NCHAR •NVARCHAR 最新はhttps://docs.oracle.com/en-us/iaas/data-integration/using/data-assets.htmの”Data Types Not Supported”をご確認ください。 データ・アセットでサポートされているデータ・ソース Copyright © 2021, Oracle and/or its affiliates 42
  43. 入力項目 • 以下を入力 • 名前と識別子(識別子は名前と同じ値で自動入力) • タイプを選択 • タイプに応じた接続の設定 •

    ドキュメントに各手順あり • 入力後、テスト接続で確認 データ・アセットの作成 Copyright © 2021, Oracle and/or its affiliates 43 例:Autonomous Databaseの場合 例:Object Storageの場合
  44. 接続 接続は、データ・ソースへの接続に使用されるユーザーとパスワード の組合せ • データ・アセット作成時にデフォルトの接続を指定 • ほとんどのデータ・ソースでパスワードのほかにOCI Vaultで管理す るシークレットを利用可能 必要に応じて接続の追加が可能

    • デフォルトに変更可 データ・アセットを削除すると、接続も削除される データ・アセットの作成 Copyright © 2021, Oracle and/or its affiliates 44
  45. スキーマからデータ・エンティティまで確認 • データ・アセットのリストからドリルダウンすることでデータ・エンティティのデータまで確認 データ・アセットの確認 Copyright © 2021, Oracle and/or its

    affiliates 45
  46. Copyright © 2021, Oracle and/or its affiliates 46 プロジェクト

  47. 概要 以下の設計リソースのコンテナ。デフォルトで”My First Project”が作成される • データ・フロー • タスク • パイプライン

    ワークスペース内で複数のプロジェクトを作成可 プロジェクト内で2階層までのフォルダを作成可 プロジェクト Copyright © 2021, Oracle and/or its affiliates 47 プロジェクト フォルダ フォルダ フォルダ フォルダ ワークスペース プロジェクト
  48. プロジェクトの作成 1. ホームから「プロジェクト」を選択 2. 「プロジェクトの作成」をクリック 3. 以下を設定して作成 • 名前 •

    サンプルの有効化オプション • 有効化した場合、ステージング場所 (オブジェクトストレージ)を指定する 必要あり プロジェクトの作成 Copyright © 2021, Oracle and/or its affiliates 48
  49. サンプル サンプルを有効化すると、プロジェクトにv1_0フォルダーとその中に以下のデータ・フローを作成 プロジェクトの作成 Copyright © 2021, Oracle and/or its affiliates

    49 データ・フロー 内容 Data Copy データをコピーします。ターゲットは新しいデータエンティティになります。この例は、オブジェクトストレージに新しいオブジェクトを作成するように構成さ れています。データフローはソースエンティティとターゲットエンティティでパラメータ化されます。これにより、データフローを使用するときに別のソースとター ゲットを構成できます。 Data Fileter データをコピーしてフィルタリングします。ターゲットは新しいデータエンティティになります。この例は、オブジェクトストレージに新しいオブジェクトを作成す るように構成されています。データフローは、ソースエンティティとターゲットエンティティでパラメータ化されます。これにより、データフローを使用するときに、 異なるソース、ターゲット、およびフィルタを構成できます。 Data Join データをコピーして結合します。ターゲットは新しいデータエンティティになります。この例は、オブジェクトストレージに新しいオブジェクトを作成するように 構成されています。データフローはソースエンティティとターゲットエンティティでパラメータ化されます。これにより、データフローを使用するときに、異なる ソース、ターゲット、および結合を構成できます。 Data Deduplicate データを重複排除します。ターゲットは新しいエンティティを作成します。この例は、オブジェクトストレージに新しいオブジェクトを作成するように構成さ れています。データフローは、ソースエンティティとターゲットエンティティでパラメータ化されます。 Data Enrich ロード時間とタイムスタンプデータを追加します。ターゲットは新しいエンティティを作成します。データフローは、ソース/ターゲットエンティティでパラメータ 化されます。 Data Filter Enrich Data Enrichにフィルタリングを追加した例。
  50. プロジェクト、フォルダ間の設計リソースの移動、コピー • フォルダー、データ・フロー、パイプライン、タスクを同じワークス ペース内の1つのプロジェクト/フォルダーから別のプロジェクト/フォ ルダーに移動できる 設計リソースの管理 Copyright © 2021, Oracle

    and/or its affiliates 50
  51. 51 Copyright © 2021, Oracle and/or its affiliates データ・フロー

  52. 概要 ソースシステムとターゲットシステム間のデータに対する操作を定義 する設計リソース データ・フローエディタ(ビジュアルエディタ)で演算子をドラッグアン ドドロップしETLプロセスを作成する • ソース/ターゲット • 結合 •

    フィルタ • 式/集計 • ソート • 個別 • : リリースが上がるごとに追加 データ・フロー Copyright © 2021, Oracle and/or its affiliates 52
  53. データ・フロー・エディタの起動 プロジェクトの詳細「データ・フロー」から「データ・フ ローの作成」をクリック または ワークスペースのホームのクイック・アクションの「デー タ・フローの作成」をクリック データ・フロー・エディタが起動 データ・フローの作成 Copyright ©

    2021, Oracle and/or its affiliates 53
  54. データ・フロー・エディタを利用した設計 データ・フローの作成 Copyright © 2021, Oracle and/or its affiliates 54

    フィルタ ソース 式 ソート 結合 ターゲット 1.ドラッグアンドドロップで演算子を配置し、プロパティを設定 2.入力の演算子から出力の演算子へドラッグすることで関係を設定 3.「検証」後「保存」 ※保存は定期的に行うことを推奨 ※ 各演算子については別章に記載
  55. パラメータの利用 データ・フローのほとんどの構成設定はパラメータ化でき、統合 タスクまたは実行時に設定が可能 • データ・アセット、接続 、スキーマ、データエンティティ • フィルタまたは結合条件 パラメータは各演算子で設定 •

    データ・フローエディタのグローバルパラメータで使用可能 なすべてのパラメータを一覧表示 データ・フローの作成 Copyright © 2021, Oracle and/or its affiliates 55
  56. Data Xplorer データ・フロー及びデータローダータスクで利用 • データのプレビューおよび変換を使用したデータプリパレーション • 除外する: データセットから属性を削除 • 名前変更:

    属性の名前を変更 • 大/小文字の変更: 小文字/大文字の変換 • 属性のマージ: 2つ以上の列を区切り文字とオプションのプレフィッ クス/サフィックスとともにマージ • 置換: 特定の値を別の値に置き換え • 抽出: 特定の値またはパターンを抽出 • Null埋め: null値を特定の値に置き換え • ハッシュ: MD5, SHA-1, SHA-2を使用してデータを暗号化 • ソート: データを昇順または降順で並べ替え • 形式: 文字列、日付、数値にデータ形式を適用する データセット全体のプロファイリングメトリックを表示 データ・フローの作成 Copyright © 2021, Oracle and/or its affiliates 56
  57. 「データのフィルタ」を利用した変換 名前/パターンまたはデータ型のフィルタを使用して、一致する 属性に変換を適用 • 例:日付データ型でフィルタリングし、すべての日付属性に 日付フォーマット機能を適用 両方のフィルタを一緒に使用することでより複雑な変換ルール を作成可 • 例:

    *NAMEに一致するパターンとVARCHAR型でフィル タリングして該当する属性を大文字に変換 Data Xplorer Copyright © 2021, Oracle and/or its affiliates 57
  58. Copyright © 2021, Oracle and/or its affiliates 58 タスク

  59. 概要 データに対して実行する一連のアクションを指定する設計時のリソース タスクの種類 • 統合タスク • データ・ローダー・タスク • パイプライン・タスク •

    SQLタスク • OCIデータ・フロー・タスク • RESTタスク タスク Copyright © 2021, Oracle and/or its affiliates 59
  60. 作成手順 1. プロジェクトのホームの詳細でタスクを選択 2. 「タスクの作成」でタスクを選択する 各タスクの作成はクイック・アクションからも可能 タスクの作成 Copyright © 2021,

    Oracle and/or its affiliates 60
  61. パラメータの利用 パラメータ値の設定は以下で行うことができる • [パラメータの構成]ブロックでパラメータ値を変更 • アプリケーションに公開されたタスク実行時に新しい値を指定 • APIまたはSDKを使用して実行時に設定 タスクの作成 Copyright

    © 2021, Oracle and/or its affiliates 61
  62. 統合タスク データ・フローを使用するタスク • 実行時に使用するパラメータ値の選択も可 1. データ・フローを選択 2. (オプション)データ・フローで設定された値ではない新しい値で パラメータを構成 3.

    タスクの検証 タスクの種類 Copyright © 2021, Oracle and/or its affiliates 62
  63. データ・ローダー・タスク 様々なデータセットをデータマートまたはデータレイクにロードするタスク 1. 1つまたは複数のソース・データエンティティを選択 2. ターゲット・データエンティティを選択 3. (オプション)Data Xplorerを使用してデータの変換を設定 タスクの種類

    Copyright © 2021, Oracle and/or its affiliates 63
  64. SQLタスク データ・アセットのデータベースでSQLオブジェクトを実行する タスク サポートされるデータベース • Oracle Database(11gを除く) • Autonomous Data

    Warehouse • Autonomous Transaction Processing 現時点ではストアドプロシージャのみ(2022/6) • 定義された変数はパラメータとして公開 タスクの種類 Copyright © 2021, Oracle and/or its affiliates 64
  65. パイプライン・タスク 設計したパイプラインを指定するタスク • 実行時に使用するパラメーター値を設定可能 タスクの種類 Copyright © 2021, Oracle and/or

    its affiliates 65
  66. OCI Data Flow タスク 既存のOCI Data Flowアプリケーションを指定するタスク • 以下のオーバーライドが可能 •

    ドライバ・タイプ • エグゼキュータ・タイプ • エグゼキュータの数 • 以下を指定可能 • Spark構成のプロパティ • アプリケーションの引数 タスクの種類 Copyright © 2021, Oracle and/or its affiliates 66
  67. RESTタスク REST APIエンドポイントを呼び出すタスク • サポートされるHTTPメソッド • GET/POST/PUT/PATCH/DELETE • 次の部分に対してパラメータを使用可 •

    URLパラメータ • リクエストのヘッダー値 • POST/PUTリクエストのリクエスト本文全体 • RESTコールを正常に完了するための基準を決定する成 功条件 • パイプラインでの利用可 • 制限 • 現在は同期RESTコールのみサポート • サポートされるレスポンスの最大サイズは512K。それ以上 は切り捨て タスクの種類 Copyright © 2021 Oracle and/or its affiliates.
  68. Copyright © 2021, Oracle and/or its affiliates 68 パイプライン

  69. 概要 一連のタスクの実行を順番に管理および調整をする設計リソース • サポートされるタスク • データローダー • データ統合 • パイプライン

    • SQL • REST :今後のリリースでさらに追加される予定 • タスクはシーケンシャルまたはパラレルで実行可能 • ランタイムパラメータをサポート パイプライン Copyright © 2021, Oracle and/or its affiliates 69
  70. 作成手順 1. プロジェクトのホームの詳細でパイプラインを選択 2. 「パイプラインの作成」をクリック 3. フロー・エディタで「起動」と「終了」の間に以下の 演算子を設定 • タスク(統合/データローダー/SQL/パイプラ

    イン/REST) • マージ • 式 パイプラインの作成 Copyright © 2021, Oracle and/or its affiliates 70
  71. マージ演算子 パラレルでタスクが実行される場合、後続の出力リンク(ダウンストリーム)を実行するための条件を指定 • すべて成功 • すべて失敗 • すべて完了 • 少なくとも1つの成功

    • 少なくとも1つの失敗 条件のエラーハンドリングのデフォルトは成功 パイプラインの設計 Copyright © 2021, Oracle and/or its affiliates 71
  72. パラメータと式演算子 実行時に生成されるシステム・パラメータ • Status (SYS.STATUS) • Error message (SYS.ERROR_MESSAGE) •

    Number of inserts (SYS.NB_OF_INSERTS) • Duration (SYS.DURATION) など 出力パラメータとして利用可能 • 1つの演算子からもう1つの演算子へ引き渡せる 式演算子を利用することで、前の演算子から出力された パラメータを操作できる パイプラインの設計 Copyright © 2021, Oracle and/or its affiliates 72
  73. Copyright © 2021, Oracle and/or its affiliates 73 アプリケーション

  74. 概要 依存関係とともに登録されたタスクなどの実行用コンテナ(テスト環境および本番環境) タスクは実行する前にアプリケーションへの公開が必要 以下の2つに公開が可能 • OCI Data Integrationで作成するアプリケーション • OCIデータ・フローのアプリケーション

    アプリケーション Copyright © 2021, Oracle and/or its affiliates 74
  75. 作成手順 1. ホームから「アプリケーション」を選択 2. 「アプリケーションの作成」をクリック 3. 名前を指定して作成 アプリケーションの作成はクイック・アクションからも可能 既存のアプリケーションのコピーとして作成することも可能 アプリケーションの作成

    Copyright © 2021, Oracle and/or its affiliates 75
  76. 既存のアプリケーションとしてコピー 既存のアプリケーションとしてコピーした場合、ソース・アプリケーションと同期ができる アプリケーションの作成 Copyright © 2021, Oracle and/or its affiliates

    76
  77. Application Copy/Syncの利用 アプリケーションは既存のアプリケーションからコピーして作成した場合、ソースアプリケーションとの同期ができる ⇒異なるプロジェクト、ワークスペースのコピーも可能であるため、開発環境/テスト環境/本番環境の運用にも利用可 アプリケーションのライフサイクル Copyright © 2021, Oracle and/or

    its affiliates ▪プロジェクト内で開発とテストの例 ▪ワークスペースで環境を分けた例 77
  78. パッチの適用 タスクのアプリケーションへの公開手順 1. [タスク]を選択してから[アプリケーションに公開]を選択し、 最後にアプリケーションを選択 2. タスクを公開するとアプリケーションにパッチが適用される • 公開操作の進行状況は[アプリケーション]>[パッチ]で 監視可能

    3. 公開されたタスクは[アプリケーション]>[タスク]の下に表示 され実行可能になる 公開済みのタスクは対象タスクのアクションの[公開取消]で非 公開にできる アプリケーションとタスクの公開 Copyright © 2021, Oracle and/or its affiliates 78
  79. 公開済みタスクの実行 タスクの実行手順 1. [アプリケーション]>[タスク]で対象の タスクの[実行]を選択 2. タスクにパラメータが含まれている場合、パラメータを構成し 実行 3. タスクを実行すると[アプリケーション]>[実行]で実行状況を

    監視 • 実行ステータス: 未開始、キュー済み、実行中、成功、エラー 4. 実行完了後、詳細を取得するには[ログの表示]をクリックす る 5. [再実行]でタスクの再実行が可能 アプリケーションとタスクの実行 Copyright © 2021, Oracle and/or its affiliates 79
  80. REFERENCES(参照)によるデータソースおよびパイプライン内のタスクのマッピング 公開したタスクが利用するデータソースの変更およびパイプライン タスク内で利用するタスクの変更が可能 本番環境と開発環境が異なる場合などに有用 データソースでは以下のマッピングが可能 • データアセット • 接続 •

    スキーマ アプリケーションとタスクの実行 Confidential – © 2021 Oracle Internal/Restricted/Highly Restricted
  81. パッチの監視:各アプリケーション画面の”Patches” アプリケーションの監視 Copyright © 2021, Oracle and/or its affiliates 公開/非公開、コピー/同期などアプリケーション更新の実行ステータス、結果、失敗時のエラー確認

    失敗時のエラーの確認 81
  82. 表示される情報 パッチの監視:各アプリケーション画面の”Patches” アプリケーションの監視 Copyright © 2021, Oracle and/or its affiliates

    Patch Time パッチが適用された時間 Status 以下のいずれか “Queued”、“Running”、“Success”、”Error” Type 以下のいずれか “Publish” タスクの公開 “Unpublish” タスクの非公開 “Sync” アプリケーションのコピーまたは同期 Initiated By パッチを適用したユーザー Description システムによって自動生成された説明 82
  83. タスク実行:各アプリケーション画面の”Runs” タスク実行の一覧:ステータスによるフィルタリング(Quick Filters)やタスク実行名での検索が可能 アプリケーションの監視 Copyright © 2021, Oracle and/or its

    affiliates 83
  84. タスク実行:各アプリケーション画面の”Runs” 表示される情報 アプリケーションの監視 Copyright © 2021, Oracle and/or its affiliates

    名前 説明 Name システムで作成されたタスク実行名 Status 以下のいずれか “Not Started”、“Queued”、“Running”、 “Success”、”Error”、”Terminating”、”Terminated” Type 実行されたタスクのタイプ “Integration”、“Data Loader”など Data Read 処理のために読み込まれたデータ量 Rows Written 挿入または更新された行数 Started タスク実行開始時間 Ended タスク実行終了時間 Duration タスク実行実行時間 Initiated by タスクを実行したユーザー 84
  85. タスク実行:各アプリケーション画面の”Runs” タスク実行の一覧:パイプラインタスクの場合は展開することで含まれるタスク実行の情報を参照できる アプリケーションの監視 Copyright © 2021, Oracle and/or its affiliates

    85
  86. タスク実行:各アプリケーション画面の”Runs” ログの確認:ログは失敗時に出力がされる。保持期間は60日間。 アプリケーションの監視 Copyright © 2021, Oracle and/or its affiliates

    86
  87. タスク実行:アプリケーション画面の”Runs” アプリケーションの監視 Copyright © 2021, Oracle and/or its affiliates 2つのタスク実行の比較

    • 実行期間/処理済みデータをチャート表示 87
  88. タスク実行:タスク実行の詳細 Overview:実行状況および過去の実行との比較、実行時パラメータ、ログの確認 アプリケーションの監視 Copyright © 2021, Oracle and/or its affiliates

    タスク実行一覧と同じ情報 過去の実行(5回まで)との比較と統計 実行期間と処理データ量のチャート 平均/最大/最小処理時間 実行時のパラメータ値 88
  89. タスク実行:タスク実行の詳細 Pipeline graph:パイプラインの開始から終了までの一連のタスクとアクティビティを表示 • 成功したパスと失敗したパス、およびタスクまたはアクティビティの実行ステータスを表示 • ログはパイプラインタスクのログのみであり、含まれている各タスクのログはタスク実行一覧から確認する アプリケーションの監視 Copyright ©

    2021, Oracle and/or its affiliates 選択したタスクの詳細、パラメータを表示 各タスクの実行ステータス、実行結果を表示 89
  90. タスク実行:タスクの中の実行状況の確認は不可 • どの演算子まで進んでいるかなど、各タスクの中の実行状況を確認することはできない • データ・フローの演算子は論理的なものであり、実行単位ではないため アプリケーションの監視 Copyright © 2021, Oracle

    and/or its affiliates 90
  91. アプリケーションレベル:各アプリケーション画面の”Monitor Application” 合計、成功、実行中、失敗、終了済みのタスク実行合計数を表示 • ワークスペースの監視でアプリケーションを指定した情報と同じ アプリケーションの監視 Copyright © 2021, Oracle

    and/or its affiliates 91
  92. Copyright © 2021, Oracle and/or its affiliates 92 スケジュール

  93. 概要 公開済みタスクを自動的に実行するタイミングと頻度を定義 頻度 • 毎時(最低間隔は30分となります) • 毎日:特定の時間にN日ごとに繰り返します • 毎週:N週ごとに特定の曜日、特定の時間に繰り返します •

    毎月:Nか月ごとに、特定の日に特定の時間に繰り返します • Cron : cron形式で手動で設定 スケジュールは複数のタスク・スケジュールで再利用可 • タスク・スケジュール:公開されたタスクとスケジュールを関連付け スケジュール Copyright © 2021, Oracle and/or its affiliates 93
  94. OCI Data Integration データ・フロー演算子 Copyright © 2021, Oracle and/or its

    affiliates 94
  95. データ・フロー・エディタ フローの設計 Copyright © 2021, Oracle and/or its affiliates 95

    Toolbar • ズーム・イン/アウト • ズームのリセット • グリッド・ガイド表示 /非表示 • 自動レイアウト • ゴミ箱 • 元に戻す/再実行 演算子 • ソース • フィルタ • 式 • ソート • マイナス ボタン • 保存 • 保存して閉じる • 名前を付けて 保存 • 検証 • エンティティのリ フレッシュ • 取消 表示 • プロパティの表示/非表示 • 演算子の表示/非表示 • 検証の表示/非表示 • パラメータの表示/非表示 プロパティ パネル • 詳細 • 属性 • データ • マップ (ターゲットのみ) • 検証 キャンバス • 演算子をドラッグアンドドロップし、それ らをリンクしてプログラムを設計します • ターゲット • 結合 • 集計 • 個別 • 論理積
  96. フロー設計に使用する演算子 データ・フロー Copyright © 2021, Oracle and/or its affiliates 96

    入力/ 出力 ソース(Source) 入力元となるデータエンティティを指定 ターゲット(Target) 変換後のデータをロードする出力先となるデータエンティティを指定 整形 フィルタ(Filter) データに対するフィルタ処理を行う 結合(Join) データのJoin(結合)を行う 式(Expression) データに対して派生フィールドを追加する式を指定。パラメータを割り当てることも可能。 集計(Aggregate) すべての行または行のグループに対して、集計やカウントのような計算処理を行う ソート(Sort) データの並べ替えを昇順または降順で実行 一意(Distinct) 一意の値を持つ個別の行を返す 統合(Union) Union(統合)処理を行う マイナス(Minus) 2つのデータエンティティを比較し、一方にはあるがもう一方にはない行を返す 論理積(Intersect) 2つ以上のデータエンティティを比較し、対象データエンティティすべてに存在する行を返す 分割(Split) 特定の条件に基づき入力データを2つ以上の出力に分割 ルックアップ(Lookup) 別のデータエンティティを参照 ピボット(Pivot) 入力ソースの1つの属性から一意の行値を取得し、その値を出力の複数の属性にピボットする ファンクション(Function) Oracle Functionsにデプロイされたファンクションを使用
  97. 概要 データ・フローへの入力として機能するデータエンティティを識別する タブ説明 • 詳細 • データ・アセット、接続、スキーマおよびデータエンティティの選択 • 必要に応じてパラメータを割り当て •

    属性 • データエンティティの属性/列をリスト • ルールの適用で属性を除外または名前変更 • データ • データのサンプルをプレビューし、変換を適用 • 検証 • 演算子を検証し、警告またはエラーを表示 ソース Copyright © 2021, Oracle and/or its affiliates 97
  98. SQLクエリ ソースがOracle Databaseの場合、データエンティティを選択 する代わりに、SQLを直接記述することが可能 • SQLクエリ構文の検証あり • SQL結果の出力がソース演算子の属性となる ソース Copyright

    © 2021, Oracle and/or its affiliates 98
  99. 拡張オプション スキーマドリフトを許可する(デフォルト:有効) • 有効の場合、データ・フローの設計時および実行時にスキーマ定義の 変更を動的に処理する。無効の場合は処理せず、指定時のデータエ ンティティの定義が使用される プッシュダウンを許可する(デフォルト:有効) • Oracle Database/MySQLで選択可

    • システムがプッシュダウンをサポートしている場合、OCI-Data Integrationがソースデータベースシステムを使用した変換操作の処理 が可能 ファイル・メタデータを属性としてフェッチ(デフォルト:無効) • OCI Object Storage/AWS S3で選択可 • ファイル名やファイルサイズなどのファイルメタデータをデータに含む ソース Copyright © 2021, Oracle and/or its affiliates 99
  100. パターンと圧縮ファイルのサポート 一度に複数のファイルを自動的に選択して処理するパターンをサポート • 名前パターンに一致するファイルを自動的に処理 • すべてのファイルは同じ構造およびファイルタイプの必要あり 圧縮ファイルはOCIオブジェクトストレージのCSVファイルとJSONファイル でサポート • Gzip

    • Bzip2 • Deflate • Lz4 • Snappy ソース Copyright © 2021, Oracle and/or its affiliates 100
  101. 属性タブ [属性]タブには、選択したデータエンティティの一部であるすべての フィールド/列が一覧表示される • 名前(例:FIRST_NAME)またはパターン(例:*NAME*)を 使用して特定の属性をフィルタリング • 選択した属性の除外または名前変更 • ルールとして作成される

    • フィルタリングした対象属性への適用可 ソース Copyright © 2021, Oracle and/or its affiliates 101
  102. 概要 変換されたデータを格納するデータエンティティを指定 タブ • 詳細 • データ・アセット、接続、スキーマおよびデータエンティティを選択 • 統合戦略: 挿入/上書き/マージ

    • 必要に応じてパラメータを割り当て • 属性 • データエンティティの属性/列をリスト • ルールの適用で属性を除外または名前変更 • データ • マップ • 属性のマッピングを定義 • 検証 • 演算子を検証し、警告やエラーを表示 ターゲット Copyright © 2021, Oracle and/or its affiliates 102
  103. 拡張オプション 制限の拒否 • Autonomous Databaseで指定可 • ロードする前に拒否できるエラー行の最大数を指定 ロード順序 • 複数のターゲットがある場合にロードの順序番号を指定。

    • デフォルトは0。値0のターゲットに最初にロードされ、次に値1のターゲッ トへのロードと順にロードされていく • すべてが同じ値の場合は特定の順序でのロードはされない ターゲット Copyright © 2021, Oracle and/or its affiliates 103
  104. マップタブ ターゲット Copyright © 2021, Oracle and/or its affiliates 104

    サマリ (ターゲット属 性) • マップ済み/未マッ プ • 属性合計 ソース属性 • すべて/マップ済み / 未マップ • 名前によるフィルタ • 属性をソースから ターゲットにドラッグ アンドドロップします アクション • 自動マップ • 位置 • 名前 • パターン別マップ • 手動マップ • リセット・マッピング ターゲット属性 • すべて/マップ済み / 未マップ • 名前によるフィルタ • 既存のマッピングの クリア ルールの表示 • サイドパネルを開いて、 マッピングルールを確認 および管理します
  105. マッピングアクション 位置による自動マップ • 属性の位置に基づいてマップされる • ソースの1番目の位置の属性は、ターゲットの1番目の位置の属性にマップ される 名前による自動マップ(デフォルト) • 属性の名前に基づいてマップされる

    • ソース.BANK_ID はターゲット.BANK_IDにマップされる パターン別マップ • ソース属性とターゲット属性の両方にアスタリスク(*)と疑問符(?)の記 号を使用してカスタムパターンを定義する • 結果を視覚化によるマッピングのプレビューができる 手動マップ • ソースとターゲットの属性を選択してマッピングする リセット・マッピング • マッピングのリセット ターゲット Copyright © 2021, Oracle and/or its affiliates 105
  106. パターン別マップの例 1. ソース・パターンを入力する (例 *ID ) • 英数字と一緒に*と?の組み合わせを使用してパターンを入力する • *または?の各出現は1つのキャプチャグループを表す

    2. パターンには、1つ以上のキャプチャグループを含めることができる: $1, $2, … • *ID は1つ: $1 • C*S*ID は2つ: $1 and $2 3. ターゲットパターンを入力する(例 $1ID) • CUST_, CITY_, COUNTRY_ は上記の*IDの*によってキャプチャされる • $1ID はCUST_ID, CITY_ID, COUNTRY_ID…と一致する • $1OUT はCUST_OUT, CITY_OUT…と一致する 4. 「マッピングのプレビュー」をクリックして、指定したパターンを使用してソースか らターゲットへの属性マッピングを視覚化する ターゲット Copyright © 2021, Oracle and/or its affiliates 106
  107. パターンの活用:スキーマドリフトプロテクション パターンによるルール設定でスキーマの変更による手動メンテナ ンスを軽減する • パターンを使用して特定の列を除外するようにルールの設 定が可能 • 例:*CIT*を含むすべての属性名を除外し、特定の属性 CITY_IDを除外する •

    ハードコードされた値の代わりにパターンを使用 • ターゲット演算子の「パターンによるマッピング」 • Data Xplorerの「抽出」 ターゲット Copyright © 2021, Oracle and/or its affiliates 107
  108. 単一ファイルへの出力 単一ファイルへの出力をオプションで選択 • 「上書き」または「新規データ・エンティティの作成」 のときに有効化 • 出力に必要なファイル名の定義が必要 • ファイル名にパラメータを含めることも可 デフォルトは複数ファイルでの出力

    • パフォーマンスに影響があるため、小さいデータセッ トでのみ使用する ターゲット Copyright © 2021, Oracle and/or its affiliates 108
  109. 概要 インバウンド・ポートから特定の属性を選択して、条件に基づいて アウトバウンド・ポートまでのダウンストリームを続行 • 式エディタを使用してフィルタ条件を作成する • フィルタ条件はパラメータ化可能 • タブ: 詳細、属性、データ、検証

    フィルタ Copyright © 2021, Oracle and/or its affiliates 109
  110. 概要 複数のインバウンドリソースからのデータをリンク • サポートされる結合タイプ • 内側(Inner): 結合条件が満たされた2つのインバウンドソースから データを選択 • 左外部(Left

    Outer): 結合条件が満たされたインバウンドソース1から のすべてのデータとインバウンドソース2からのデータを選択 • 右外部(Right Outer):結合条件が満たされたインバウンドソース1か らのデータとインバウンドソース2からのすべてのデータを選択 • 完全外部(Full Outer): 2つのインバウンドソースからすべてのデータ を選択し、一致する行を選択、一致するものが見つからない場合は null挿入する • 式エディタを使用して結合条件を作成 • 結合条件はパラメータ化可 • タブ: 詳細、属性、データ、検証 結合 Copyright © 2021, Oracle and/or its affiliates 110
  111. 概要 データの1つの行に対して1つ以上の変換を実行して新しく派生 した属性を作成 • 式エディタを使用して、1つ以上の式を作成可 • パラメータの利用可 • 定義された式の結果は新しい属性として追加される •

    識別子 • データ型 • 長さ (データ型に依存) • タブ: 詳細、 属性、データ、検証 式 Copyright © 2021, Oracle and/or its affiliates 111
  112. データ型の変更 式演算子の[属性]パネルで属性のデータ型の変更可 • 1つ以上の属性を選択するか、名前やデータ型フィルタを 使用してから、[データ型の変更]をクリックして新しいデー タ型を構成する • 適用すると、CAST関数を使用した新しい式が作成され る 式

    Copyright © 2021, Oracle and/or its affiliates 112
  113. 概要 すべての行または行のグループに対して合計やカウントなどの計算を 実行して、新しく派生した属性を作成 • 式エディタを使用して、1つ以上の集計式を作成可 • 集計関数に限定: MAX, SUM,… •

    各集計式の結果は新しい属性として追加される • 識別子 • データ型 • 長さ (データ型に依存) タブ: 詳細、属性、データ、検証 集計 Copyright © 2021, Oracle and/or its affiliates 113
  114. 概要 データの並べ替えを昇順または降順で実行する • 属性名またはパターンを使用して1つ以上のソート条件 を作成可 • 昇順/降順の設定 • タブ: 詳細、属性、データ、検証

    ソート Copyright © 2021, Oracle and/or its affiliates 114
  115. 概要 一意の値を持つ個別の行を返す SELECT DISTINCTの動作と同じ タブ: 詳細、属性、データ、検証 個別 Copyright © 2021,

    Oracle and/or its affiliates 115
  116. 概要 2つのデータエンティティを比較し、一方のエンティティには存在す るが他方のエンティティには存在しない行を返す • 属性名または位置で照合する • 以下が必要 • 両方のデータ型が同じ •

    「名前による一致」の場合名前が同じ • 入力全体の属性の数は同じ タブ:詳細、属性、データ、検証 マイナス Copyright © 2021, Oracle and/or its affiliates 116
  117. 概要 2つ以上のデータエンティティを比較し、接続されたエンティティに 存在する行を返す • 属性名または位置で照合する • 以下が必要 • 両方のデータ型が同じ •

    「名前による一致」の場合属性名が同じ • 入力全体の属性の数は同じ タブ:詳細、属性、データ、検証 論理積 Copyright © 2021, Oracle and/or its affiliates 117
  118. 概要 特定の条件に基づいて、データの入力フローを2つ以上の出力 フローに分割する • 1つ以上の条件を指定できる • ユーザー指定の条件のいずれにも一致しないレコードには、 デフォルトの条件(条件式の設定なし)として扱われる 分割 Copyright

    © 2021, Oracle and/or its affiliates 118
  119. 概要 ルックアップ条件とプライマリ入力ソースとルックアップ入力ソース の2つのソースからの入力を使用してクエリと変換を実行 • 式エディターを使用してルックアップ条件を定義 • ルックアップ条件と値を使用して、ルックアップソースの行を検 索 • ルックアップソースからプライマリソースに属性を追加

    ルックアップ Copyright © 2021, Oracle and/or its affiliates 119
  120. アクション設定 ルックアップソースから複数の行が返される、または、行が返されない 場合に実行するアクションを指定できる • 複数一致 • 一致するすべての行を返す • 一致する行を1つ返します •

    最初に一致する行を返す • 最後に一致した行を返します • エラーを返す • 一致なし • 一致しない行をスキップする • 一致しない行を返す ルックアップ Copyright © 2021, Oracle and/or its affiliates 120
  121. 概要 入力ソースの1つの属性から一意の行値を取得し、その値を 出力の複数の属性にピボットできる • グループ化基準:グループ化する属性 • ピボット・キー:ピボット出力で新しい属性として値を使 用できる属性を選択 • ピボット値:ピボット・キーの属性値から、出力でピボット

    属性にする1つ以上の値を選択 • %PIVOT_KEY_VALUE%:ピボット・キーで指定された 値に対応する事前定義の変数 出力行数は、グループ化する属性の選択に基づく ピボット Copyright © 2021, Oracle and/or its affiliates 121
  122. 概要 Oracle Functionsにデプロイされたファンクションを使用 • 入力属性:入力属性は、データエンティティソースからの着信 属性にマップされる。階層のマップも可 • 関数構成:関数の入力形状を定義する1つ以上の関数 フィールドを指定 •

    出力属性:オペレーターの出力形状。データが処理された後 の関数からの出力を表すために、0個以上の属性を指定 • Array、Composite,Map型の割り当て可 ファンクション Copyright © 2021, Oracle and/or its affiliates 122
  123. 各関数の詳細はドキュメントを参照 種類 関数 集計 COUNT,MAX,MIN,SUM,AVG,LISTAGG 分析 FIRST_VALUE ,LAG,LAST_VALUE,LEAD,RANK,ROW_NUMBER 算術 ABS,CEIL,FLOOR,MOD,POWER,ROUND,TRUNC,TO_NUMBER

    条件 COALESCE,NULLIF 日付/時刻 CURRENT_DATE,CURRENT_TIMESTAMP,DATE_ADD,DATE_FORMAT,DAYOFMONTH,DAYOFWE EK,DAYOFYEAR,HOUR,LAST_DAY,MINUTE,MONTH,QUARTER,SECOND,TO_DATE,TO_TIMESTA MP,WEEK,YEAR,INTERVAL ハッシュ MD5,SHA1,SHA2 階層 SCHEMA_OF_JSON,FROM_JSON,TO_JSON,TO_MAP,TO_STRUCT,TO_ARRAY 比較 CASE、AND,OR,NOT,LIKE,=,!=,>,>=,<,<=,||,BETWEEN,IN 文字列 CAST,CONCAT,INITCCAP,INSTR,LOWER,LENGTH,LTRIM,NVL,REGEXP_SUBSTR,REPLACE,RTRI M,SUBSTRING,TO_CHAR,UPPER,LPAD,RPAD 一意のID NUMERIC_ID,ROWID,UUID 演算子で利用できる関数 Copyright © 2021, Oracle and/or its affiliates 123
  124. 階層データを解析するための関数 SCHEMA_OF_JSON • JSON文字列を解析し、そのスキーマを推測 FROM_JSON • JSON文字列を含む列を、指定されたスキーマを持つキータイプ、 StructType、またはArrayTypeとしてStringTypeを使用して MapTypeに解析 TO_JSON

    • StructType、ArrayType、またはMapTypeを含む列をJSON文字列 に変換 TO_MAP/TO_STRUCT/TO_ARRAY • マップ型/構造体型/配列型の列を作成。入力列は、キーと値のペアと してグループ化する必要あり • 構造体列を作成 演算子で利用できる関数 Copyright © 2021 Oracle and/or its affiliates.
  125. ユーザ定義関数(User Defined Functions(UDF)) ユーザ定義関数として独自にカスタマイズした関数の利用が可能 ワークスペースのレベルで作成し、ユーザ定義関数ライブラリで管理される 演算子で利用できる関数 Copyright © 2021 Oracle

    and/or its affiliates. ライブラリの作成 ユーザ定義関数の作成 ユーザ定義関数の利用
  126. OCI Data Integration リリース新機能 Copyright © 2021, Oracle and/or its

    affiliates 126
  127. 新機能 Copyright © 2021, Oracle and/or its affiliates 127 Release

    Date Update 2022/3 • データターゲットとしてApacheHiveをサポート • データソースとしてAmazonAuroraとInfluxDBをサポート • 長時間実行されるAPI操作を呼び出すRESTタスクのポーリングおよび終了構成の指定 • ソースまたはターゲットオペレーターのデータエンティティの検索にパラメーターを使用できるように • データフロー内のターゲットにデータをロードするためのロード順序指定 • Oracle ObjectStorageとAmazonS3をデータソースとして設定する場合以下が可能 • データの属性としてファイルメタデータ(ファイルサイズなど)を含めること • 名前を使用してファイルを選択した後、CSVファイルの生データの最初の10行を表示 • 1時間単位の頻度でのスケジュール作成 2022/5 • データソースまたはターゲットとしてHDFS(Hadoop分散ファイルシステム)をサポート • データローダータスクでソース・タイプが「データベース」または「ファイル・ストレージ」の場合に複数のデータ・エンティティをロードすることがで きるようになりました • 別コンパートメントへアプリケーションの移動ができるようになりました。またアプリケーションのOCIDコピーができるようになりました。 • スケジュールの実行間隔は最低で30分となります。 • 公開されたパイプライン内のタスクを、同じワークスペースまたは別のワークスペース内の別のアプリケーション内のタスクにマップすることがで きます。 • データフローでソース、ターゲット、または式の演算子をすばやく複製します。 • データフローで式演算子を使用して、ランタイムシステムで生成されたパラメーターを使用します。
  128. 新機能 Copyright © 2021, Oracle and/or its affiliates 128 Release

    Date Update 2021/11(21.d) • BI Publisherを使用したFusion Applicationへの接続 • Microsoft Azure SynapseとIBM DB2をデータソースとしてサポート • Oracle ObjectStorage階層データエンティティでMap複合型をサポート • 階層関数 • JSON文字列でスキーマを推測 • JSON文字列で指定されたスキーマを持つ配列、構造体、またはマップに変換 • 構造体、構造体の配列、マップまたはマップの配列からJSON文字列を作成 • 入力キーと値のペアからマップ/構造体を作成 • 入力属性から配列を作成 • ユーザー定義関数 • パイプラインでOCIデータフローアプリケーションを調整 • RESTタスク • 週単位、cron式でのスケジュール作成 • 演算子と関数の拡張 • ファンクション演算子でArray、Composite(Struct)、Mapをサポート • ピボット演算子でピボットキー値のエイリアス利用 • ターゲット演算子でエンティティ名の一部にパラメータを使用 • LDAP/RPAD文字列関数、ListAGG集計関数、INTERNAL日付/時刻関数 • 式からデータ型を推測 • アプリケーションの拡張:スキーマのマッピング、タスクの再実行 • 以下におけるポリシーの設定支援 • ワークスペースの作成、ObjectStorage,ADW,ATPのデータアセット作成 • サービスの概要ページ
  129. 新機能 Copyright © 2021, Oracle and/or its affiliates 129 Release

    Date Update 2021/7(21.c) • OCI DataFlowアプリケーションをスケジュールして実行するタスクの作成が可能に • ピボット演算子と集計関数式のサポート。1つの属性からの一意の行値を出力内の複数の新しい属性に変換が可能に • 一致する行がない、またはLookupのソースで一致する行が複数存在する場合のアクションの指定 • OCI Functionを呼び出すファンクション演算子のサポート • SQL文によるソース定義 • Object Storageのソース/ターゲットでの階層データと複合型のサポート • Data Flow上でのソース/ターゲットのデータエンティティのリフレッシュ • Object Storage上へのシングルファイルの出力サポート • プロジェクトへのサンプルフォルダの提供 • プロジェクト、フォルダ間のデータ・フロー、パイプライン、タスクの移動 • データフロー、パイプライン、タスクの編集中のコピー(「名前をつけての保存」) • ワークスペースとアプリケーションの統計表示 • タスク実行の詳細分析 • タスクのタイプと実行ステータスによるフィルタリング • 同じタスクタイプのタスク実行の比較 • タスクの実行で使用されるパラメータと構成済みの値の表示 • 現行と過去最大5回前の実行統計との比較 • パイプラインタスク実行のグラフ表示
  130. 新機能 Copyright © 2021, Oracle and/or its affiliates 130 Release

    Date Update 2021/5 (21.b.1) • Oracle Business Intelligence Cloud Connectorを使用して、Oracle Fusion Applicationsにデータ・ソースとして接続 • 式で利用できるパラメータのデータ型の拡張 2021/4 • 一連のタスクを最初から最後まで管理および調整するパイプライン • タスクの実行のスケジュール • split演算子、ルックアップ演算子の追加 • 式でのパラメータ利用(フィルタ、結合、式、集計、分割、およびルックアップ) • 単一の属性または属性のグループのデータ型の変換 • AmazonS3のデータ・ソースサポート • データ・アセットのメインページからデフォルトの接続のテストが可能に • データエンティティの検索時に正規表現の利用が可能 • ADW,ATPのデータ・アセット作成時のWalletファイルの自動取得 • 統合タスクのデフォルト名としてデータ・フロー名を使用
  131. 新機能 Copyright © 2021, Oracle and/or its affiliates 131 Release

    Date Update 2021/3 • マイナス演算子,論理積演算子の追加とマルチターゲットのサポート • スキーマドリフトとプッシュダウンの許可/不許可 • 式演算子でのデータ型の変換 • Microsoft Azure SQL Database, Amazon Redshift, Amazon RDS(for SQL Server, MySQL, Oracle)接続のサポート • パスワード管理へのOCI Vaultの利用 • Object Storage上のファイルのパターン検索 • Object Storage上のCSV,JSONファイルの圧縮 (Gzip, Bzip2, Deflate, Lz4, Snappy) サポート • リソースリストでのお気に入り表示 • データ・アセットの表示の拡張(タスク/データ・フロー以外での表示) • 変換時の属性のデータと長さの指定 • 複数タスクへのアプリケーション公開 • パブリック/プライベートエンドポイントのOCI Data Flowアプリケーションへのタスクの公開
  132. 新機能 Copyright © 2021, Oracle and/or its affiliates 132 Update

    2021/1 • ホーム上に最近利用したオブジェクトへのリンクを追加 • 結合演算子のサポート • 新規ユニークIDの作成とパターンを利用した置換 • 式と集計演算子のグループ属性におけるパターンの利用 • TO_DATE関数での新しい日付フォーマットとフォーマット変換のサポート 2020/10 • SQL Serverの接続サポート • Unicode &マルチバイトのサポート
  133. None