すべてのプロダクト
Search
ドキュメントセンター

Dataphin:OceanBase 出力コンポーネントを設定する

最終更新日:Feb 06, 2025

OceanBase 出力コンポーネントは、OceanBase データソースにデータを書き込むために設計されています。ソースデータ情報を設定した後、特に他のソースから OceanBase にデータを同期する場合、OceanBase 出力コンポーネントのターゲットデータソースを設定する必要があります。このトピックでは、OceanBase 出力コンポーネントの設定方法について説明します。

前提条件

手順

  1. オフラインパイプラインコンポーネント開発エントリ」を参照して、オフライン単一パイプラインスクリプトの開発ページに移動します。

  2. [oceanbase 出力設定] ダイアログボックスを開くには、次の手順に従います。

    コンポーネントライブラリ を 1 回クリック -> 出力 を 1 回クリック -> [oceanbase] 出力コンポーネントをキャンバスにドラッグ -> image アイコンを接続 -> image 構成アイコンを 1 回クリックします。

    image

  3. [oceanbase 出力設定] ダイアログボックスで、次のパラメーターを設定します。

    パラメーター

    説明

    基本設定

    [ステップ名]

    OceanBase 出力コンポーネントステップの名前を入力します。Dataphin はデフォルト名を生成しますが、ビジネスニーズに合わせて変更できます。名前は次のルールに従う必要があります。

    • 漢字、英字、アンダースコア (_)、および数字のみを含める。

    • 長さは 64 文字以内にする。

    [データソース]

    データソースのドロップダウンリストには、ライトスルー権限を持つものと持たないものを含め、すべての OceanBase タイプのデータソースが表示されます。

    • データソースにライトスルー権限がない場合は、[リクエスト] をクリックして申請できます。詳細については、「データソース権限をリクエストする」または「」をご参照ください。

    • OceanBase タイプのデータソースが存在しない場合は、dfag アイコンをクリックして作成します。詳細については、「OceanBase データソースを作成する」または「」をご参照ください。

    [テーブル]

    出力データのターゲットテーブルを選択します。OceanBase のロードポリシーは、モードによって異なります。

    OceanBase のロードポリシーはモードによって異なり、各モードには特定のポリシーがあります。

    • Oracle モードでは、追加モードのみがサポートされています。プライマリキーまたは制約違反が発生した場合、ダーティデータエラーが表示されます。違反がない場合は、新しいデータが直接追加されます。

    • OceanBase の MySQL モードの場合:

      • 追加ポリシー:プライマリキーまたは制約違反がない場合、新しいデータが直接追加されます。

      • 上書きポリシー:プライマリキーまたは制約違反が発生した場合、新しい値が古い値を上書きします(フィールドレベルの上書き。書き込まれているフィールドのみに影響します)。

    バッチ書き込みデータ量

    1 バッチで書き込むデータ量を指定します。[バッチ書き込み数] も設定できます。システムは、どちらかの制限に先に達した方に基づいて書き込みを実行します。デフォルトの量は 32M です。

    バッチ書き込み数

    デフォルトでは、2048 行 が使用されます。データ同期中は、[バッチ書き込み数][バッチ書き込みデータ量] などのパラメーターを含むバッチ書き込みアプローチが使用されます。

    • 累積データ量がバッチ書き込みデータ量または数の制限のいずれかに達すると、システムはバッチが完了したと見なし、1 回の操作で宛先に書き込みます。

    • バッチ書き込みデータ量は 32MB が推奨されます。バッチ挿入数の制限は、個々のレコードのサイズに基づいて柔軟に調整する必要があります。通常、バッチ書き込みのメリットを活用するために、より高い値が推奨されます。たとえば、レコードサイズが約 1KB の場合、バッチ挿入バイトサイズを 16MB に設定するのが賢明です。その結果、バッチ挿入数は 16MB をレコードサイズで割った商を超える必要があり、これは 16384 行を超えます。このシナリオでは、しきい値を 20000 行 と想定し、データ量が 16MB に達するたびにシステムがバッチ書き込みを開始するようにします。

    準備ステートメント

    オプション。データインポートの前にデータベースで実行される SQL スクリプト。たとえば、サービスの可用性を維持するために、ターゲットテーブル Target_A を作成し、書き込み操作を実行し、書き込み後にサービス提供テーブル Service_B の名前を Temp_C に変更し、次に Target_A の名前を Service_B に変更し、最後に Temp_C を削除することができます。

    たとえば、継続的なサービス可用性を確保するために、最初にターゲットテーブル Target_A を作成し、書き込み操作を実行します。現在のステップでデータを書き込んだ後、データベース内のアクティブなサービス提供テーブル Service_B の名前を Temp_C に変更し、次に Target_A の名前を Service_B に変更し、最終的に Temp_C を削除します。

    終了ステートメント

    オプション。データインポート後にデータベースで実行される SQL スクリプト。

    フィールドマッピング

    [入力フィールド]

    入力フィールドは、アップストリームコンポーネントの出力に基づいて表示されます。

    [出力フィールド]

    出力フィールドが表示されます。出力フィールドを選択するには、[フィールド管理] をシングルクリックします。

    image

    • [選択済みの入力フィールド][選択されていない入力フィールド] に移動するには、gaagag アイコンをシングルクリックします。

    • [選択されていない入力フィールド][選択済みの入力フィールド] に移動するには、agfag アイコンをシングルクリックします。

    [マッピング]

    アップストリーム入力とターゲットテーブルフィールドに基づいて、フィールドマッピングを手動で選択します。[クイックマッピング] オプションには、[行マッピング][名前マッピング] が含まれます。

    • 名前マッピング:同じ名前のフィールドを自動的にマッピングします。

    • 行マッピング:ソーステーブルとターゲットテーブルで位置が対応しているが名前が異なるフィールドをマッピングします。

  4. [確認] をクリックして、OceanBase 出力コンポーネント のプロパティ設定を完了します。