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

ApsaraDB for SelectDB:DataWorks を使用したデータのインポート

最終更新日:Jul 18, 2026

DataWorks のデータ統合機能を使用して、テーブルデータを Alibaba Cloud SelectDB にインポートします。ApsaraDB for SelectDB。この例では、MySQL をデータソースとして使用して、ApsaraDB for SelectDB にデータを同期します。

制限事項

  • DataWorks の Data Integration 機能は、ApsaraDB for SelectDB から Alibaba Cloud SelectDB へのデータ同期のみをサポートしています。

  • BITMAP、HLL (HyperLogLog)、および QUANTILE_STATE フィールドへのデータ書き込みはサポートされていません。

データ同期タスクの開発

データソースの追加

データ同期タスクを開発する前に、DataWorks で MySQL データソースと SelectDB データソースを作成します。

  1. MySQL データソースを作成します。詳細については、「MySQL データソース」をご参照ください。

  2. SelectDB データソースを作成します。詳細については、「データソース管理」をご参照ください。以下の表に、主なパラメーターを示します。

    パラメーター

    説明

    データソース名

    データソースの名前です。

    MySQL 接続文字列

    JDBC 接続文字列:jdbc:mysql://<ip>:<port>/<dbname>。

    ApsaraDB for SelectDB コンソールで、インスタンスの詳細 > ネットワーク情報 ページに移動し、VPC アドレス(または インターネットアドレス)および MySQL プロトコルポート を取得します。

    例:jdbc:mysql://selectdb-cn-4xl3jv1****.selectdbfe.rds.aliyuncs.com:9030/test_db

    説明

    MySQL インスタンスと ApsaraDB for SelectDB インスタンスが同じ VPC 内にある場合は、VPC アドレス を使用します。それ以外の場合は、インターネットアドレス を使用します。

    HTTP 接続アドレス

    HTTP 接続アドレス:<ip>:<port>。

    ApsaraDB for SelectDB コンソールで、インスタンスの詳細 > ネットワーク情報 ページに移動し、VPC アドレス(または インターネットアドレス)および HTTP プロトコルポート を取得します。

    例:selectdb-cn-4xl3jv1****.selectdbfe.rds.aliyuncs.com:8080

    説明

    MySQL インスタンスと ApsaraDB for SelectDB インスタンスが同じ VPC 内にある場合は、VPC アドレス を使用します。それ以外の場合は、インターネットアドレス を使用します。

    ユーザー名

    ご利用の ApsaraDB for SelectDB インスタンスのユーザー名を入力します。

    パスワード

    ご利用の ApsaraDB for SelectDB インスタンスのユーザーのパスワードを入力します。

    重要

    データソースを追加するには、SelectDB などのデータソースのホワイトリストに DataWorks リソースグループの IP アドレスを追加する必要があります。詳細については、「IP アドレスのホワイトリストへの追加」をご参照ください。ホワイトリストを構成する際は、専用および共有の Data Integration リソースグループを区別してください。

単一テーブルのオフライン同期の構成

オフライン同期タスクは、ウィザードモードまたはスクリプトモードで構成できます。詳細については、以下のトピックをご参照ください。

スクリプトモード:サンプルとパラメーター

オフラインタスクのスクリプト構成

スクリプトモードでオフラインタスクを構成する場合は、「スクリプトモードでの構成」で説明されている形式を使用します。

MySQL Reader および SelectDB Writer のスクリプトサンプル

