AnalyticDB for MySQL menyediakan fitur zero-ETL yang memungkinkan Anda membuat tautan sinkronisasi data dari RDS for MySQL ke AnalyticDB for MySQL. Fitur ini membantu Anda mengelola sinkronisasi data dari satu konsol untuk mengintegrasikan pemrosesan transaksi dengan analitik data.
Ikhtisar
Di era data besar, bisnis sering mengelola data yang tersebar di berbagai sistem dan platform. Untuk memanfaatkan data tersebut secara efektif, mereka biasanya mengandalkan alat ekstrak, transformasi, dan muat (ETL) untuk manajemen data terpusat.
ETL adalah proses yang mengekstrak data dari sistem bisnis hulu, mentransformasi dan membersihkannya, lalu memuatnya ke dalam gudang data. Tujuannya adalah mengkonsolidasikan data terdistribusi ke dalam gudang data target untuk analisis lebih lanjut, sehingga mendukung pengambilan keputusan bisnis yang lebih baik.
Proses ETL tradisional sering memiliki kelemahan berikut:
-
Biaya sumber daya meningkat: Sumber data yang berbeda mungkin memerlukan alat ETL yang berbeda. Membangun pipa data ETL menimbulkan biaya sumber daya tambahan.
-
Kompleksitas sistem meningkat: Anda harus memelihara sendiri alat ETL, yang meningkatkan kompleksitas operasional dan mengalihkan fokus dari pengembangan aplikasi.
-
Latensi data: Beberapa proses ETL melibatkan pembaruan batch berkala. Dalam aplikasi near real-time, hal ini dapat menunda pembuatan hasil analitis.
Untuk mengatasi tantangan tersebut, Alibaba Cloud menyediakan fitur zero-ETL. Fitur ini memungkinkan Anda dengan cepat membangun tugas sinkronisasi data antara sistem pemrosesan transaksi online (OLTP) dan sistem pemrosesan analitik online (OLAP). Fitur ini secara otomatis mengekstrak, mentransformasi, dan memuat data dari sistem OLTP ke gudang data. Hal ini menyederhanakan manajemen data, mengintegrasikan pemrosesan transaksi dengan analitik, serta memungkinkan Anda fokus pada analisis data inti.
Manfaat
-
Mudah digunakan: Anda tidak perlu membuat dan memelihara pipa data ETL yang kompleks. Untuk membuat tugas sinkronisasi data real time, cukup pilih sumber dan tujuan. Ini membebaskan Anda untuk fokus pada pengembangan aplikasi.
-
Tanpa biaya: Tautan zero-ETL tidak dikenai biaya tambahan. Anda dapat menganalisis data hulu di AnalyticDB for MySQL secara gratis.
-
Agregasi multi-sumber: Gunakan tugas zero-ETL untuk menyinkronkan data dari beberapa instans ke satu kluster AnalyticDB for MySQL secara real time, menciptakan tampilan terpadu untuk analisis global.
Sinkronisasi yang didukung
-
Sinkronisasi data dari RDS for MySQL ke AnalyticDB for MySQL.
-
Sinkronisasi data dari PolarDB for MySQL ke AnalyticDB for MySQL. Untuk informasi selengkapnya, lihat Sinkronisasi data dari PolarDB for MySQL.
Prasyarat
-
Kluster AnalyticDB for MySQL dan instans RDS for MySQL harus berada di wilayah yang sama.
-
Anda harus memiliki akun database untuk kluster AnalyticDB for MySQL dan instans RDS for MySQL.
Penagihan
Tugas zero-ETL tidak dikenai biaya.
Catatan penggunaan
-
Fitur zero-ETL hanya tersedia di wilayah berikut: Tiongkok (Beijing), Tiongkok (Hangzhou), Tiongkok (Shanghai), Tiongkok (Shenzhen), Tiongkok (Zhangjiakou), Tiongkok (Qingdao), Tiongkok (Guangzhou), Tiongkok (Hong Kong), Singapura, AS (Silicon Valley), dan AS (Virginia).
-
Jika jumlah tugas zero-ETL di kluster AnalyticDB for MySQL Anda mencapai batas, Anda tidak dapat membuat tugas baru. Anda dapat menggunakan DTS untuk membuat tugas sinkronisasi data baru atau menghapus tugas zero-ETL yang tidak digunakan untuk membebaskan kapasitas. Batasannya adalah sebagai berikut:
-
Jika total ACU reservasi kluster kurang dari 24, Anda dapat membuat satu tugas zero-ETL.
-
Jika total ACU reservasi kluster sebesar 24 atau lebih, Anda dapat membuat
3 + 3 * floor((Total ACUs - 24) / 50)tugas zero-ETL.Hasil dari
floor((Total ACUs - 24) / 50)dibulatkan ke bawah ke bilangan bulat terdekat. Misalnya, jika sebuah kluster memiliki 48 ACU, perhitungannya adalah3 + 3 * floor((48 - 24) / 50), yaitu3 + 3 * floor(0.48). Ini disederhanakan menjadi3 + 3 * 0, sehingga Anda dapat membuat 3 tugas zero-ETL.
Catatan-
Untuk kluster Edisi Data Lakehouse, total ACU reservasi adalah jumlah ACU komputasi reservasi dan ACU penyimpanan reservasi.
-
Untuk kluster Edisi Gudang Data, satu core sama dengan satu ACU. Untuk kluster dalam mode elastis, total ACU reservasi adalah jumlah core untuk sumber daya komputasi dan sumber daya I/O elastis. Untuk kluster dalam mode reservasi, total ACU reservasi adalah jumlah core untuk sumber daya komputasi.
-
Persiapan
Buat AnalyticDB for MySQL
-
Navigasi ke halaman Role di Konsol RAM.
-
Periksa apakah peran terkait layanan bernama AliyunServiceRoleForAnalyticDBForMySQL sudah ada. Jika belum, Anda harus membuat peran tersebut.
-
Di panel navigasi kiri, klik Create Role.
-
Di kotak dialog Create Role, pilih Alibaba Cloud Service dan klik Next.
-
Untuk jenis peran, pilih Service-Linked Role, lalu pilih AnalyticDB for MySQL dari daftar drop-down layanan.
-
Klik Finish. Kembali ke daftar peran dan verifikasi bahwa peran terkait layanan telah dibuat.
Berikan izin kepada Pengguna RAM
Pengguna RAM memerlukan dua jenis izin berikut untuk membuat dan mengelola tugas zero-ETL.
Berikan izin AnalyticDB for MySQL
Pengguna RAM harus memiliki izin manajemen untuk AnalyticDB for MySQL, yaitu AliyunADBFullAccess, untuk membuat dan mengelola tautan Zero-ETL untuk AnalyticDB for MySQL. Untuk petunjuknya, lihat Mengelola izin Pengguna RAM.
Berikan izin zero-ETL
Pengguna RAM harus memiliki izin untuk membuat tautan untuk instans sumber dan tujuan (AnalyticDB for MySQL) untuk membuat dan mengelola tautan Zero-ETL. Anda dapat membuat kebijakan izin kustom yang memungkinkan Pengguna RAM membuat tautan untuk semua instans atau hanya untuk instans tertentu dari sumber data dan AnalyticDB for MySQL, lalu menyambungkan kebijakan izin kustom tersebut ke Pengguna RAM.
Berikut adalah contoh skrip untuk kebijakan izin kustom:
Otorisasi semua instans RDS for MySQL dan kluster AnalyticDB for MySQL
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": "dts:*",
"Resource": [
"acs:adb:*:*:*",
"acs:rds:*:*:*",
]
},
{
"Effect": "Allow",
"Action": [
"dts:DescribeRegions",
"dts:DescribeConfigRelations",
"dts:DescribeSrcLinkConfig",
"dts:DescribeDestLinkConfig",
"dts:DescribeLinkConfig"
],
"Resource": [
"acs:dts:*:*:*"
]
}
]
}
Berikan izin untuk instans RDS for MySQL dan kluster AnalyticDB for MySQL tertentu
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": "dts:*",
"Resource": [
"acs:adb:*:*:dbcluster/am-2zeod8ax4b9a****",
"acs:rds:*:*:dbinstance/rm-2ze6fs8ouh43****",
]
},
{
"Effect": "Allow",
"Action": [
"dts:DescribeRegions",
"dts:DescribeConfigRelations",
"dts:DescribeSrcLinkConfig",
"dts:DescribeDestLinkConfig",
"dts:DescribeLinkConfig"
],
"Resource": "acs:dts:*:*:*"
}
]
}
Prosedur
-
Login ke Konsol AnalyticDB for MySQL. Di pojok kiri atas konsol, pilih wilayah. Di panel navigasi kiri, klik Clusters. Temukan kluster yang ingin Anda kelola dan klik ID kluster tersebut.
-
Navigasi ke halaman fitur zero-ETL. Titik masuknya berbeda-beda tergantung edisi kluster.
-
Untuk kluster Edisi Perusahaan, Edisi Dasar, atau Edisi Data Lakehouse: Di panel navigasi kiri, pilih .
-
Untuk kluster Edisi Gudang Data: Di panel navigasi kiri, pilih .
-
-
Klik Create Zero-ETL Task. Di halaman Create Zero-ETL Task, konfigurasikan informasi database sumber dan tujuan.
-
Konfigurasikan informasi database sumber:
Source database
Description
Task Name
Nama tugas zero-ETL.
Database Type
Pilih RDS for MySQL.
Access Method
Hanya Alibaba Cloud Instance yang didukung.
Instance Region
Wilayah tempat instans RDS for MySQL berada.
RDS Instance ID
ID instans RDS for MySQL.
Database Account
Akun database untuk instans RDS for MySQL.
Database Password
Password untuk akun database instans RDS for MySQL.
Encryption
Metode untuk menghubungkan ke instans RDS for MySQL. Opsi termasuk koneksi non-terenkripsi dan koneksi aman SSL.
CatatanJika Anda memilih SSL-encrypted, Anda harus terlebih dahulu mengaktifkan enkripsi SSL untuk instans RDS for MySQL. Untuk informasi selengkapnya, lihat Gunakan sertifikat cloud untuk mengaktifkan enkripsi SSL dengan cepat.
-
Konfigurasikan informasi database tujuan:
Destination database
Description
Database Type
Saat ini, hanya AnalyticDB for MySQL 3.0 yang didukung sebagai tujuan.
Access Method
Hanya Alibaba Cloud Instance yang didukung.
Instance Region
Wilayah tempat kluster AnalyticDB for MySQL berada.
Instance ID
ID kluster AnalyticDB for MySQL.
Database Account
Akun database untuk kluster AnalyticDB for MySQL.
Database Password
Password untuk akun database kluster AnalyticDB for MySQL.
-
-
Setelah mengonfigurasi parameter, klik Test Connectivity and Proceed. Di halaman konfigurasi, atur parameter berikut:
Parameter
Description
DDL and DML Operations to Be Synchronized
Pilih operasi DML dan DDL yang akan disinkronkan. Semua operasi dipilih secara default.
Source Objects dan Selected Objects
Objek sumber di database dan objek yang akan disinkronkan.
Advanced Settings (Optional)
Konfigurasikan interval percobaan ulang untuk ketidaktersediaan database dan potensi masalah lainnya.
-
Setelah menyelesaikan pengaturan, klik Next: Configure Database and Table Fields dan konfigurasikan informasi berikut:
Configuration
Description
Database Name
Pilih database yang sudah ada.
Table Name
Pilih tabel yang sudah ada.
Primary Key Column
Kolom kunci primer dari tabel yang dipilih.
Distribution Key
Kolom kunci distribusi dari tabel yang dipilih.
Type
Jenis tabel. Opsi termasuk tabel partisi dan tabel replikasi.
Definition Status
Setelah bidang database dan tabel dikonfigurasi, status berubah dari Undefined menjadi Defined.
-
Setelah mengonfigurasi semua parameter, klik Next: Save Task Settings and Precheck.
-
Jika pemeriksaan awal berhasil, klik Start untuk menjalankan tugas zero-ETL.
Di halaman Zero-ETL, Anda dapat melihat informasi tentang tugas tersebut, termasuk ID/Name, Source/Destination, dan Status-nya.
Pemantauan dan peringatan zero-ETL
Setelah membuat dan menjalankan tugas zero-ETL, Anda dapat mengatur aturan peringatan di konsol CloudMonitor untuk memantau statusnya secara real time. Ikuti langkah-langkah berikut:
-
Login ke Konsol Cloud Monitor.
-
Lihat informasi pemantauan.
-
Di panel navigasi kiri, pilih .
-
Arahkan kursor ke kartu AnalyticDB for MySQL dan klik AnalyticDB for mysql 3.0 - ZeroETL Latency.
-
Klik ID kluster untuk melihat informasi pemantauan tugas zero-ETL di kluster tersebut.
-
-
Buat aturan peringatan.
-
Di panel navigasi kiri, klik .
-
Klik Create Alert Rule. Di panel Create Alert Rule, konfigurasikan aturan peringatan untuk tugas zero-ETL. Untuk informasi selengkapnya, lihat Buat aturan peringatan.
CatatanUntuk parameter Product, pilih AnalyticDB for mysql 3.0 - ZeroETL Latency.
-
-
Buat kebijakan langganan.
-
Di panel navigasi kiri, klik .
-
Klik Create a subscription policy. Di halaman Create a subscription policy, konfigurasikan kebijakan langganan untuk tugas zero-ETL. Untuk informasi selengkapnya, lihat Buat langganan event.
Catatan-
Product: Pilih Analyticdb for mysql 3.0.
-
event types: Pilih Abnormal atau Restore.
-
Event Name: Pilih zero_etl_job_abnormal atau zero_etl_job_restore.
-
-