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

Tablestore:OSS への完全データのエクスポート

最終更新日:Nov 22, 2025

DataWorks データ統合サービスを使用して、Tablestore から OSS に完全データをエクスポートできます。これにより、より低コストでデータをバックアップしたり、データをファイルとしてローカルマシンにエクスポートしたりできます。完全データを OSS にエクスポートした後、ファイルをローカルマシンにダウンロードしてさらに処理することができます。

前提条件

データをエクスポートする前に、次の前提条件が満たされていることを確認してください。

説明

DataWorks ワークスペースと Tablestore インスタンスが異なるリージョンにある場合は、VPC ピアリング接続を作成して、リージョン間のネットワーク接続を有効にする必要があります。

リージョン間のネットワーク接続のための VPC ピアリング接続の作成

次の例は、ソーステーブルインスタンスが中国 (上海) リージョンにあり、DataWorks ワークスペースが中国 (杭州) リージョンにあるシナリオを示しています。

  1. Tablestore インスタンスに VPC をアタッチします。

    1. Tablestore コンソールにログインします。上部のナビゲーションバーで、ターゲットテーブルが配置されているリージョンを選択します。

    2. インスタンスのエイリアスをクリックして、[インスタンス管理] ページに移動します。

    3. [ネットワーク管理] タブで、[VPC のアタッチ] をクリックします。VPC と vSwitch を選択し、VPC 名を入力して、[OK] をクリックします。

    4. VPC がアタッチされるのを待ちます。ページが自動的に更新され、VPC リストに [VPC ID][VPC エンドポイント] が表示されます。

      説明

      DataWorks コンソールで Tablestore データソースを追加するときは、この VPC エンドポイントを使用する必要があります。

      image

  2. DataWorks ワークスペースリソースグループの VPC 情報を取得します。

    1. DataWorks コンソールにログインします。上部のナビゲーションバーで、ワークスペースが配置されているリージョンを選択します。左側のナビゲーションウィンドウで、[ワークスペース] をクリックして [ワークスペースリスト] ページに移動します。

    2. ワークスペース名をクリックして、[ワークスペース詳細] ページに移動します。左側のナビゲーションウィンドウで、[リソースグループ] をクリックして、ワークスペースにアタッチされているリソースグループを表示します。

    3. ターゲットリソースグループの右側にある [ネットワーク設定] をクリックします。[リソーススケジューリング & データ統合] セクションで、アタッチされた仮想プライベートクラウドの VPC ID を表示します。

  3. VPC ピアリング接続を作成し、ルートを設定します。

    1. VPC コンソールにログインします。左側のナビゲーションウィンドウで、[VPC ピアリング接続] をクリックし、次に [ピアリング接続の作成] をクリックします。

    2. [ピアリング接続の作成] ページで、ピアリング接続の名前を入力し、リクエスト元 VPC インスタンス、受信側アカウントタイプ、受信側リージョン、および受信側 VPC インスタンスを選択します。次に、[OK] をクリックします。

    3. [VPC ピアリング接続] ページで、VPC ピアリング接続を見つけ、[リクエスト元 VPC] および [受信側 VPC] 列の ルートエントリの設定 をクリックします。

      宛先 CIDR ブロックには、ピア VPC の CIDR ブロックを入力します。たとえば、リクエスト元 VPC のルートエントリを設定する場合は、受信側 VPC の CIDR ブロックを入力します。受信側 VPC のルートエントリを設定する場合は、リクエスト元 VPC の CIDR ブロックを入力します。

手順

次のステップに従って、データエクスポートタスクを設定および実行します。

ステップ 1: Tablestore データソースの追加

まず、DataWorks で Tablestore データソースを設定して、ソースデータに接続します。

  1. DataWorks コンソールにログインします。宛先リージョンに切り替えます。左側のナビゲーションウィンドウで、[データ統合] > [データ統合] を選択します。ドロップダウンリストからワークスペースを選択し、[データ統合へ] をクリックします。

  2. 左側のナビゲーションウィンドウで、[データソース] をクリックします。

  3. [データソースリスト] ページで、[データソースの追加] をクリックします。

  4. [データソースの追加] ダイアログボックスで、データソースタイプとして [Tablestore] を検索して選択します。

  5. [OTS データソースの追加] ダイアログボックスで、次の表の説明に従ってデータソースパラメーターを設定します。

    パラメーター

    説明

    データソース名

    データソース名は、文字、数字、アンダースコア (_) の組み合わせである必要があります。数字またはアンダースコア (_) で始めることはできません。

    データソースの説明

    データソースの簡単な説明。説明は 80 文字以内にする必要があります。

    リージョン

    Tablestore インスタンスが存在するリージョンを選択します。

    Tablestore インスタンス名

    Tablestore インスタンスの名前。

    エンドポイント

    Tablestore インスタンスのエンドポイント。VPC エンドポイントを使用します。

    AccessKey ID

    Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ID と AccessKey Secret。

    AccessKey Secret

  6. リソースグループの接続性をテストします。

    データソースを作成するときは、リソースグループの接続性をテストして、同期タスクのリソースグループがデータソースに接続できることを確認する必要があります。そうしないと、データ同期タスクを実行できません。

    1. [接続設定] セクションで、リソースグループの [接続ステータス] 列にある [接続性のテスト] をクリックします。

    2. 接続性テストに合格すると、[接続ステータス][接続済み] に変わります。[完了] をクリックします。新しいデータソースがデータソースリストに表示されます。

      接続性テストが [失敗] した場合は、[接続診断ツール] を使用して問題をトラブルシューティングします。

