AnalyticDB for MySQL menyediakan fitur zero-ETL yang memungkinkan Anda membuat tugas sinkronisasi data dari Lindorm ke AnalyticDB for MySQL, sehingga membantu Anda menyinkronkan dan mengelola data secara end-to-end serta mengintegrasikan pemrosesan transaksi dengan analisis data.
Ikhtisar solusi
Di era big data, perusahaan menghadapi volume besar data bisnis yang tersebar di berbagai sistem dan platform. Untuk mengelola dan memanfaatkan data tersebut secara efektif, perusahaan sering kali mengandalkan alat ETL guna mencapai manajemen data terpusat.
ETL adalah proses ekstraksi, transformasi (dan pembersihan), serta pemuatan data dari sistem bisnis hulu ke gudang data. Tujuannya adalah mengonsolidasikan data yang tersebar dari sumber hulu ke gudang data target untuk komputasi dan analisis lebih lanjut, guna mendukung pengambilan keputusan bisnis yang efektif.
Proses ETL tradisional umumnya menghadapi tantangan berikut:
-
Biaya resource meningkat: Sumber data yang berbeda mungkin memerlukan alat ETL yang berbeda, dan pembuatan pipa data ETL menimbulkan biaya resource tambahan.
-
Kompleksitas sistem meningkat: Pengguna harus memelihara alat ETL sendiri, yang meningkatkan kesulitan operasi dan pemeliharaan (O&M) serta menyulitkan fokus pada pengembangan aplikasi bisnis.
-
Ketepatan waktu data berkurang: Beberapa proses ETL melibatkan pembaruan batch periodik. Dalam skenario aplikasi near-real-time, hasil analisis tidak dapat diproduksi dengan cepat.
Untuk mengatasi masalah tersebut, Database YAOCHI Alibaba Cloud menyediakan fitur zero-ETL. Fitur ini memungkinkan Anda membangun pipa sinkronisasi data antara sistem bisnis (OLTP) dan gudang data (OLAP) dengan cepat. Data secara otomatis diekstraksi, ditransformasi, dibersihkan, dan dimuat dari sistem bisnis (OLTP) ke gudang data (OLAP), sehingga memungkinkan sinkronisasi dan manajemen data end-to-end, mengintegrasikan pemrosesan transaksi dengan analisis data, serta membantu pelanggan fokus pada bisnis analisis data.
Manfaat
-
Mudah digunakan: Pengguna tidak perlu membuat dan memelihara pipa data kompleks untuk operasi ETL (ekstrak, transformasi, dan muat). Cukup pilih sumber data dan instans tujuan untuk secara otomatis membuat pipa sinkronisasi data real time. Hal ini mengurangi tantangan dalam membangun dan mengelola pipa data serta memungkinkan Anda fokus pada pengembangan aplikasi hulu.
-
Tanpa biaya: Pipa zero-ETL tidak dikenai biaya tambahan. Anda dapat menganalisis data hulu di AnalyticDB for MySQL secara gratis.
-
Agregasi multi-sumber: Pipa zero-ETL menyinkronkan data dari beberapa instans ke satu kluster AnalyticDB for MySQL secara real time untuk membangun perspektif analisis global.
Tugas sinkronisasi data yang didukung
-
Tugas sinkronisasi data dari Lindorm ke AnalyticDB for MySQL.
-
Tugas sinkronisasi data dari ApsaraDB RDS for MySQL ke AnalyticDB for MySQL. Untuk informasi selengkapnya, lihat Gunakan zero-ETL untuk menyinkronkan data.
-
Tugas sinkronisasi data dari PolarDB for MySQL ke AnalyticDB for MySQL. Untuk informasi selengkapnya, lihat Gunakan zero-ETL untuk menyinkronkan data.
Prasyarat
-
Kluster AnalyticDB for MySQL dan instans Lindorm telah dibuat di wilayah yang sama. Untuk informasi selengkapnya, lihat Buat instans.
PentingLindormTable harus diaktifkan untuk instans Lindorm.
-
Akun database telah dibuat untuk kluster AnalyticDB for MySQL. Untuk informasi selengkapnya, lihat Buat akun database.
Penagihan
Pipa sinkronisasi data tidak dikenai biaya.
Catatan penggunaan
-
Fitur zero-ETL hanya didukung 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 pipa zero-ETL untuk kluster AnalyticDB for MySQL melebihi batas, Anda tidak dapat membuat pipa zero-ETL baru. Batas jumlah pipa zero-ETL adalah sebagai berikut:
-
Jika jumlah total ACU untuk resource reserved di kluster kurang dari 24 ACU, Anda dapat membuat 1 pipa zero-ETL.
-
Jika jumlah total ACU untuk resource reserved di kluster lebih besar dari atau sama dengan 24 ACU, Anda dapat membuat 3 + 3 × [(Total ACU – 24) / 50] pipa zero-ETL.
Perhitungan [(Total ACU – 24) / 50] dibulatkan ke bawah. Misalnya, jika jumlah total ACU untuk kluster adalah 48, hasilnya adalah 0,48, yang dibulatkan ke bawah menjadi 0. Dalam hal ini, Anda dapat membuat 3 pipa zero-ETL.
Catatan-
Untuk Edisi Data Lakehouse, jumlah total ACU untuk resource reserved mengacu pada jumlah ACU untuk compute reserved resources dan storage reserved resources.
-
Untuk Edisi Data Warehouse, 1 core sama dengan 1 ACU. Untuk mode elastis, jumlah total ACU untuk resource reserved mengacu pada jumlah core untuk compute resources dan elastic I/O resources. Untuk mode reserved, jumlah total ACU untuk resource reserved mengacu pada jumlah core untuk compute resources.
-
-
Fitur zero-ETL hanya dapat digunakan untuk menyinkronkan tabel HBase di instans Lindorm. Tabel SQL tidak didukung.
Persiapan
Membuat AnalyticDB for MySQL peran terkait layanan
-
Buka daftar Role di Konsol RAM.
-
Periksa apakah peran terkait layanan AliyunServiceRoleForAnalyticDBForMySQL sudah ada di daftar role. Jika belum, buat role tersebut.
-
Klik Create Role.
-
Pada kotak dialog Create Role, pilih Alibaba Cloud Service, lalu klik Next.
-
Pilih tipe role sebagai Alibaba Cloud Service dan pilih AnalyticDB for MySQL.
-
Klik Completed. Kembali ke daftar role dan pastikan peran terkait layanan telah dibuat.
Berikan izin manajemen kepada Pengguna RAM
Pengguna RAM memerlukan dua jenis izin berikut untuk membuat dan mengelola pipa zero-ETL.
Berikan izin manajemen kepada Pengguna RAM untuk AnalyticDB for MySQL
Pengguna RAM harus memiliki izin manajemen AliyunADBFullAccess pada AnalyticDB for MySQL untuk membuat dan mengelola pipa zero-ETL untuk AnalyticDB for MySQL. Untuk informasi selengkapnya, lihat Kelola izin Pengguna RAM.
Berikan izin kepada Pengguna RAM untuk mengelola fitur zero-ETL
Pengguna RAM harus memiliki izin untuk membuat pipa untuk instans sumber dan instans tujuan (AnalyticDB for MySQL) agar dapat membuat dan mengelola pipa zero-ETL. Anda dapat membuat kebijakan kustom yang mengizinkan pembuatan pipa untuk semua instans sumber dan AnalyticDB for MySQL atau hanya untuk instans tertentu, lalu menyambungkan kebijakan kustom tersebut ke Pengguna RAM. Untuk informasi selengkapnya tentang pembuatan kebijakan kustom dan otorisasi Pengguna RAM, lihat Buat kebijakan kustom.
Bagian berikut menjelaskan skrip kebijakan kustom:
Berikan izin untuk semua instans Lindorm dan kluster AnalyticDB for MySQL
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": "dts:*",
"Resource": [
"acs:adb:*:*:*",
"acs:lindorm:*:*:*",
]
},
{
"Effect": "Allow",
"Action": [
"dts:DescribeRegions",
"dts:DescribeConfigRelations",
"dts:DescribeSrcLinkConfig",
"dts:DescribeDestLinkConfig",
"dts:DescribeLinkConfig"
],
"Resource": [
"acs:dts:*:*:*"
]
}
]
}
Berikan izin untuk instans Lindorm tertentu dan kluster AnalyticDB for MySQL tertentu
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": "dts:*",
"Resource": [
"acs:adb:*:*:dbcluster/am-2zeod8ax4b9a****",
"acs:lindorm:*:*:dbinstance/ld-bp19yeo38q4****",
]
},
{
"Effect": "Allow",
"Action": [
"dts:DescribeRegions",
"dts:DescribeConfigRelations",
"dts:DescribeSrcLinkConfig",
"dts:DescribeDestLinkConfig",
"dts:DescribeLinkConfig"
],
"Resource": "acs:dts:*:*:*"
}
]
}
Prosedur
-
Login ke Konsol AnalyticDB for MySQL dan pilih wilayah tempat kluster berada di pojok kiri atas. Di panel navigasi sebelah kiri, klik Clusters, lalu klik ID kluster tujuan.
-
Di panel navigasi sebelah kiri, pilih .
-
Klik Create Zero-ETL Task. Pada halaman Create Zero-ETL Task, konfigurasikan database sumber dan tujuan.
-
Tabel berikut menjelaskan parameter instans sumber.
Parameter
Deskripsi
Task Name
Nama tugas zero-ETL.
Database Type
Engine database instans sumber. Pilih Lindorm.
Access Method
Metode akses instans sumber. Nilainya secara otomatis diatur ke Alibaba Cloud Instance.
Instance Region
Wilayah tempat instans Lindorm berada.
Instance ID
ID instans Lindorm.
Database Account
Nama dan password akun database yang digunakan untuk menghubungkan ke LindormTable.
Jika Anda lupa password, Anda dapat mengubah password di sistem manajemen kluster LindormTable. Untuk informasi selengkapnya, lihat bagian "Change the password of a user" pada topik Manage users.
Database Password
-
Konfigurasikan database tujuan:
Destination Database
Deskripsi
Database Type
Database tujuan hanya mendukung AnalyticDB for MySQL 3.0.
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 kluster AnalyticDB for MySQL.
Database Password
Password akun database untuk kluster AnalyticDB for MySQL.
-
-
Setelah mengonfigurasi parameter di atas, klik Test Connectivity and Proceed. Pada langkah Configure Zero-ETL, konfigurasikan parameter yang dijelaskan dalam tabel berikut.
Parameter
Deskripsi
DDL and DML Operations to Be Synchronized
Operasi DML (INSERT, UPDATE, dan DELETE) dan operasi DDL (CREATE, ALTER, DROP, dan TRUNCATE) yang ingin Anda sinkronkan. Secara default, semua operasi dipilih.
Source Objects and Selected Objects
Objek sumber dan objek yang ingin Anda sinkronkan.
Anda tidak dapat menyinkronkan data seluruh database atau tabel di instans Lindorm. Di bagian Selected Objects, klik Edit di sebelah tabel sumber dan pilih kolom yang ingin Anda sinkronkan.
Advanced Settings (Optional)
Waktu percobaan ulang untuk koneksi yang gagal antara instans dan kluster sumber serta tujuan, dan waktu percobaan ulang untuk masalah lain yang terjadi pada instans dan kluster sumber serta tujuan.
-
Setelah mengonfigurasi parameter di atas, klik Configure Database and Table Fields dan konfigurasikan parameter berikut:
Konfigurasi Bidang Tabel
Deskripsi
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
Tipe tabel, termasuk tabel partisi dan tabel dimensi.
Definition Status
Setelah Anda mengonfigurasi bidang tabel, status berubah dari Undefined menjadi Defined.
-
Setelah mengonfigurasi semua parameter di atas, klik Next: Save Task Settings and Precheck.
-
Setelah pemeriksaan awal berhasil, klik Start untuk memulai tugas zero-ETL.
Di halaman Free Data Synchronization, Anda dapat melihat Name, Source/Destination, dan Running Status dari tugas zero-ETL tujuan.