AnalyticDB for MySQL mendukung pembuatan batch MaxCompute foreign tables menggunakan pernyataan IMPORT FOREIGN SCHEMA.
Prasyarat
-
Kluster AnalyticDB for MySQL harus menggunakan versi 3.2.2.0 atau lebih baru.
CatatanUntuk melihat dan memperbarui versi minor, buka bagian Configuration Information pada halaman Cluster Information di Konsol AnalyticDB for MySQL.
-
Elastic Network Interface (ENI) harus diaktifkan untuk kluster AnalyticDB for MySQL.
Penting-
Masuk ke Konsol AnalyticDB for MySQL. Pada halaman Cluster Information, aktifkan sakelar jaringan ENI di bagian Network Information.
-
Mengaktifkan atau menonaktifkan jaringan ENI akan mengganggu koneksi database selama sekitar dua menit. Selama periode ini, operasi baca dan tulis tidak tersedia. Evaluasi dampak potensial sebelum melanjutkan.
-
-
Proyek MaxCompute dan kluster AnalyticDB for MySQL harus berada di wilayah yang sama.
-
Blok CIDR VPC untuk kluster AnalyticDB for MySQL harus termasuk dalam daftar putih alamat IP proyek MaxCompute.
CatatanMasuk ke Konsol AnalyticDB for MySQL dan temukan ID VPC pada halaman Cluster Information. Kemudian, masuk ke Konsol VPC dan temukan blok CIDR pada halaman VPC berdasarkan ID VPC tersebut. Untuk informasi lebih lanjut tentang cara mengonfigurasi daftar putih alamat IP untuk MaxCompute, lihat Manage IP address whitelists.
-
Server eksternal harus dibuat di AnalyticDB for MySQL. Untuk informasi lebih lanjut tentang sintaks, lihat Manage foreign servers.
Sintaks
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')]
Parameter
|
Parameter |
Wajib |
Deskripsi |
|
|
Ya |
Nama proyek MaxCompute. |
|
|
Tidak |
Nama tabel MaxCompute yang akan diimpor. Jika Anda tidak menentukan nama tabel, sistem akan mengimpor semua tabel dari proyek MaxCompute yang ditentukan sebagai foreign tables ke dalam AnalyticDB for MySQL. |
|
|
Ya |
Nama server eksternal. Untuk detail sintaks, lihat Manage foreign servers. |
|
|
Ya |
Nama database tujuan AnalyticDB for MySQL. |
|
|
Tidak |
Kebijakan untuk menangani konflik penamaan jika tabel dengan nama yang sama sudah ada di database tujuan AnalyticDB for MySQL. Nilai yang valid:
|
|
|
Tidak |
Kebijakan untuk menangani tipe data yang tidak didukung oleh AnalyticDB for MySQL. Nilai yang valid:
|
|
|
Tidak |
Awalan yang ditambahkan ke nama setiap foreign table yang diimpor. Secara default, foreign tables di AnalyticDB for MySQL memiliki nama yang sama dengan tabel sumber di MaxCompute. |
|
|
Tidak |
Akhiran yang ditambahkan ke nama setiap foreign table yang diimpor. Secara default, foreign tables di AnalyticDB for MySQL memiliki nama yang sama dengan tabel sumber di MaxCompute. |
Contoh
Di AnalyticDB for MySQL, buat foreign tables MaxCompute pre_customer_suf dan pre_order_suf.
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'
);
Manage foreign servers
Create foreign server
Sintaks
CREATE SERVER <server_name>
TYPE = 'ODPS'
SERVER_PROPERTIES = '{
"endpoint":"<endpoint>",
"accessid":"<accesskey_id>",
"accesskey":"<accesskey_secret>"
}'
Parameter
|
Parameter |
Wajib |
Deskripsi |
|
|
Ya |
Nama server eksternal. Nama harus dimulai dengan huruf atau garis bawah (_), hanya boleh berisi huruf, angka, dan garis bawah, serta panjangnya tidak lebih dari 64 karakter. |
|
|
Ya |
Jenis server eksternal. Tetapkan nilainya ke ODPS. |
|
|
Ya |
Titik akhir MaxCompute. Catatan
Anda hanya dapat mengakses MaxCompute melalui endpoint VPC. Untuk informasi lebih lanjut tentang endpoint MaxCompute, lihat Endpoints. |
|
|
Ya |
ID AccessKey dari Akun Alibaba Cloud atau MaxCompute yang memiliki izin untuk mengakses MaxCompute. Untuk mendapatkan ID AccessKey dan Rahasia AccessKey, lihat Accounts and permissions. |
|
|
Ya |
Rahasia AccessKey dari Akun Alibaba Cloud atau MaxCompute yang memiliki izin untuk mengakses MaxCompute. Untuk mendapatkan ID AccessKey dan Rahasia AccessKey, lihat Accounts and permissions. |
Contoh
CREATE SERVER maxcompute_server
TYPE = 'ODPS'
SERVER_PROPERTIES = '{
"endpoint":"http://service.cn-hangzhou-vpc.maxcompute.aliyun-inc.com/api",
"accessid":"STS.****************",
"accesskey":"yourAccessKeySecret"
}';
Query foreign servers
Query all foreign servers
SHOW SERVER
Query a specific foreign server
Sintaks
SHOW SERVER WHERE SERVER_NAME='<server_name>'
Parameter
|
Parameter |
Wajib |
Deskripsi |
|
|
Ya |
Nama server eksternal. |
Contoh
SHOW SERVER WHERE SERVER_NAME='maxcompute_server';
Query foreign servers by type
Sintaks
SHOW SERVER WHERE SERVER_TYPE='<server_type>'
Parameter
|
Parameter |
Wajib |
Deskripsi |
|
|
Ya |
Jenis server eksternal. Jenis server untuk MaxCompute adalah ODPS. |
Contoh
SHOW SERVER WHERE SERVER_TYPE='ODPS';
Rename foreign server
Sintaks
ALTER SERVER <server_name> RENAME <new_server_name>
Parameter
|
Parameter |
Wajib |
Deskripsi |
|
|
Ya |
Nama asli server eksternal. |
|
|
Ya |
Nama baru server eksternal. |
Contoh
ALTER SERVER maxcompute_server RENAME mc_server;
Delete foreign server
Menghapus server eksternal akan menghentikan koneksi antara AnalyticDB for MySQL dan MaxCompute.
Sintaks
DROP SERVER <server_name>
Parameter
|
Parameter |
Wajib |
Deskripsi |
|
|
Ya |
Nama server eksternal. |
Contoh
DROP SERVER maxcompute_server;