ステップ 2: OSS データソースの追加

データエクスポートの宛先として OSS データソースを設定します。

  1. もう一度 [データソースの追加] をクリックします。ダイアログボックスで、データソースタイプとして [OSS] を検索して選択し、データソースパラメーターを設定します。

    パラメーター

    説明

    データソース名

    データソース名は、文字、数字、アンダースコア (_) で構成する必要があります。数字またはアンダースコア (_) で始めることはできません。

    データソースの説明

    データソースの簡単な説明。説明は 80 文字以内にする必要があります。

    アクセスモード

    • RAM ロール認証: DataWorks サービスアカウントは、RAM ロールを引き受けることでデータソースにアクセスします。このモードを初めて選択する場合は、画面の指示に従って必要な権限を付与します。

    • Access Key モード: Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ID と AccessKey Secret を使用してデータソースにアクセスします。

    ロールの選択

    このパラメーターは、[アクセスモード][RAM ロール認証] に設定した場合にのみ必要です。

    AccessKey ID

    これらのパラメーターは、[アクセスモード][Access Key モード] に設定した場合にのみ必要です。Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ID と AccessKey Secret。

    AccessKey Secret

    リージョン

    バケットが配置されているリージョン。

    エンドポイント

    OSS ドメイン名。詳細については、「リージョンとエンドポイント」をご参照ください。

    バケット

    バケットの名前。

  2. パラメーターを設定し、接続性テストに合格したら、[完了] をクリックしてデータソースを追加します。

ステップ 3: オフライン同期タスクの設定

データ同期タスクを作成および設定して、Tablestore から OSS へのデータ転送ルールを定義します。

タスクノードの作成

  1. [データ開発] ページに移動します。

    1. DataWorks コンソールにログインします。

    2. 上部のナビゲーションバーで、リソースグループとリージョンを選択します。

    3. 左側のナビゲーションウィンドウで、[データ開発と O&M] > [データ開発] を選択します。

    4. 対応するワークスペースを選択し、[DataStudio へ] をクリックします。

  2. DataStudio コンソールの [データ開発] ページで、[プロジェクトフォルダー] の右側にある image アイコンをクリックし、[新規ノード] > [データ統合] > [オフライン同期] を選択します。

  3. [ノードの作成] ダイアログボックスで、[パス] を選択し、データソースを Tablestore に、データ宛先を OSS に設定し、[名前] を入力して、[確認] をクリックします。

同期タスクの設定

[プロジェクトフォルダ] で、オフライン同期タスクノードをクリックし、コードレス UI またはコードエディタで同期タスクを設定します。

コードレス UI (デフォルト)

