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

AnalyticDB:IMPORT FOREIGN SCHEMA

最終更新日:Oct 14, 2024

AnalyticDB for MySQLでは、IMPORT FOREIGN SCHEMAステートメントを使用してMaxCompute外部テーブルを一括作成できます。

前提条件

  • V3.2.2.0以降のAnalyticDB for MySQLクラスターが作成されます。

    説明
    • AnalyticDB for MySQLのマイナーバージョンを照会するには Data Lakehouse Editionクラスターで、SELECT adb_version(); 文を実行します。 クラスターのマイナーバージョンを更新するには、テクニカルサポートにお問い合わせください。

    • AnalyticDB For MySQL Data Warehouse Editionクラスターのマイナーバージョンを表示および更新する方法については、「クラスターのマイナーバージョンの更新」をご参照ください。

  • AnalyticDB for MySQLクラスターでElastic Network Interface (ENI) が有効になっています。

    説明

    AnalyticDB for MySQLコンソールにログインして、[クラスター情報] ページの [ネットワーク情報] セクションでENIをオンにします。

  • MaxComputeプロジェクトは、AnalyticDB for MySQLクラスターと同じリージョンに作成されます。

  • AnalyticDB for MySQLクラスターが存在する仮想プライベートクラウド (VPC) のCIDRブロックが、MaxComputeプロジェクトのIPアドレスホワイトリストに追加されます。

    説明

    AnalyticDB for MySQLコンソールにログインして、[クラスター情報] ページでVPC IDを表示できます。 次に、VPCコンソールにログインし、VPCページでVPC IDを見つけてCIDRブロックを表示します。 MaxComputeでIPアドレスホワイトリストを設定する方法については、「IPアドレスホワイトリストの管理」をご参照ください。

  • AnalyticDB for MySQLクラスター用に外部サーバーが作成されます。 外部サーバーの構文については、このトピックの「外部サーバーの管理」を参照してください。

構文

IMPORT FOREIGN SCHEMA odps_project
[LIMIT TO (table_name[, ...])]
FROM server_name
INTO adb_schema
[OPTIONS (
 if_table_exist 'error|ignore|update', 
 if_type_unsupport 'error|ignore',
 table_prefix 'table_prefix',
 table_suffix 'table_suffix')]

Parameters

パラメーター

必須

説明

odps_project

必須

MaxComputeプロジェクトの名前。

table_name[,...]

選択可能

インポートするMaxComputeテーブルの名前。 テーブル名に制限がない場合、システムバッチはMaxComputeプロジェクトに一致するすべてのテーブルをAnalyticDB for MySQLクラスターに作成します。

server_name

必須

外部サーバーの名前。 外部サーバーの構文については、このトピックの「外部サーバーの管理」セクションを参照してください。

adb_schema

必須

AnalyticDB for MySQLクラスター内のデータベースの名前。

if_table_exist

選択可能

AnalyticDB for MySQLでテーブル名の競合を処理するために使用されるメソッド。 有効な値:

  • error (デフォルト): エラーを報告し、同じ名前のテーブルを一覧表示します。 この場合、テーブルは作成されません。

  • ignore: 同じ名前のテーブルの作成をスキップします。 この場合、他のテーブルは期待どおりに作成されます。

  • update: 同じ名前の元のテーブルを上書きし、新しいテーブルを作成します。 この場合、他のテーブルは期待どおりに作成されます。

if_type_unsupport

選択可能

AnalyticDB for MySQLでサポートされていないデータ型を処理するために使用されるメソッド。 有効な値:

  • error (デフォルト): エラーを報告し、サポートされていないデータ型と関連するテーブルを一覧表示します。

  • ignore: サポートされていないデータ型を持つテーブルの作成をスキップします。

table_prefix

選択可能

外部テーブルの名前のプレフィックス。 デフォルトでは、AnalyticDB for MySQLの外部テーブルは、MaxComputeの一致するテーブルと同じ名前を使用します。

テーブル_サフィックス

選択可能

外部テーブルの名前のサフィックス。 デフォルトでは、AnalyticDB for MySQLの外部テーブルは、MaxComputeの一致するテーブルと同じ名前を使用します。

pre_customer_sufおよびpre_order_sufという名前のMaxCompute外部テーブルをAnalyticDB for MySQLに作成します。

IMPORT FOREIGN SCHEMA my_project
LIMIT TO (customer, order)
FROM maxcompute_server
INTO my_adb_schema
OPTIONS (
    if_table_exist 'update',
    if_type_unsupport 'ignore',
    table_prefix 'pre_',
    table_suffix '_suf'
);

外部サーバーの管理

外部サーバーの作成

構文

CREATE SERVER <server_name>
TYPE = 'ODPS'
SERVER_PROPERTIES = '{
	"endpoint":"<endpoint>",
	"accessid":"<accesskey_id>",
	"accesskey":"<accesskey_secret>"
}'

Parameters

パラメーター

必須

説明

server_name

必須

外部サーバーの名前。 名前は最大64文字で、英数字、アンダースコア (_) を使用できます。 名前は文字またはアンダースコア (_) で始まる必要があります。

TYPE='ODPS'

必須

外部サーバーのタイプ。 このパラメーターをODPSに設定します。

エンドポイント

必須

MaxComputeのエンドポイント。

説明

MaxComputeには、VPCエンドポイントを使用してのみアクセスできます。 MaxComputeエンドポイントの詳細については、「エンドポイント」をご参照ください。

accessid

必須

アクセス権限を持つAlibaba CloudアカウントまたはRAM (Resource Access Management) ユーザーのAccessKey ID MaxCompute

AccessKey IDとAccessKeyシークレットの取得方法については、「アカウントと権限」をご参照ください。

accesskey

必須

Alibaba CloudアカウントまたはRAMユーザーのAccessKeyシークレットMaxCompute

AccessKey IDとAccessKeyシークレットの取得方法については、「アカウントと権限」をご参照ください。

CREATE SERVER maxcompute_server
TYPE = 'ODPS'
SERVER_PROPERTIES = '{
    "endpoint":"http://service.cn-hangzhou-vpc.maxcompute.aliyun-inc.com/api",
    "accessid":"LTAI5t1****",
    "accesskey":"mng0dqJ4dBsCY0KTNG****"
}';

外部サーバーの照会

すべての外部サーバーの照会

SHOW SERVER

特定の外部サーバーの照会

構文
SHOW SERVER WHERE SERVER_NAME='<server_name>'
Parameters

パラメーター

必須

説明

server_name

必須

外部サーバーの名前。

SHOW SERVER WHERE SERVER_NAME='maxcompute_server';

特定のタイプの外部サーバーの照会

構文
SHOW SERVER WHERE SERVER_TYPE='<server_type>'
Parameters

パラメーター

必須

説明

server_type

必須

外部サーバーのタイプ。 このパラメーターをODPS for MaxComputeに設定します。

SHOW SERVER WHERE SERVER_TYPE='ODPS';

外部サーバーの名前変更

構文

ALTER SERVER <server_name> RENAME <new_server_name>

Parameters

パラメーター

必須

説明

server_name

必須

外部サーバーの元の名前。

new_server_name

必須

外部サーバーの新しい名前。

ALTER SERVER maxcompute_server RENAME mc_server;

外部サーバーの削除

説明

外部サーバーを削除すると、外部サーバーを使用してAnalyticDB for MySQLMaxComputeの間に確立されている接続が切断されます。

構文

DROP SERVER <server_name>

Parameters

パラメーター

必須

説明

server_name

必須

外部サーバーの名前。

DROP SERVER maxcompute_server;