Anda dapat memigrasikan data dari database Apache Doris ke instans ApsaraDB for SelectDB menggunakan Object Storage Service (OSS) atau katalog. Pilih metode migrasi berdasarkan skenario bisnis Anda. Topik ini menjelaskan cara memigrasikan data offline dari database Apache Doris ke instans ApsaraDB for SelectDB serta menyediakan panduan pemilihan metode.
Pemilihan metode
Pilih metode migrasi data berdasarkan skenario bisnis Anda. Tabel berikut menjelaskan metode yang tersedia beserta kasus penggunaannya.
Metode | Skenario | Alasan | Operasi |
Ekspor dan impor melalui OSS | Data Anda disimpan di platform Alibaba Cloud, dan volume datanya besar. |
| |
Katalog | Data Anda disimpan di platform Alibaba Cloud, dan volume datanya kecil. Catatan Ini mencakup skenario seperti data dalam kluster EMR Alibaba Cloud. |
|
Topik ini menjelaskan cara menggunakan bucket OSS atau katalog untuk memigrasikan data offline dari database Doris ke SelectDB.
Gunakan bucket OSS untuk memigrasikan data
Prasyarat
Persyaratan OSS
OSS telah diaktifkan. Untuk informasi selengkapnya, lihat Aktifkan OSS.
Pengguna RAM yang digunakan untuk mengakses OSS memiliki izin baca dan tulis untuk objek OSS. Untuk informasi selengkapnya, lihat Izin dan kontrol akses.
Persyaratan kluster
Akun database telah dibuat. Untuk informasi selengkapnya, lihat Manajemen akun.
Persiapan
Buat bucket di konsol OSS. Untuk informasi selengkapnya, lihat Buat bucket di konsol.
Pastikan bucket OSS dan instans ApsaraDB for SelectDB berada di wilayah yang sama.
Dalam topik ini, bucket diberi nama `test-selectdb`.
Langkah 1: Ekspor data sumber
Masuk ke kluster sumber.
Untuk informasi selengkapnya tentang cara masuk ke database Doris yang dikelola sendiri, lihat Menghubungkan melalui Protokol MySQL - Apache Doris.
Opsional: Siapkan data sampel.
Jika Anda sudah memiliki data untuk dimigrasikan, langkah ini dapat dilewati.
Buat database.
Jalankan pernyataan berikut untuk membuat database.
CREATE DATABASE source_db;Buat tabel.
Jalankan pernyataan berikut untuk membuat tabel.
CREATE TABLE IF NOT EXISTS source_tb ( `c1` int(11) NULL, `c2` string NULL, `c3` bigint NULL ) DISTRIBUTED BY HASH(c1) BUCKETS 20 PROPERTIES("replication_num" = "1");Masukkan data sampel.
INSERT INTO source_tb VALUES (1, 'doris', 18), (2, 'nereids', 20), (3, 'pipelibe', 99999), (4, 'Apache', 122123455), (5, null, null);Verifikasi data.
Jalankan pernyataan berikut untuk memverifikasi data sampel.
SELECT * FROM `source_tb` limit 10;Hasil berikut dikembalikan.
+--------------+--------------+--------------+ | c1 | c2 | c3 | +--------------+--------------+--------------+ | 1 | doris | 18 | | 3 | pipelibe | 99999 | | 5 | | | | 2 | nereids | 20 | | 4 | Apache | 122123455 | +--------------+--------------+--------------+
Cadangkan pernyataan `CREATE TABLE` untuk tabel yang berisi data yang akan dimigrasikan.
Anda dapat menjalankan pernyataan
SHOW CREATE TABLEuntuk melihat dan mencadangkan pernyataan `CREATE TABLE` untuk tabel sumber. Contoh berikut menunjukkan cara menjalankan pernyataan tersebut.SHOW CREATE TABLE source_tb ;Hasil berikut dikembalikan.
+-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Table | Create Table | +-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | source_tb | CREATE TABLE `source_tb` ( `c1` int NULL, `c2` text NULL, `c3` bigint NULL ) ENGINE=OLAP DUPLICATE KEY(`c1`) DISTRIBUTED BY HASH(`c1`) BUCKETS 20 PROPERTIES ( "file_cache_ttl_seconds" = "0", "is_being_synced" = "false", "storage_medium" = "hdd", "storage_format" = "V2", "inverted_index_storage_format" = "V2", "light_schema_change" = "true", "disable_auto_compaction" = "false", "enable_single_replica_compaction" = "false", "group_commit_interval_ms" = "10000", "group_commit_data_bytes" = "134217728" ); | +-----------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Rows returned: [1], Time elapsed: [22ms]Ekspor data ke OSS.
Jalankan perintah `EXPORT` untuk mengekspor data ke OSS.
Kode berikut menunjukkan sintaksnya.
EXPORT TABLE table_name [PARTITION (p1[,p2])] [WHERE] TO export_path [opt_properties] WITH S3 [s3_properties];Tabel berikut menjelaskan parameter-parameter tersebut.
Parameter
Wajib
Deskripsi
table_name
Ya
Nama tabel yang akan diekspor.
partition
Tidak
Partisi-partisi dari tabel yang akan diekspor.
where
Tidak
Data tabel yang memenuhi kondisi tertentu untuk diekspor.
export_path
Ya
Jalur ke file yang diekspor.
Nilainya dapat berupa direktori atau kombinasi direktori dan awalan file. Misalnya,
s3://path/to/my_file_.opt_properties
Tidak
Properti yang digunakan untuk menentukan parameter ekspor. Untuk informasi selengkapnya, lihat Sintaks dan parameter opt_properties.
s3_properties
Ya
Properti yang digunakan untuk mengonfigurasi atribut protokol S3. Untuk informasi selengkapnya, lihat Sintaks dan parameter s3_properties.
Kode berikut menunjukkan sintaks `opt_properties`.
[PROPERTIES ("key"="value", ...)]Tabel berikut menjelaskan parameter-parameter tersebut.
Parameter
Wajib
Deskripsi
label
Tidak
Label pekerjaan ekspor. Jika Anda tidak menentukan parameter ini, sistem akan menghasilkan label secara acak.
column_separator
Tidak
Pemisah kolom untuk data yang diekspor.
Nilai default adalah
\t. Pemisah multi-byte didukung. Parameter ini hanya berlaku untuk format file CSV.line_delimiter
Tidak
Pemisah baris untuk data yang diekspor.
Nilai default adalah
\n. Pemisah multi-byte didukung. Parameter ini hanya berlaku untuk format file CSV.columns
Tidak
Kolom-kolom dari tabel yang akan diekspor.
format
Tidak
Format file untuk pekerjaan ekspor.
Format yang didukung: parquet, orc, csv, csv_with_names, dan csv_with_names_and_types.
Format default adalah csv.
max_file_size
Tidak
Ukuran maksimum file tunggal untuk pekerjaan ekspor. Jika hasil melebihi nilai ini, hasil tersebut akan dibagi menjadi beberapa file.
Rentang nilai: 5 MB hingga 2 GB
Nilai default: 1 GB
Ketika Anda menentukan format file ekspor sebagai ORC (yaitu, parameter format_as adalah ORC), ukuran sebenarnya dari file yang dibagi adalah
ceil (max_file_size/64) × 64MB.parallelism
Tidak
Konkurensi pekerjaan ekspor. Nilai default adalah 1.
Pekerjaan ekspor memulai sejumlah thread yang sama dengan nilai parallelism untuk mengeksekusi pernyataan
select into outfile. Jika nilai parallelism lebih besar daripada jumlah tablet dalam tabel, sistem secara otomatis mengatur parallelism ke jumlah tablet. Artinya, setiap pernyataanselect into outfilebertanggung jawab atas satu tablet.delete_existing_files
Tidak
Menentukan apakah akan menghapus semua file di jalur tujuan.
false (default): Tidak menghapus file di jalur tujuan.
true: Menghapus semua file di direktori yang ditentukan oleh
export_path, lalu mengekspor data ke direktori tersebut. Misalnya:Jika
"file_path" = "/user/tmp", semua file dan direktori di bawah"/user/"dihapus.Jika
"file_path" = "/user/tmp/", semua file dan direktori di bawah"/user/tmp/"dihapus.
PeringatanMenyetel
delete_existing_files = truemerupakan operasi berisiko. Gunakan hanya di lingkungan pengujian.Untuk menggunakan parameter delete_existing_files, kirim tiket ke dukungan Alibaba Cloud. Tim teknis SelectDB akan menambahkan konfigurasi
enable_delete_existing_files = trueke file fe.conf dan me-restart FE. Parameter delete_existing_files hanya berlaku setelah restart.
with_bom
Tidak
Nilai default adalah false. Jika disetel ke true, file yang diekspor dikodekan dalam UTF-8 dengan bill of materials (BOM). Ini hanya berlaku untuk format file terkait CSV.
timeout
Tidak
Periode waktu habis untuk pekerjaan ekspor. Nilai default adalah 2 jam. Satuan adalah detik.
Kode berikut menunjukkan sintaks `s3_properties`.
("key"="value"[,...])Tabel berikut menjelaskan parameter-parameter tersebut.
Parameter
Wajib
Deskripsi
s3.endpoint
Ya
Titik akhir tujuan yang menggunakan protokol S3.
Topik ini menggunakan Alibaba Cloud OSS untuk migrasi. Parameter ini adalah
Endpointyang digunakan untuk mengakses data OSS. Untuk informasi selengkapnya tentang cara mendapatkan endpoint, lihat Wilayah dan endpoint OSS.PentingPastikan bucket OSS dan instans ApsaraDB for SelectDB Anda berada di wilayah yang sama.
s3.access_key
Ya
Kunci identitas pengguna untuk tujuan yang menggunakan protokol S3.
Topik ini menggunakan Alibaba Cloud OSS untuk migrasi. Parameter ini adalah
ID AccessKeypengguna RAM yang digunakan untuk mengakses OSS.s3.secret_key
Ya
String autentikasi pengguna untuk tujuan yang menggunakan protokol S3.
Topik ini menggunakan Alibaba Cloud OSS untuk migrasi. Parameter ini adalah
Rahasia AccessKeypengguna RAM yang digunakan untuk mengakses OSS.s3.region
Ya
Wilayah tujuan yang menggunakan protokol S3.
Topik ini menggunakan Alibaba Cloud OSS untuk migrasi. Parameter ini adalah wilayah bucket Alibaba Cloud OSS. Untuk informasi selengkapnya tentang cara mendapatkan wilayah, lihat Wilayah dan endpoint OSS.
use_path_style
Tidak
Nilai default adalah
false.SDK S3 menggunakan gaya virtual-hosted secara default.
Beberapa sistem penyimpanan objek mungkin belum mengaktifkan atau mendukung akses gaya virtual-hosted. Anda dapat menambahkan parameter
use_path_styleuntuk memaksa penggunaan gaya path.CatatanTiga skema URI saat ini didukung:
http://,https://, dans3://.Jika Anda menggunakan
http://atauhttps://, sistem menentukan apakah akan menggunakan gaya path untuk mengakses tujuan protokol S3 berdasarkan parameteruse_path_style.Jika Anda menggunakan
s3://, sistem menggunakan gaya virtual-hosted untuk mengakses tujuan protokol S3.
Kode berikut memberikan contoh.
EXPORT TABLE source_tb -- Ekspor data dari tabel source_tb. TO "s3://test-selectdb/test/" -- Ekspor data ke folder test di bucket OSS bernama test-selectdb. PROPERTIES ( "label" = "test_export", -- Label pekerjaan. "format" = "orc", -- Format penyimpanan file adalah ORC. "max_file_size" = '2048MB', -- Ukuran pemisahan file. 'parallelism' = '10' -- Konkurensi ekspor adalah 10. ) WITH s3 ( "s3.endpoint" = "oss-cn-hangzhou-internal.aliyuncs.com", -- URL untuk mengakses bucket OSS. "s3.region" = "oss-cn-hangzhou", -- Wilayah bucket OSS. "s3.secret_key"="yourAccessKeySecret", -- Rahasia AccessKey pengguna RAM untuk mengakses OSS. "s3.access_key" = "LTAI****************" -- ID AccessKey pengguna RAM untuk mengakses OSS. );Verifikasi bahwa data telah diekspor.
Anda dapat menggunakan salah satu dari dua metode berikut untuk memeriksa status ekspor data.
Periksa status dengan menjalankan perintah.
Di klien yang terhubung ke Doris, jalankan pernyataan berikut untuk memeriksa status ekspor.
SHOW export;Ekspor berhasil: Jika `State` dalam hasil adalah `FINISHED`, ekspor data berhasil.
Ekspor gagal: Jika `State` dalam hasil adalah `CANCELLED`, ekspor data gagal. Anda dapat memeriksa bidang `ErrorMsg` untuk memecahkan masalah kegagalan tersebut.
Periksa status di konsol OSS.
Masuk ke konsol OSS dan periksa apakah file telah dihasilkan di jalur ekspor yang ditentukan.
Langkah 2: Impor data ke tabel tujuan
Masuk ke kluster tujuan. Untuk informasi selengkapnya, lihat Hubungkan ke instans ApsaraDB for SelectDB menggunakan DMS.
Buat tabel tujuan.
Buat database.
Opsional: Buat database.
Jika database tujuan sudah ada, langkah ini dapat dilewati.
Jalankan pernyataan berikut untuk membuat database.
CREATE DATABASE aim_db;Buat tabel.
Jalankan pernyataan `CREATE TABLE` yang telah dicadangkan dari tabel sumber.
Kode berikut menunjukkan pernyataan `CREATE TABLE` yang digunakan dalam topik ini.
CREATE TABLE IF NOT EXISTS aim_tb ( `c1` int(11) NULL, `c2` string NULL, `c3` bigint NULL ) ENGINE=OLAP DUPLICATE KEY(`c1`) DISTRIBUTED BY HASH(c1) BUCKETS 20 PROPERTIES("replication_num" = "1");
Impor data.
Gunakan `S3 load` untuk mengimpor data dari OSS ke SelectDB. Untuk informasi selengkapnya tentang sintaks
S3 loaddan contoh tambahan, lihat OSS Load.Kode berikut memberikan contoh.
LOAD LABEL label_1 -- labelname: pengidentifikasi unik acak untuk pekerjaan ( DATA INFILE("s3://test-selectdb/test/59ab2e9dc4ec4c04-9e50e45a6fda2c8e_0.orc") -- Jalur file data yang diekspor di OSS dari langkah sebelumnya. INTO TABLE aim_tb -- Nama tabel tempat mengimpor data. FORMAT AS ORC -- Format file yang diimpor, yang sama dengan format data yang diekspor. ) WITH S3 ( "AWS_PROVIDER" = "OSS", "AWS_REGION" = "oss-cn-hangzhou", -- Wilayah bucket OSS. "AWS_ENDPOINT" = "oss-cn-hangzhou-internal.aliyuncs.com", -- URL untuk mengakses bucket OSS. "AWS_ACCESS_KEY" = "LTAI****************", -- ID AccessKey pengguna RAM untuk mengakses OSS. "AWS_SECRET_KEY"="yourAccessKeySecret" -- Rahasia AccessKey pengguna RAM untuk mengakses OSS. ) PROPERTIES ( "timeout" = "3600" -- Periode waktu habis impor. );Verifikasi impor.
Anda dapat menggunakan salah satu dari dua metode berikut untuk memeriksa hasil impor.
Periksa status dengan menjalankan perintah.
Di klien yang terhubung ke SelectDB, jalankan pernyataan berikut untuk memeriksa status impor.
SHOW load;Impor berhasil: Jika `State` dalam hasil adalah `FINISHED`, impor data berhasil.
Periksa data di tabel tujuan. Kode berikut memberikan contoh pernyataan.
SELECT * FROM `aim_tb` limit 10;Hasil berikut dikembalikan.
+--------------+--------------+--------------+ | c1 | c2 | c3 | +--------------+--------------+--------------+ | 1 | doris | 18 | | 3 | pipelibe | 99999 | | 5 | | | | 2 | nereids | 20 | | 4 | Apache | 122123455 | +--------------+--------------+--------------+Data konsisten dengan data sumber dari Langkah 1: Ekspor data sumber. Impor berhasil.
Gunakan katalog untuk memigrasikan data
Prasyarat
Pastikan instans Doris dan instans SelectDB dapat saling berkomunikasi.
Instans Doris dan instans SelectDB berada di VPC yang sama. Jika tidak berada di VPC yang sama, Anda harus terlebih dahulu menyelesaikan masalah konektivitas jaringan. Untuk informasi selengkapnya, lihat Bagaimana cara menyelesaikan masalah konektivitas jaringan antara instans SelectDB dan sumber data?
Alamat IP instans Doris telah ditambahkan ke daftar putih alamat IP instans SelectDB. Untuk informasi selengkapnya, lihat Konfigurasi daftar putih.
Jika instans Doris memiliki daftar putih, alamat IP segmen jaringan tempat instans SelectDB berada harus ditambahkan ke daftar putih instans Doris.
Untuk mendapatkan alamat IP instans SelectDB di VPC tempat instans SelectDB berada, Anda dapat melakukan operasi yang disediakan di Bagaimana cara melihat alamat IP di VPC tempat instans ApsaraDB SelectDB saya berada?
Untuk mendapatkan alamat IP publik instans SelectDB, Anda dapat menjalankan perintah ping untuk mengakses titik akhir publik instans SelectDB dan mendapatkan alamat IP instans tersebut.
Versi instans SelectDB tidak boleh lebih awal dari versi instans Doris.
CatatanSelectDB adalah gudang data real-time cloud-native yang dibangun di atas Doris. Untuk informasi selengkapnya tentang hubungan versi di antara keduanya, lihat Catatan rilis kernel.
Pahami katalog dan operasi dasarnya. Untuk informasi selengkapnya, lihat Data lakehouse.
Lingkungan contoh
Topik ini memberikan contoh cara memigrasikan data dari tabel `doris_t` di database `doris_db` instans Doris ke tabel `test_doris2SelectDB` di database `test_db` instans SelectDB. Saat melakukan migrasi, ubah parameter sesuai kebutuhan Anda. Daftar berikut menjelaskan lingkungan contoh:
Database tujuan: `test_db`
Tabel tujuan: `test_doris2SelectDB`
Database sumber: `doris_db`
Tabel data sumber: `doris_t`
Contoh persiapan data sumber
Masuk ke database Doris sumber Anda dan jalankan perintah berikut.
Buat database.
CREATE DATABASE doris_db;Buat tabel.
CREATE TABLE doris_t ( id int, name string, age int ) DISTRIBUTED BY HASH(id) BUCKETS 4 PROPERTIES("replication_num" = "1");Masukkan data.
INSERT INTO doris_t VALUES (1, 'Alice', 25), (2, 'Bob', 30), (3, 'Charlie', 35), (4, 'David', 40), (5, 'Eve', 45);
Prosedur
Hubungkan ke instans SelectDB. Untuk informasi selengkapnya, lihat Hubungkan ke instans ApsaraDB for SelectDB menggunakan klien MySQL.
Buat katalog JDBC Doris.
CREATE CATALOG doris_catalog PROPERTIES ( "type"="jdbc", "user"="root", "password"="123456", "jdbc_url" = "jdbc:mysql://127.0.0.1:9030/doris_db", "driver_url" = "mysql-connector-java-8.0.25.jar", "driver_class" = "com.mysql.cj.jdbc.Driver" )Parameter
Wajib
Nilai default
Deskripsi
user
Ya
Tidak ada
Akun database Doris.
password
Ya
Tidak ada
Kata sandi akun database Doris.
jdbc_url
Ya
Tidak ada
String koneksi JDBC. Harus berisi alamat koneksi database Doris.
Format:
jdbc:mysql://<host>:<port>/<database>host: Alamat IP database Doris.
port: Nomor port database Doris.
database: Nama database yang akan diakses.
Contoh:
jdbc:mysql://127.0.0.1:9030/doris_dbdriver_url
Ya
Tidak ada
Nama paket JAR driver JDBC.
CatatanKami menyarankan Anda menggunakan
mysql-connector-java-8.0.25.jar.Jika Anda ingin menggunakan paket JAR lain, kirim tiket untuk konsultasi.
driver_class
Ya
Tidak ada
Nama kelas driver JDBC.
Kami menyarankan Anda menyetelnya ke
com.mysql.cj.jdbc.Driver.lower_case_table_names
CatatanDi versi 4.0, parameter ini diganti namanya menjadi lower_case_meta_names.
Tidak
"false"
Menentukan apakah akan menyinkronkan nama database dan tabel dari sumber data JDBC eksternal dalam huruf kecil.
true: Mempertahankan pemetaan dari nama huruf kecil ke nama sebenarnya di sistem jarak jauh, yang memungkinkan Anda mengkueri database dan tabel yang tidak dalam huruf kecil. Dalam hal ini, nama database, tabel, dan kolom semuanya diubah menjadi huruf kecil.
false: Anda tidak dapat mengkueri database dan tabel yang tidak dalam huruf kecil.
PentingUntuk SelectDB 3.0:
Jika parameter
lower_case_table_namesFE disetel ke1atau2, parameterlower_case_table_nameskatalog harus disetel ketrue.Jika parameter
lower_case_table_namesFE disetel ke0, parameter katalog dapat berupatrueataufalse.
Untuk SelectDB 4.0:
Jika parameter
lower_case_table_namesFE adalah0atau2, nama database, tabel, dan kolom tidak diubah.Jika parameter
lower_case_table_namesFE adalah1, nama tabel diubah menjadi huruf kecil, tetapi nama database dan kolom tidak diubah.
only_specified_database
Tidak
"false"
Menentukan apakah hanya akan menyinkronkan database yang ditentukan.
true: Hanya menyinkronkan database sumber data yang ditentukan dalam URL JDBC.
false: Menyinkronkan semua database dalam URL JDBC.
include_database_list
Tidak
""
Ketika
only_specified_database=true, menentukan beberapa database untuk disinkronkan, dipisahkan dengan koma (,). Nama database bersifat case-sensitive.exclude_database_list
Tidak
""
Ketika
only_specified_database=true, menentukan beberapa database yang tidak akan disinkronkan, dipisahkan dengan koma (,). Nama database bersifat case-sensitive.meta_names_mapping
Tidak
""
Jika sumber data eksternal memiliki objek dengan nama yang hanya berbeda dalam huruf besar/kecil, seperti DORIS dan doris, kesalahan akan dilaporkan karena ambiguitas saat Anda mengkueri katalog. Dalam kasus ini, konfigurasikan parameter
meta_names_mappinguntuk menyelesaikan konflik.Untuk informasi selengkapnya, lihat Pengaturan sensitivitas huruf besar/kecil.
PentingParameter ini hanya berlaku untuk SelectDB 4.0.
Lihat katalog.
SHOW CATALOGS; -- Periksa apakah CATALOG berhasil dibuat.Hasil berikut dikembalikan.
+--------------+--------------+----------+-----------+-------------------------+---------------------+------------------------+ | CatalogId | CatalogName | Type | IsCurrent | CreateTime | LastUpdateTime | Comment | +--------------+--------------+----------+-----------+-------------------------+---------------------+------------------------+ | 436009309195 | doris_catalog | jdbc | | 2024-08-06 17:09:08.058 | 2024-07-19 18:04:37 | | | 0 | internal | internal | yes | UNRECORDED | NULL | Doris internal catalog | +--------------+--------------+----------+-----------+-------------------------+---------------------+------------------------+Opsional: Beralih ke katalog eksternal `doris_catalog`.
Anda dapat melihat dan mengakses data di katalog eksternal `doris_catalog` dengan cara yang sama seperti mengakses data di katalog internal.
CatatanSaat ini, ApsaraDB for SelectDB hanya mendukung operasi baca pada data di katalog eksternal.
SWITCH doris_catalog;Opsional: Beralih ke katalog internal.
Jika Anda tidak melakukan Langkah 4, langkah ini dapat dilewati.
SWITCH internal;Opsional: Buat database.
Jika database tujuan sudah ada, langkah ini dapat dilewati.
CREATE database test_db;Beralih ke database tujuan.
USE test_db;Buat tabel.
Jika tabel tujuan sudah ada, periksa apakah tipe data kolom di tabel tujuan sesuai dengan tipe data kolom di tabel sumber Doris.
Jika tabel tujuan belum ada, pastikan tipe data kolom di tabel tujuan sesuai dengan tipe data kolom di tabel sumber Doris saat Anda membuat tabel.
Untuk informasi selengkapnya tentang pemetaan tipe data, lihat Pemetaan tipe.
CREATE TABLE test_doris2SelectDB ( id int, name string, age int ) DISTRIBUTED BY HASH(id) BUCKETS 4 PROPERTIES("replication_num" = "1");Migrasikan data.
INSERT INTO test_doris2SelectDB SELECT * FROM doris_catalog.doris_db.doris_t;Periksa status impor data.
SELECT * FROM test_doris2SelectDB;
Catatan tentang migrasi data inkremental
Di lingkungan produksi, data Doris terdiri dari data offline dan data inkremental. Karena data biasanya dimigrasikan dari Doris ke SelectDB untuk gudang data dan akselerasi kueri, Anda dapat menggunakan salah satu dari dua metode berikut untuk migrasi data inkremental:
Saat menulis data ke instans Doris, tulis salinan data tersebut ke instans SelectDB secara paralel.
Gunakan pekerjaan periodik untuk membaca data yang dipartisi dari instans Doris dan menulis data tersebut ke instans SelectDB.