{
	"type":"job",
	"version":"2.0",
	"steps":[
		{
			"stepType":"mysql",
			"parameter":{
				"column":[
          "<id>",
          "<table_id>",
          "<table_no>",
          "<table_name>",
          "<table_status>"
				],
				"connection":[
					{
						"datasource":"<mysql_datasource>",
						"table":[
							"<mysql_table_name>"
						]
					}
				],
				"where":"",
				"splitPk":"",
				"encoding":"UTF-8"
			},
			"name":"Reader",
			"category":"reader"
		},
		{
			"stepType":"selectdb",
			"parameter":{
        "postSql":[
        ],
        "preSql":[
        ],
        "username": "<selectdb_username>",
        "password": "<selectdb_password>",
        "loadUrl":[
          "<ip:port>"
        ],
        "column":[
          "<id>",
          "<table_id>",
          "<table_no>",
          "<table_name>",
          "<table_status>"
				],
        "connection":[
					{
						"datasource":"<selectdb_datasource>",
						"table":[
							"<selectdb_table_name>"
						]
					}
				],
        "maxBatchRows":1000000,
        "loadProps":{
          "format":"csv",
          "column_separator": "\\x01",
          "line_delimiter": "\\x02"
        }
      },
			"name":"Writer",
			"category":"writer"
		}
	],
	"setting":{
		"errorLimit":{
			"record":"0"
		},
		"speed":{
			"throttle":false,
			"concurrent":1
		}
	},
	"order":{
		"hops":[
			{
				"from":"Reader",
				"to":"Writer"
			}
		]
	}
}

スクリプトパラメーター

パラメーター

説明

datasource

必須。DataWorks データソースの名前です。この値は、作成したデータソースの名前と一致する必要があります。

table

必須。送信先テーブルの名前です。

column

必須。データを書き込む送信先カラムです。カンマ (,) で区切ります。例:"column":["id","name","age"]。すべてのカラムに順番に書き込む場合は、アスタリスク (*) を使用します。例:"column":["*"]。

loadUrl

必須。SelectDB FE クラスターの HTTP エンドポイントです。形式は ip:port で、ip は SelectDB の VPC アドレス、port は SelectDB クラスターの HTTP プロトコルポート です。例:selectdb-cn-4xl3jv1****.selectdbfe.rds.aliyuncs.com:8080。

username

必須。SelectDB データベースのユーザー名です。

password

必須。SelectDB データベースユーザーのパスワードです。

preSql

同期タスク開始前に実行する SQL ステートメントです。ウィザードモードでは 1 つのステートメントをサポートし、スクリプトモードでは複数のステートメントをサポートします(例:テーブルのクリア)。

postSql

同期タスク完了後に実行する SQL ステートメントです。ウィザードモードでは 1 つのステートメントをサポートし、スクリプトモードでは複数のステートメントをサポートします(例:タイムスタンプの追加)。

maxBatchRows

1 バッチあたりの最大インポート行数です。デフォルト値は 500,000 です。

loadProps

COPY INTO のリクエストパラメーターで、インポートするデータ形式を指定します。デフォルトは JSON です。loadProps が構成されていない場合、または "loadProps":{} に設定されている場合は、JSON 形式が使用されます。JSON 形式の場合、strip_outer_array=true を含む以下の構成のみがサポートされます。

"loadProps": {
   "format": "json",
   "strip_outer_array":true
}

CSV 形式を使用する場合は、以下のとおり形式を指定し、行および列のデリミタを構成します。指定しない場合、列はタブ区切り (\t)、行は改行区切り (\n) がデフォルトになります。DataWorks はその後、インポート用の CSV ファイルを構築します。

"loadProps": {
   "format":"csv",
   "column_separator": "\\x01",
   "line_delimiter": "\\x02"
}

サポートされるデータの型

ApsaraDB for SelectDB は、以下のデータの型をサポートしています。

SelectDB データの型

オフライン書き込み

INT

サポート

BIGINT

サポート

LARGEINT

サポート

SMALLINT

サポート

TINYINT

サポート

BOOLEAN

サポート

DECIMAL

サポート

DOUBLE

サポート

FLOAT

サポート

CHAR

サポート

VARCHAR

サポート

STRING

サポート

DATE

サポート

DATEV2

サポート

DATETIME

サポート

DATETIMEV2

サポート

ARRAY

サポート

JSONB

サポート

BITMAP

未サポート

HLL (HyperLogLog)

未サポート

QUANTILE_STATE

未サポート

参照

DataWorks とは