次の項目を設定します。

  • データソース: ソースと宛先のデータソースを選択します。

  • ランタイムリソース: リソースグループを選択します。選択後、システムは自動的にデータソースの接続性をテストします。

  • データソース:

    • テーブル: ドロップダウンリストからソーステーブルを選択できます。

    • プライマリキー範囲 (開始): 読み取る範囲の開始プライマリキー。値は JSON 配列です。inf_min は負の無限大を表します。

      プライマリキーに id という名前の int 列と name という名前の string 列が含まれている場合、次の設定が例です。

      指定されたプライマリキー範囲

      完全データ

      [
        {
          "type": "int",
          "value": "000"
        },
        {
          "type": "string",
          "value": "aaa"
        }
      ]
      [
        {
          "type": "inf_min"
        },
        {
          "type": "inf_min"
        }
      ]
    • プライマリキー範囲 (終了): データ読み取りのプライマリキー範囲の終わり。JSON 配列として指定します。inf_max は正の無限大を表します。

      プライマリキーに id という名前の int 列と name という名前の string 列が含まれている場合、次の設定が例です。

      指定されたプライマリキー範囲

      完全データ

      [
        {
          "type": "int",
          "value": "999"
        },
        {
          "type": "string",
          "value": "zzz"
        }
      ]
      [
        {
          "type": "inf_max"
        },
        {
          "type": "inf_max"
        }
      ]
    • シャード設定: JSON 配列形式のカスタムシャード設定。通常、このパラメーターは [] に設定することで未設定のままにできます。

      Tablestore データストレージでホットスポットが発生し、Tablestore Reader の自動シャーディングポリシーが効果的でない場合は、カスタムシャーディングルールを使用することをお勧めします。カスタムシャーディングルールを使用すると、プライマリキー範囲内でシャードキーを指定できます。すべてのプライマリキーではなく、シャードキーのみを設定する必要があります。

  • データ宛先: [テキストタイプ] を選択し、対応するパラメーターを設定します。

    • テキストタイプ: 有効値は csvtextorc、および parquet です。

    • ファイル名 (パスを含む): OSS バケット内のファイルの完全なパス。例: tablestore/resource_table.csv

    • 列区切り文字: デフォルト値は , です。区切り文字が印刷不可能な文字の場合は、\u001b\u007c などの Unicode エンコーディングを入力します。

    • ファイルパス: OSS バケット内のファイルのパス。このパラメーターは parquet ファイルタイプの場合にのみ必要です。

    • ファイル名: OSS バケット内のファイルの名前。このパラメーターは parquet 形式のファイルの場合にのみ必要です。

  • 宛先フィールドマッピング: ソーステーブルのフィールドを宛先ファイルにマッピングします。各行は JSON 形式のフィールドを表します。

    • ソースフィールド: ソーステーブルのプライマリキーフィールドと属性列。

      プライマリキーに id という名前の int 列と name という名前の string 列が含まれ、属性列に age という名前の int フィールドが含まれている場合、次の設定が例です。

      {"name":"id","type":"int"}
      {"name":"name","type":"string"}
      {"name":"age","type":"int"}
    • 宛先フィールド: ソーステーブルのプライマリキーフィールドと属性列。

      プライマリキーに id という名前の int 列と name という名前の string 列が含まれ、属性列に age という名前の int フィールドが含まれている場合、次の設定が例です。

      {"name":"id","type":"int"}
      {"name":"name","type":"string"}
      {"name":"age","type":"int"}

設定を保存するには、ページの上部にある [保存] をクリックします。

コードエディタ

ページの上部にある [コードエディタ] をクリックします。コードエディタが開きます。スクリプトを編集します。

次の例は、宛先ファイルタイプが CSV である設定を示しています。ソーステーブルには、id という名前の int 列と name という名前の string 列を含むプライマリキーがあります。属性列は age という名前の int フィールドです。スクリプトを設定するときは、サンプルスクリプトの datasource、テーブル名 table、および宛先ファイル名 object を実際の値に置き換えてください。
{
    "type": "job",
    "version": "2.0",
    "steps": [
        {
            "stepType": "ots",
            "parameter": {
                "datasource": "source_data",
                "column": [
                    {
                        "name": "id",
                        "type": "int"
                    },
                    {
                        "name": "name",
                        "type": "string"
                    },
                    {
                        "name": "age",
                        "type": "int"
                    }
                ],
                "range": {
                    "begin": [
                        {
                            "type": "inf_min"
                        },
                        {
                            "type": "inf_min"
                        }
                    ],
                    "end": [
                        {
                            "type": "inf_max"
                        },
                        {
                            "type": "inf_max"
                        }
                    ],
                    "split": []
                },
                "table": "source_table",
                "newVersion": "true"
            },
            "name": "Reader",
            "category": "reader"
        },
        {
            "stepType": "oss",
            "parameter": {
                "dateFormat": "yyyy-MM-dd HH:mm:ss",
                "datasource": "target_data",
                "writeSingleObject": false,
                "column": [
                    {
                        "name": "id",
                        "type": "int"
                    },
                    {
                        "name": "name",
                        "type": "string"
                    },
                    {
                        "name": "age",
                        "type": "int"
                    }
                ],
                "writeMode": "truncate",
                "encoding": "UTF-8",
                "fieldDelimiter": ",",
                "fileFormat": "csv",
                "object": "tablestore/source_table.csv"
            },
            "name": "Writer",
            "category": "writer"
        }
    ],
    "setting": {
        "errorLimit": {
            "record": "0"
        },
        "speed": {
            "concurrent": 2,
            "throttle": false
        }
    },
    "order": {
        "hops": [
            {
                "from": "Reader",
                "to": "Writer"
            }
        ]
    }
}

スクリプトを編集した後、ページの上部にある [保存] をクリックします。

同期タスクの実行

ページの上部にある [実行] をクリックして同期タスクを開始します。タスクを初めて実行するときは、[デバッグ設定] を確認する必要があります。

ステップ 4: 同期結果の表示

同期タスクが完了したら、ログで実行ステータスを表示し、OSS バケットで結果ファイルを確認できます。

  1. ページの下部でタスクの実行ステータスと結果を表示します。次のログ情報は、同期タスクが正常に実行されたことを示しています。

    2025-11-18 11:16:23 INFO Shell run successfully!
    2025-11-18 11:16:23 INFO Current task status: FINISH
    2025-11-18 11:16:23 INFO Cost time is: 77.208s
  2. 宛先バケット内のファイルを表示します。

    [バケットリスト] に移動します。宛先バケットをクリックして、結果ファイルを表示またはダウンロードします。

よくある質問

関連ドキュメント