MaxCompute 出力コンポーネントは、MaxCompute データソースにデータを書き込むように設計されています。他のソースから MaxCompute にデータを同期する場合、ソースデータソースを設定した後に MaxCompute 出力コンポーネントを構成します。このトピックでは、構成プロセスについて説明します。
手順
Dataphin ホームページで、トップメニューバーに移動し、[開発] > [data Integration] を選択します。
統合ページのトップメニューバーで、[プロジェクト] を選択します(開発・本番モードで環境を選択します)。
左側のナビゲーションウィンドウで、[バッチパイプライン] をクリックします。[バッチパイプライン] リストから、開発する [オフラインパイプライン] を選択して、構成ページにアクセスします。
[コンポーネントライブラリ] パネルを開くには、ページの右上隅にある [コンポーネントライブラリ] をクリックします。
[コンポーネントライブラリ] パネルの左側のナビゲーションで、[出力] を選択します。リストから [maxcompute] コンポーネントを見つけて、キャンバスにドラッグします。
ターゲット入力コンポーネントの
アイコンをドラッグして、MaxCompute 出力コンポーネントに接続します。MaxCompute 出力コンポーネントカードの
アイコンをクリックして、[maxcompute 出力構成] ダイアログボックスを開きます。
[maxcompute 出力構成] ダイアログボックス内で、必要なパラメーターを設定します。
パラメーター
説明
基本設定
ステップ名
これは MaxCompute 出力コンポーネントの名前です。Dataphin はステップ名を自動的に生成しますが、ビジネスシナリオに応じて変更することもできます。命名規則は次のとおりです。
中国語、英字、アンダースコア(_)、数字のみ使用できます。
64 文字を超えることはできません。
データソース
データソースドロップダウンリストには、ライトスルー権限を持つデータソースと持たないデータソースを含め、すべての MaxCompute タイプのデータソースが表示されます。
アイコンをクリックして、現在のデータソース名をコピーします。ライトスルー権限のないデータソースの場合、データソースの後に [リクエスト] をクリックして、データソースのライトスルー権限をリクエストできます。具体的な操作については、「データソース権限のリクエスト、更新、および返却」をご参照ください。
まだ MaxCompute タイプのデータソースがない場合は、[データソースの作成] をクリックしてデータソースを作成します。具体的な操作については、「MaxCompute データソースの作成」をご参照ください。
テーブル
データ同期で出力データのターゲットテーブルを選択します。MaxCompute データソースにデータ同期のターゲットテーブルがない場合は、[ワンクリックでターゲットテーブルを生成] 機能を使用して、ターゲットテーブルを迅速かつ簡単に生成できます。詳細な手順は次のとおりです。
[ワンクリックでテーブルを作成] をクリックします。
[標準テーブル] または [delta テーブル] を選択できます。デフォルトは標準テーブルです。テーブル形式を切り替えると、以下のコードエリアの DDL が変更されます。
Dataphin は、ターゲットテーブル名(デフォルトはソーステーブル名)、フィールドタイプ(最初は Dataphin フィールドに基づいて変換されます)、およびその他の情報を含む、ターゲットテーブルを作成するためのコードを自動的に照合します。ビジネス状況に応じてターゲットテーブルを作成するための SQL スクリプトを変更し、[作成] をクリックします。ターゲットテーブルが正常に作成されると、Dataphin は新しく作成されたターゲットテーブルを出力データのターゲットテーブルとして自動的に設定します。
説明ワンクリックテーブル作成は、開発環境と本番環境でデータ同期のターゲットテーブルを作成するために使用されます。Dataphin はデフォルトで [本番環境でテーブルを作成] を選択します。本番環境に同じ名前と構造のテーブルがある場合は、[本番環境でテーブルを作成] を選択する必要はありません。開発環境または本番環境に同じ名前のテーブルがある場合、[作成] をクリックすると、Dataphin はテーブルが既に存在することを示すエラーを報告します。
ロードポリシー
ターゲットデータソース (MaxCompute データソース) にデータを書き込む場合、テーブルにデータを書き込むための戦略です。ロード戦略には、データの上書きとデータの追加が含まれます。該当するシナリオは次のとおりです。
[データの上書き]: 現在のソーステーブルに基づいて、ターゲットテーブルの既存データを上書きします。
[データの追加]: 既存データを変更せずに、ターゲットテーブルの既存データにデータを追加します。標準テーブルでのみ使用可能です。
[データの更新]:プライマリキーの競合がある場合、既存のレコードのマッピングされたフィールドデータを更新します。Delta テーブルでのみ使用可能です。
パーティション
パーティションテーブルが選択されている場合は、データテーブルのパーティションを入力する必要があります。たとえば、
ds=20230101またはパラメーターds=${bizdate}を使用します。パーティションの前に
/*dynamic*/キーワードを追加して、ソースフィールドを使用してデータの各行の書き込みパーティションを動的に指定することをサポートしています。たとえば、/*dynamic*/ds=$date(dateはソースフィールド名)または/*dynamic*/ds=${bizdate},hh = $hour(bizdateはパラメーター、hourはソーステーブルのフィールド名)です。重要動的パーティションの上限は 10,000 です。1,000 を超えないことをお勧めします。超えると、実行時間が非常に長くなったり、失敗したりする可能性があります。
フィールドマッピング
入力フィールド
入力フィールドは、アップストリームコンポーネントの出力に基づいて表示されます。
出力フィールド
出力フィールドエリアには、選択したテーブルのすべてのフィールドが表示されます。特定のフィールドをダウンストリームコンポーネントに出力する必要がない場合は、対応するフィールドを削除できます。
少数のフィールドを削除する必要がある場合は、[アクション] 列の
アイコンをクリックして、余分なフィールドを削除します。多数のフィールドを削除する必要がある場合は、[フィールド管理] をクリックし、[フィールド管理] ページで複数のフィールドを選択して、
アイコンをクリックし [選択された入力フィールド] を [選択されていない入力フィールド] に移動します。
マッピング
マッピング関係は、ソーステーブルの入力フィールドをターゲットテーブルの出力フィールドにマッピングするために使用されます。マッピング関係には、同一名マッピングと同列マッピングが含まれます。該当するシナリオは次のとおりです。
同一名マッピング: 同じフィールド名のフィールドをマッピングします。
同列マッピング: ソーステーブルとターゲットテーブルのフィールド名が一致しませんが、フィールドの対応する行のデータをマッピングする必要があります。同じ行のフィールドのみマッピングします。
[確認] をクリックして、[maxcompute] 出力コンポーネントのプロパティ設定を確定します。