AnalyticDB for MySQL menyediakan fitur integrasi tanpa hambatan (Zero-ETL) yang memungkinkan Anda membuat pipa sinkronisasi data dari RDS for MySQL ke AnalyticDB for MySQL. Fitur ini membantu Anda mengelola sinkronisasi data dari satu lokasi serta mengintegrasikan pemrosesan transaksi dengan analitik data.
Ikhtisar
Di era data besar, bisnis memiliki data yang tersebar di berbagai sistem dan platform. Untuk mengelola dan memanfaatkan data tersebut secara efektif, perusahaan sering mengandalkan alat ekstrak, transformasi, dan muat (ETL) guna mendukung manajemen data terpusat.
ETL adalah proses mengekstrak, mentransformasi, dan memuat data dari sistem bisnis hulu ke gudang data, dengan tujuan mengonsolidasikan data hulu yang tersebar ke dalam gudang data tujuan. Komputasi dan analisis lebih lanjut terhadap data tersebut di gudang data membantu bisnis membuat keputusan yang efektif.
Proses ETL tradisional sering menghadapi tantangan berikut:
Biaya resource meningkat: Sumber data yang berbeda mungkin memerlukan alat ETL yang berbeda, sehingga pembangunan pipa ETL meningkatkan biaya resource.
Kompleksitas sistem meningkat: Anda harus memelihara alat ETL sendiri, yang meningkatkan kompleksitas operasi dan maintenance (O&M) serta mengalihkan fokus dari pengembangan aplikasi bisnis.
Latensi data tinggi: Beberapa proses ETL melibatkan pembaruan batch periodik, yang dalam skenario aplikasi near-real-time menghambat pembuatan hasil analisis secara cepat.
Untuk mengatasi masalah ini, Alibaba Cloud ApsaraDB menyediakan fitur integrasi tanpa hambatan (Zero-ETL) yang memungkinkan Anda membangun pipa sinkronisasi data antara sistem pemrosesan transaksi online (OLTP) dan gudang data pemrosesan analitik online (OLAP) secara cepat. Data dari sistem OLTP diekstrak, ditransformasi, dan dimuat secara otomatis ke gudang data OLAP, memberikan solusi one-stop untuk sinkronisasi dan manajemen data, mengintegrasikan pemrosesan transaksi dengan analitik data, serta memungkinkan pelanggan fokus pada bisnis analitik data mereka.
Manfaat
Mudah digunakan: Anda tidak perlu membuat dan memelihara pipa data kompleks untuk operasi ETL. Cukup pilih sumber data dan instans tujuan untuk secara otomatis membuat pipa sinkronisasi data real time, sehingga mengurangi tantangan dalam membangun dan mengelola pipa data serta memungkinkan Anda fokus pada pengembangan aplikasi hulu.
Tanpa biaya: Pipa Zero-ETL tidak dikenai biaya. Anda dapat menganalisis data hulu di AnalyticDB for MySQL tanpa biaya tambahan.
Agregasi multi-sumber: Anda dapat menggunakan pipa Zero-ETL untuk menyinkronkan data dari beberapa instans ke satu kluster AnalyticDB for MySQL secara real time, memberikan perspektif global untuk analitik.
Pipa sinkronisasi yang didukung
Pipa dari RDS for MySQL ke AnalyticDB for MySQL.
Pipa dari PolarDB for MySQL ke AnalyticDB for MySQL. Untuk informasi selengkapnya, lihat Sinkronisasi data menggunakan integrasi tanpa hambatan (Zero-ETL).
Prasyarat
Kluster AnalyticDB for MySQL dan instans RDS for MySQL berada di wilayah yang sama.
Akun database telah dibuat untuk kluster AnalyticDB for MySQL dan instans RDS for MySQL.
Penagihan
Pipa sinkronisasi data tidak dikenai biaya.
Perhatian
Fitur integrasi tanpa hambatan (Zero-ETL) hanya tersedia di wilayah berikut: Tiongkok (Beijing), Tiongkok (Hangzhou), Tiongkok (Shanghai), Tiongkok (Shenzhen), Tiongkok (Zhangjiakou), Tiongkok (Qingdao), Tiongkok (Guangzhou), Hong Kong (Tiongkok), Singapura, AS (Silicon Valley), dan AS (Virginia).
Jika jumlah pipa Zero-ETL untuk kluster AnalyticDB for MySQL melebihi batas, Anda tidak dapat membuat pipa baru. Anda dapat menggunakan DTS untuk membuat pipa sinkronisasi baru atau menghapus pipa Zero-ETL yang tidak digunakan untuk membebaskan kapasitas. Batas jumlah pipa Zero-ETL adalah sebagai berikut:
Jika jumlah total AnalyticDB Compute Unit (ACU) reservasi untuk suatu kluster kurang dari 24 ACU, Anda dapat membuat satu pipa Zero-ETL.
Jika jumlah total ACU reservasi untuk suatu kluster sebesar 24 ACU atau lebih, Anda dapat membuat
3 + 3 * [(Total ACUs - 24) / 50]pipa Zero-ETL.Hasil dari
[(Total ACUs - 24) / 50]dibulatkan ke bawah ke bilangan bulat terdekat. Misalnya, jika suatu kluster memiliki total 48 ACU, hasil perhitungan adalah 0,48. Nilai ini dibulatkan ke bawah menjadi 0, artinya Anda dapat membuat tiga pipa Zero-ETL.
CatatanUntuk kluster Data Lakehouse Edition, jumlah total ACU reservasi adalah jumlah resource komputasi reservasi dan resource penyimpanan reservasi dalam satuan ACU.
Untuk kluster Data Warehouse Edition, satu core setara dengan satu ACU. Dalam Elastic mode, jumlah total ACU reservasi adalah jumlah core resource komputasi dan unit I/O elastis. Dalam Reserved mode, jumlah total ACU reservasi adalah jumlah core resource komputasi.
Persiapan
Buat peran terkait layanan untuk AnalyticDB for MySQL
Navigasi ke daftar Roles di Konsol Resource Access Management (RAM).
Periksa apakah ada peran terkait layanan bernama AliyunServiceRoleForAnalyticDBForMySQL di daftar peran. Jika belum ada, buat peran tersebut.
Di panel navigasi kiri, klik Create Role.
Di kotak dialog Create Role, pilih Alibaba Cloud Service, lalu klik Next.
Atur Role Type ke Service-Linked Role, lalu pilih AnalyticDB for MySQL.
Klik OK. Kembali ke daftar peran dan verifikasi bahwa peran terkait layanan telah dibuat.
Memberikan izin pengelolaan kepada Pengguna RAM
Pengguna Resource Access Management (RAM) memerlukan dua izin berikut untuk membuat dan mengelola pipa Zero-ETL.
Berikan izin manajemen Pengguna RAM untuk AnalyticDB for MySQL
Pengguna RAM harus memiliki izin manajemen AliyunADBFullAccess untuk AnalyticDB for MySQL agar dapat membuat dan mengelola pipa Zero-ETL untuk AnalyticDB for MySQL. Untuk informasi selengkapnya, lihat Kelola izin Pengguna RAM.
Berikan izin manajemen Pengguna RAM untuk Zero-ETL
Untuk membuat dan mengelola pipa Zero-ETL, Pengguna RAM memerlukan izin untuk instans sumber data dan instans tujuan (AnalyticDB for MySQL). Anda dapat membuat kebijakan kustom untuk mengizinkan pembuatan pipa untuk semua atau instans tertentu dari sumber data dan AnalyticDB for MySQL. Kemudian, sambungkan kebijakan kustom tersebut ke Pengguna RAM.
Skrip untuk kebijakan kustom adalah sebagai berikut:
Berikan izin untuk 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 integrasi tanpa hambatan (Zero-ETL). Jalur navigasi berbeda tergantung edisi produk.
Untuk kluster Enterprise Edition, Basic Edition, atau Data Lakehouse Edition: Di panel navigasi kiri, pilih .
Untuk kluster Data Warehouse Edition: 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 Information
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 instans RDS for MySQL.
Database Password
Password akun database instans RDS for MySQL.
Encryption
Metode koneksi ke instans RDS for MySQL. Opsi termasuk Unencrypted Connection dan SSL Secure Connection.
CatatanJika Anda mengatur parameter ini ke SSL-encrypted, Anda harus mengaktifkan enkripsi SSL untuk instans RDS for MySQL terlebih dahulu. Untuk informasi selengkapnya, lihat Gunakan sertifikat cloud untuk mengaktifkan enkripsi SSL dengan cepat.
Konfigurasikan informasi database tujuan:
Destination Database Information
Description
Database Type
Saat ini, hanya AnalyticDB for MySQL 3.0 yang didukung sebagai database 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 kluster AnalyticDB for MySQL.
Database Password
Password akun database kluster AnalyticDB for MySQL.
Setelah mengonfigurasi parameter di atas, klik Test Connectivity and Proceed. Di halaman konfigurasi Zero-ETL, konfigurasikan parameter berikut:
Configuration Item
Description
DDL and DML Operations to Be Synchronized
Pilih operasi DML dan DDL yang akan disinkronkan. Secara default, semua operasi dipilih.
Source Objects dan Selected Objects
Objek sumber dan objek yang akan disinkronkan di database.
Advanced Settings (Optional)
Atur waktu percobaan ulang saat database sumber atau tujuan tidak dapat dihubungi atau terjadi masalah lain pada database sumber atau tujuan.
Setelah mengonfigurasi parameter di atas, klik Next: Configure Database and Table Fields, lalu konfigurasikan informasi berikut:
Database, Table, and Field Configuration
Description
Database Name
Pilih database yang sudah ada.
Table Name
Pilih tabel data yang sudah ada.
Primary Key Column
Bidang yang berfungsi sebagai primary key di tabel data yang dipilih.
Distribution Key
Bidang yang berfungsi sebagai distribution key di tabel data yang dipilih.
Type
Jenis tabel data. Opsi termasuk Partitioned Table dan Replicated Table.
Definition Status
Setelah konfigurasi database, tabel, dan bidang didefinisikan, 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 menjalankan tugas Zero-ETL.
Di halaman Seamless Data Integration, Anda dapat melihat informasi tentang tugas Zero-ETL, seperti ID/Name, Source/Destination, dan Status.
Pantau dan konfigurasikan alert untuk tugas Zero-ETL
Setelah membuat dan menjalankan tugas Zero-ETL, Anda dapat mengatur aturan alert untuk tugas tersebut di Konsol Cloud Monitor guna memantau statusnya secara real time. Prosedurnya sebagai berikut.
Login ke Konsol Cloud Monitor.
Lihat informasi pemantauan.
Di panel navigasi kiri, pilih .
Arahkan kursor ke kartu AnalyticDB for MySQL lalu klik AnalyticDB for mysql 3.0 - ZeroETL Latency.
Klik ID kluster untuk melihat informasi pemantauan tugas Zero-ETL di kluster tersebut.
Buat aturan alert.
Di panel navigasi kiri, klik .
Klik Create Alert Rule. Di panel Create Alert Rule, konfigurasikan aturan alert untuk tugas Zero-ETL. Untuk informasi selengkapnya, lihat Buat aturan alert.
CatatanAtur Product ke AnalyticDB for MySQL 3.0 - ZeroETL Latency.
Buat kebijakan langganan.
Di panel navigasi kiri, klik .
Klik Create Subscription Policy. Di halaman Create Subscription Policy, konfigurasikan kebijakan langganan untuk tugas Zero-ETL. Untuk informasi selengkapnya, lihat Buat langganan event.
CatatanProduct: Pilih AnalyticDB for MySQL 3.0.
Event Type: Pilih Abnormal atau Restore.
Event Name: Pilih ZeroETL Task Abnormal atau ZeroETL Task Recovered.