データ・フローについて
データ・フローでは、異なるシステム間でデータを移動および変換する方法を定義します。
データ・フローを実行すると、データ変換では結合、フィルタ、マッピングおよび制約を使用してソース・データを変換し、ターゲット表にロードします。 一度に実行できる実行フローは1つのみです。 1つのデータ・フローに複数のフローを配置することはできず、1つのフローを複数のフローに分散することはできません。
- データ・フローの作成
データ・フローを作成して、ソース接続からデータをロードし、変換を実行して、データをターゲット・データベースに移動します。 - データ・フロー・エディタについて
データ・フロー・エディタは、データ・エンティティ・パネル、データベース関数ツールバー、デザイン・キャンバス、プロパティ・パネルおよびステータス・パネルの5つの部分に分かれています。 - サポートされているデータベース関数
Oracle Data Transformsは、デザイン・キャンバスにドラッグ・アンド・ドロップしてデータ・フロー内のコンポーネントを接続できる様々なデータベース機能をサポートしています。 - コンポーネントの追加
データ・エンティティおよびデータベース関数をデザイン・キャンバスに追加し、論理的な順序で接続してデータ・フローを完了します。 - データ・フローでのテキスト埋込みベクトルの使用
データ変換では、ベクトル・データ型の使用とデータ・フローへのベクトルの埋込みがサポートされます。 現在、Data TransformsはOCI生成AIサービスと統合され、入力テキストをデータ分析および検索に使用できるベクトル埋込みに変換します。 - コンポーネント・プロパティ
プロパティ・パネルには、デザイン・キャンバスで選択したコンポーネントの様々な設定が表示されます。 - データ列のマップ
ソース・データ・エンティティをターゲット・データ・エンティティに接続すると、列名が列名で自動的にマップされます。 位置や名前に基づいて列をマップしたり、式エディタを使用して手動で列をマップすることもできます。 - データ・フローの検証および実行
マッピングの準備が完了したら、データ・フローの検証および実行に進むことができます。
親トピック: データ変換ページ
データ・フローの作成
データ・フローを作成して、ソース接続からデータをロードし、変換を実行して、データをターゲット・データベースに移動します。
データ・フローは、次のいずれかの方法で作成できます:
新しく作成されたデータ・フローが、関連付けられたプロジェクトの「データ・フロー」ページに表示されます。 選択したデータ・フローの横にある「アクション」アイコン()をクリックして、編集、名前変更、コピー、フォルダの変更、開始、エクスポートまたは削除を行います。
「プロジェクト」ページから
「プロジェクト」ページからデータ・フローを作成するには、
- 「プロジェクト」ページで、「データ・フローの作成」をクリックします。
「データ・フローの作成」ページが表示されます:
- 「名前」フィールドに、新しいデータ・フローの名前を入力します。
- 新しく作成したデータ・フローに新しいプロジェクト・フォルダを作成する場合は、「新規プロジェクトの作成」を選択します。
- あるいは、新しく作成したデータ・フローを既存のプロジェクト・フォルダに追加するには、「既存プロジェクトに追加」をクリックします。
- 前のオプションで「新規プロジェクトの作成」を選択した場合は、「プロジェクト名」フィールドに、新しく作成したプロジェクトの名前を入力します。
- あるいは、前のオプションで「既存プロジェクトに追加」を選択した場合は、「プロジェクト名」ドロップダウンの矢印から必要なプロジェクトを選択します。
- 「説明」フィールドに、新しく作成したデータ・フローの説明を入力します。
- 「作成」をクリックします。
プロジェクト内の「データ・フロー」ページから
プロジェクト内の「データ・フロー」ページからデータ・フローを作成するには、
- 「プロジェクト」ページで、新しいデータ・フローを作成するプロジェクト・タイルをクリックします。 「プロジェクト詳細」ページが表示されます。
- 「データ・フロー」ページで、「データ・フローの作成」をクリックします。
- 新しいデータ・フローの「名前」および「説明」を指定します。
- 「次」をクリックします。
- ソース接続を定義するには、「接続」ドロップダウンから、データ・エンティティの追加元となる必要な接続を選択します。
- 「スキーマ」ドロップダウンに、選択した接続に対応するすべてのスキーマが2つのグループで表示されます:
- 既存のスキーマ(Oracle Data Transformsにインポートしたスキーマ)および
- 新規データベース・スキーマ(まだインポートしていないスキーマ)。
使用するスキーマをドロップダウンから選択します。 Oracle Object Storage接続の場合、「スキーマ」ドロップダウンには、接続の作成時にURLで指定したバケットの名前がリストされます。
- 「保存」をクリックします。
新しいデータ・フローを作成できるデータ・フロー・エディタが表示されます。
ホーム・ページから
「ホーム」ページからデータ・フローを作成するには、
- 「ホーム」ページで、「データの変換」をクリックします。 「データ・フローの作成」ページが表示されます。
- 新しいデータ・フローの「名前」および「説明」を指定します。
- ドロップダウンからプロジェクト名を選択します。 または、「+」アイコンをクリックしてプロジェクトを作成します。
- 「次」をクリックします。
- 「接続」ドロップダウンから、データ・エンティティの追加元となる必要な接続を選択します。 または、「+」アイコンをクリックして新しい接続を作成します。
- 「スキーマ」ドロップダウンに、選択した接続に対応するすべてのスキーマが2つのグループで表示されます:
- 既存のスキーマ(Oracle Data Transformsにインポートしたスキーマ)および
- 新規データベース・スキーマ(まだインポートしていないスキーマ)。
使用するスキーマをドロップダウンから選択します。
- 「保存」をクリックします。
親トピック: データ・フローについて
データ・フロー・エディタについて
データ・フロー・エディタは、データ・エンティティ・パネル、データベース関数ツールバー、デザイン・キャンバス、プロパティ・パネルおよびステータス・パネルの5つの部分に分かれています。
- データ・エンティティ・パネル: データ・エンティティ・パネルには、データ・フローで使用できるデータ・エンティティが表示されます。 表示されたリストは、「名前」および「タグ」フィールドを使用してフィルタできます。 このパネルには、スキーマの追加、データ・エンティティのインポート、データ・フローに関連付けられたスキーマの削除、およびデータ・エンティティのリフレッシュが可能なオプションが含まれています。 これらのオプションの使用方法の詳細は、「コンポーネントの追加」を参照してください。
- データベース関数ツールバー: データベース関数ツールバーには、データ・フローで使用できるデータベース関数が表示されます。 データ・エンティティと同様に、使用するデータベース・ツールをデザイン・キャンバスにドラッグ・アンド・ドロップできます。 詳細については、「サポートされているデータベース関数」を参照してください。
- デザイン・キャンバス: デザイン・キャンバスは、変換ロジックを構築する場所です。 データ・エンティティおよびデータベース関数をデザイン・キャンバスに追加すると、これらを論理的な順序で接続してデータ・フローを完成できるようになります。
- プロパティ・パネル: プロパティ・パネルには、デザイン・キャンバスで選択したオブジェクトのプロパティが表示されます。 プロパティ・パネルは、4つのタブにグループ化されています。 「一般」、「属性」、「プレビュー・データ」、「列マッピング」および「オプション」。 選択したオブジェクトによっては、一部のタブのみ表示されます。 これらのオプションの詳細は、「コンポーネントのプロパティ」を参照してください。
- 「ステータス」パネル: データ・フローを実行すると、「ステータス」パネルに、リクエストを完了するためにバックグラウンドで実行されているジョブのステータスが表示されます。 現在実行中のジョブのステータスまたは最後のジョブのステータスを確認できます。 ステータス・パネルの詳細は、「データ・ロード、データ・フローおよびワークフローのステータスのモニター」を参照してください。
必要なデータ・フローを設計した後、
- 作成/設計したデータ・フローを保存するには、
をクリックします。
- 設計したデータ・フローのノードを配置するには、
をクリックします。
- 作成したデータ・フローを実行するには、
をクリックします。
- 作成したデータ・フローを検証するには、
をクリックします。
をクリックして、デザイン・キャンバスで作成したデータ・フロー・ダイアグラムを最大化または最小化します。
親トピック: データ・フローについて
サポートされているデータベース関数
Oracle Data Transformsは、デザイン・キャンバスにドラッグ・アンド・ドロップしてデータ・フロー内のコンポーネントを接続できる様々なデータベース機能をサポートしています。
データ・フロー・エディタの「データベース関数」ツールバーには、データ・フローで使用できる次のデータベース関数が含まれています。 データベース・ファンクションの詳細は、「Oracle Database SQL言語リファレンス」を参照してください。
- データ変換
次のコンポーネントが含まれます。
- 集計
- 式
- フィルタ
- 結合
- 個別
- 参照
- セット
- ソート
- 副問合せフィルタ
- 表ファンクション
- データ準備
次のコンポーネントが含まれます。
- データ・クレンジング
- 置換
- Equi_Widthビニング
- 分位ビニング
- リード
- ラグ
- 置換
- 機械学習
次のコンポーネントが含まれます。
- 予測
- 予測モデル
- 外れ値の検出
- テキスト埋込みベクトル
- テキスト
次のコンポーネントが含まれます。
- REGEXP COUNT
- REGEXP INSTR
- REGEXP SUBSTR
- REGEXP REPLACE
- 距離類似度の編集
- 次を含む
- Oracle Spatial and Graph
次のコンポーネントが含まれます。
- バッファ・ディメンション
- バッファ許容値
- 距離ディメンション
- 距離許容値
- 最近傍
- 簡略化
- Point
- ジオコード・ツール:
ノート:
次のジオコード・ツールは、non-Autonomous Database環境でのみ機能します。- ジオメトリとしてジオコーディング
- ジオコード
- 住所のジオコーディング
- すべてジオコーディング
- 住所をすべてジオコーディング
- 逆ジオコーディング
ノート:
次のジオコード・ツールは、Autonomous Database環境でのみ機能します。- ジオコード・クラウド
- 空間結合
親トピック: データ・フローについて
コンポーネントの追加
データ・エンティティおよびデータベース関数をデザイン・キャンバスに追加し、論理的な順序で接続してデータ・フローを完了します。
- 「データ・エンティティ」パネルで、「スキーマの追加」をクリックして、データ・フローで使用するデータ・エンティティを含むスキーマを追加します。
- スキーマの追加ページで、接続とスキーマ名を選択します。
- 「インポート」をクリックします。
- 「データ・エンティティのインポート」ページで、インポートするオブジェクトのタイプを選択します。 スキーマ内のすべてのオブジェクトをインポートしない場合はマスク/フィルタを選択し、「開始」をクリックします。
- 「データ・エンティティ」パネルに、インポートされたデータ・エンティティがリストされます。 このパネルには、次を実行できる様々なオプションがあります:
- データ・エンティティをリフレッシュ - リフレッシュicon
をクリックして、表示されたリストをリフレッシュします。
- 名前 - 名前でデータ・エンティティを検索します。
- 「タグ」 - 使用するタグの名前でデータ・エンティティをフィルタします。
- 「データ・エンティティのインポート」 - スキーマを右クリックしてこのオプションを表示します。 このオプションを使用して、データ・エンティティをインポートします。
- 「スキーマの削除」 - データ・エンティティを右クリックしてこのオプションを表示します。 このオプションを使用して、リストからスキーマを削除します。 このオプションではスキーマは削除されず、スキーマとこのデータ・フローとの関連付けのみが削除されることに注意してください。
- データ・エンティティをリフレッシュ - リフレッシュicon
- 同様に、必要に応じて、データ・フローにスキーマを追加します。
- データ・フローで使用する必要なデータ・エンティティをドラッグして、デザイン・キャンバス上にドロップします。
- 「データベース関数」ツールバーから、データ・フローで使用する変換コンポーネントをドラッグし、デザイン・キャンバスにドロップします。 データ・フローで変数を使用できます。 詳細については、「データ・フローでの変数の使用」を参照してください。
- デザイン・キャンバスのオブジェクトを選択し、横にある「コネクタ」アイコン(
)をドラッグして、コンポーネントを接続します。
- データ・フローを保存すると、1つ以上のコンポーネント接続に転送アイコンが重ねて表示される場合があります。 これは、ODIによって追加ステップが検出され、データ・サーバー間でデータの移動が必要であることを示しています。 このアイコンをクリックすると、そのステップに関連付けられたプロパティを表示できます。
親トピック: データ・フローについて
データ・フローでのテキスト埋込みベクトルの使用
データ変換では、ベクトル・データ型の使用とデータ・フローへのベクトルの埋込みがサポートされます。 現在、Data TransformsはOCI生成AIサービスと統合され、入力テキストをデータ分析および検索に使用できるベクトル埋込みに変換します。
データ・フローでベクトルの埋込みを使用する前に、次のことを実行する必要があります:
- Oracle Database 23ai接続を作成します。 データ変換で接続を作成する方法の一般的な手順は、「接続の操作」を参照してください。
- Oracle Cloud Infrastructure (OCI)生成AI接続を作成します。 「Oracle Cloud Infrastructure生成AI接続の作成と使用」を参照してください。
データ・フローでベクトル埋込みを使用するには:
- 「データ・フローの作成」の指示に従って、新しいデータ・フローを作成します。
- データ・フロー・エディタで、「スキーマの追加」をクリックしてソース接続を定義します。 「接続」ドロップダウンから、Oracle Database 23ai接続および使用するスキーマをドロップダウンから選択します。 「OK」をクリックします。
- データ・フローでソースとして使用する表をドラッグし、デザイン・キャンバスにドロップします。
- 「データベース関数」ツールバーで、「機械学習」をクリックし、「テキスト埋込みベクトル」変換コンポーネントをデザイン・キャンバスにドラッグします。
- 「テキスト埋込みベクトル」変換コンポーネントをクリックして、そのプロパティを表示します。
- 「一般」タブで、次を指定します:
- 「AIサービス」 - ドロップダウンから「OCI生成AI」を選択します。
- 「接続」 - ドロップダウンに、選択したAIサービスで使用可能なすべての接続がリストされます。 使用するOracle Database 23 ai接続を選択します。
- 「AIモデル」 - ドロップダウンには、選択したAIサービスおよび接続で使用可能なすべてのモデルがリストされます。 次のモデルがリストされます:
- "cohere.embed-english-light-v2.0"
- "cohere.embed-english-light-v3.0"
- "cohere.embed-english-v3.0"
- "cohere.embed-multilingual-light-v3.0"
- "cohere.embed-multilingual-v3.0"
- 「列マッピング」タブで、埋め込むソース列を演算子のINPUT属性にマップします。 列マッピングで使用できる列は、
input_text
のみです。 使用可能な列から「式」列にテキスト列をドラッグします。 これは、ベクトルが構築されるデータです。 - データ・フローでターゲットとして使用する表をドラッグし、デザイン・キャンバスにドロップします。
- データ・フローを保存して実行します。
データ変換では、ソース表内の各行のベクトルが作成され、ターゲット表に書き込まれます。
親トピック: データ・フローについて
コンポーネント・プロパティ
「プロパティ」パネルには、デザイン・キャンバスで選択したコンポーネントの様々な設定が表示されます。
選択したコンポーネントに応じて、次のいずれかのアイコンが表示されます:
- 一般(
) - コンポーネントの名前が、その接続およびスキーマの詳細とともに表示されます。 これらのプロパティの一部は編集できます。
- 属性(
) - コンポーネントに関連付けられたすべての属性の詳細が表示されます。
- 列マッピング(
) - すべての列を自動的にマップできます。 詳細は、「データ列のマップ」を参照してください。
- プレビュー(
) - コンポーネントのプレビューが表示されます。 Oracle表の場合、選択したデータ・エンティティの統計を表示することもできます。 使用可能な統計情報の詳細は、「データ・エンティティの統計の表示」を参照してください。
- オプション(
) - 次のようなオプションが表示されます
- 表を切り詰める - 既存のターゲット表の内容を新しいデータで置き換えます。
- 追加 - フローからターゲットにレコードを挿入します。 既存のレコードは更新されません。
- 変更分 - フローのレコードを既存のレコードと比較し、関連するデータが異なる場合にレコードを更新することで、ターゲット表のデータを統合します。 ターゲットに存在しないレコードは挿入されます。
このオプションには、デフォルトで
True
に設定されている自動圧縮機能が含まれています。 増分更新モードを使用して圧縮されたOracleターゲット・パーティションにデータをロードするデータ・フロー・ジョブの場合、ロードが正常に完了すると、自動圧縮機能によって変更されたターゲット・パーティションが再圧縮されます。 もともと圧縮されていない表パーティションの場合、自動圧縮がtrueに設定されているかどうかに関係なく、圧縮はスキップされます。ノート:
自動圧縮オプションは、ADMINユーザーまたはDWROLEロールを持つユーザーが使用できます。 ADMIN以外のスキーマ・ユーザーを持つデータ・フローの場合、DWROLEをユーザーに割り当てるか、実行エラーを回避するために自動圧縮を無効にする必要があります。
親トピック: データ・フローについて
データ列のマップ
ソース・データ・エンティティをターゲット・データ・エンティティに接続すると、列名は列名に基づいて自動的にマップされます。 位置や名前に基づいて列をマップしたり、式エディタを使用して手動で列をマップすることもできます。
位置または名前に基づいて列をマップするには:
- ターゲット・データ・エンティティを選択します。
- 右上隅にある矢印アイコンをクリックして、プロパティ・パネルを展開します。 これにより、作業領域が広がります。
- プロパティ・パネルで、「列マッピング」アイコン(
)をクリックします。
- 位置または名前に基づいて列をマップするには、「自動マップ」ドロップダウン・メニューから「位置別」または「名前別」を選択します。
手動で列をマップするには:
- 「自動マップ」ドロップダウン・メニューから「クリア」を選択して、既存のマッピングをクリアします。
- 左側のツリーから、「式」列でマップする属性をドラッグ・アンド・ドロップします。
- 式を編集するには、各列の「編集」アイコンをクリックします。 式エディタが表示され、必要な変更を行うことができます(たとえば、単に式"UPPER"を追加したり、式エディタを開いて式を編集できます)。
ノート:
式エディタは、特定の列に複雑な式が含まれる場合にのみ使用してください。 - 「OK」をクリックします。
親トピック: データ・フローについて
データ・フローの検証および実行
マッピングの準備が完了したら、データ・フローの検証および実行に進むことができます。
- 「保存」をクリックします。
保存後、変換前にデータをステージングする必要がある場合、転送ボタンが1つ以上のリンクに追加されます。 これらのボタンをクリックして、別のオプションを設定できます(使用可能な場合)。
- データ・フロー・ジョブの実行時に実行されるタスクを完了するために実行されるコードを確認する場合は、「コード・シミュレーション」アイコン(
)をクリックします。 参照しやすいように、ソースとターゲットの詳細は異なる色で表示されます。 これは、ジョブを実行する前にマッピングが正しいかどうかを確認する場合、またはジョブが失敗した場合に便利です。 コードはデバッグに使用できないことに注意してください。 ジョブの詳細は、「ジョブの詳細」ページを参照してください。
- デザイン・キャンバスの上にあるツールバーの「検証」アイコン(
)をクリックして、データ・フローを検証します。
- 検証に成功したら、「検証」アイコンの横にある「実行」アイコン(
)をクリックして、データ・フローを実行します。
データ・フローに変数を追加した場合は、データ・フローに追加した変数のリストを表示する「変数値」ページが表示されます。 現在の値、デフォルト値を使用するか、変数ごとにカスタム値を設定するかを選択できます。 カスタム値は、データ・フローの現在の実行にのみ適用されます。 カスタム値は後続のセッションでは保持されません。
実行ジョブのIDおよび名前を示すメッセージが表示されます。 データ・フローのステータスを確認するには、「プロパティ」パネルのすぐ下にある「ステータス」パネルを参照してください。 ステータス・パネルの詳細は、「データ・ロード、データ・フローおよびワークフローのステータスのモニター」を参照してください。 このパネルには、「ジョブ」ページで進行状況をモニターするためにクリックできるジョブIDへのリンクも表示されます。 詳細は、「ジョブの作成および管理」を参照してください。
Oracle Object Storage接続を使用して作成されたデータ・フローの場合、ソースCSVファイルのデータはターゲットのOracle Autonomous Databaseにロードされます。 Oracle Autonomous Database表のデータをOracle Object StorageのCSVファイルにエクスポートすることもできます。
親トピック: データ・フローについて