Mereplikasi data dari MySQL ke BigQuery


Tutorial ini menunjukkan cara membuat dan men-deploy tugas yang terus-menerus mereplikasi data yang berubah dari database MySQL ke tabel BigQuery.

Tujuan

Dalam tutorial ini, Anda telah:

  1. Deploy database MySQL Anda di Compute Engine.
  2. Siapkan database MySQL Anda untuk mengaktifkan replikasi.
  3. Buat dan jalankan tugas replikasi Cloud Data Fusion.
  4. Lihat hasilnya di BigQuery.

Biaya

Dalam dokumen ini, Anda akan menggunakan komponen Google Cloudyang dapat ditagih berikut:

Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda, gunakan kalkulator harga.

Pengguna Google Cloud baru mungkin memenuhi syarat untuk mendapatkan uji coba gratis.

Saat Replikasi berjalan, Anda akan dikenai biaya untuk cluster Dataproc dan dikenai biaya pemrosesan untuk BigQuery. Untuk mengoptimalkan biaya ini, sebaiknya gunakan harga flat BigQuery.

Sebelum memulai

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  2. Verify that billing is enabled for your Google Cloud project.

  3. Enable the Cloud Data Fusion, BigQuery, and Cloud Storage APIs.

    Enable the APIs

  4. Buat instance Cloud Data Fusion publikdi versi 6.3.0 atau yang lebih baru. Jika Anda membuat instance pribadi, siapkan peering jaringan VPC.
    • Saat Anda membuat instance, aktifkan Replikasi dengan mengklik Tambahkan Akselerator dan mencentang kotak Replikasi.
    • Untuk mengaktifkannya di instance yang ada, lihat Mengaktifkan Replikasi.
  5. Peran yang diperlukan

    Untuk mendapatkan izin yang Anda perlukan untuk tutorial ini, lihat Kontrol akses dengan IAM dan Memberi izin pengguna akun layanan.

    Menginstal MySQL di Compute Engine

    1. Download image Docker MySQL Server.

    2. Upload image Docker Anda ke Artifact Registry.

    3. Deploy image Docker Anda di instance VM baru.

    4. Di halaman Disks Compute Engine, ubah ukuran disk menjadi 500 GB dan mulai ulang VM.

      Buka Disk

    5. Buat firewall untuk instance VM.

    6. Instal database sampel Sakila.

    Mengaktifkan replikasi di database MySQL Anda

    Untuk mengaktifkan replikasi, siapkan Change Data Capture (CDC) di MySQL.

    Membuat dan menjalankan tugas replikasi Cloud Data Fusion

    Mengupload driver JDBC

    1. Download driver JDBC MySQL (versi 8 atau yang lebih tinggi) ke komputer lokal Anda.

    2. Di antarmuka web Cloud Data Fusion, upload driver JDBC.

      Gunakan nilai ini untuk mengonfigurasi driver JDBC:

      • Di kolom Name, masukkan mysql.
      • Di kolom Version, gunakan nilai default.
      • Di kolom Class Name, masukkan com.mysql.jdbc.Driver.

    Buat tugas

    1. Di antarmuka web Cloud Data Fusion, klik Replication.

    2. Klik Buat tugas replikasi.

    3. Di halaman Create new replication job, tentukan Nama tugas replikasi, lalu klik Berikutnya.

    4. Konfigurasi sumber:

      1. Pilih MySQL sebagai sumber.
      2. Untuk Host, masukkan nama host server MySQL yang akan dibaca.
      3. Untuk Port, masukkan port yang akan digunakan untuk terhubung ke server MySQL: 3306.
      4. Untuk JDBC Plugin Name , pilih mysql atau nama yang Anda tentukan saat Anda mengonfigurasi driver JDBC.
      5. Untuk Database Name, masukkan sakila.
      6. Di bagian Kredensial, masukkan nama pengguna dan sandi Anda untuk mengakses server MySQL.
    5. Klik Berikutnya.

    6. Konfigurasikan target:

      1. Pilih target BigQuery.
      2. Project ID dan Kunci Akun Layanan akan terdeteksi secara otomatis. Jangan ubah nilai default-nya.
      3. Opsional: Di bagian Lanjutan, konfigurasikan nama, lokasi, interval pemuatan, awalan tabel penahapan, dan perilaku bucket penahapan saat tabel atau database dihapus.
    7. Klik Berikutnya.

    8. Jika koneksi berhasil, daftar tabel database contoh Sakila akan ditampilkan. Untuk tutorial ini, pilih beberapa tabel dan peristiwa yang akan direplikasi, seperti peristiwa Sisipkan, Perbarui, dan Hapus.

    9. Opsional: Konfigurasi properti lanjutan. Untuk tutorial ini, Anda dapat menggunakan setelan default.

    10. Klik Berikutnya.

    11. Di halaman Tinjau penilaian, klik Lihat pemetaan di salah satu tabel untuk penilaian masalah skema, fitur yang tidak ada, atau masalah konektivitas yang mungkin terjadi selama replikasi. Jika terjadi masalah, masalah tersebut harus diselesaikan sebelum Anda dapat melanjutkan. Untuk tutorial ini, jika ada masalah pada tabel, kembali ke langkah saat Anda memilih tabel dan pilih tabel atau peristiwa (Penyisipan, Pembaruan, atau Penghapusan) tanpa masalah.

      Untuk mengetahui informasi selengkapnya tentang konversi jenis data dari database sumber ke tujuan BigQuery, lihat Jenis data replikasi.

    12. Klik Berikutnya.

    13. Tinjau detail tugas replikasi ringkasan, lalu klik Deploy replication job.

    Mulai tugas

    • Di halaman Detail tugas replikasi, klik Mulai.

    Pekerjaan replikasi akan bertransisi dari status Provisioning ke Starting ke status Running. Dalam status berjalan, tugas replikasi memuat snapshot awal data tabel yang Anda pilih ke BigQuery. Dalam status ini, status tabel dicantumkan sebagai Membuat snapshot. Setelah snapshot awal dimuat ke BigQuery, setiap perubahan yang dilakukan pada tabel akan direplikasi ke BigQuery, dan status tabel akan dicantumkan sebagai Mereplikasi.

    Memantau tugas

    Anda dapat memulai dan menghentikan tugas replikasi, meninjau konfigurasi dan log-nya, serta memantau tugas replikasi.

    Anda dapat memantau aktivitas tugas replikasi dari halaman Detail tugas replikasi.

    1. Dari halaman Replication, klik Name tugas replikasi.

    2. Klik Monitoring.

    Melihat hasil di BigQuery

    Tugas replikasi membuat set data dan tabel yang direplikasi di BigQuery, dengan nama yang diwarisi dari nama database dan tabel MySQL yang sesuai.

    1. Di Google Cloud konsol, buka halaman BigQuery.

      Buka BigQuery

    2. Di panel kiri, pilih nama project Anda untuk meluaskan daftar set data.

    3. Untuk melihat hasilnya, pilih set data sakila dan pilih tabel.

    Untuk mengetahui informasi selengkapnya, lihat dokumentasi BigQuery.

    Pembersihan

    Agar tidak perlu membayar biaya pada akun Google Cloud Anda untuk resource yang digunakan dalam tutorial ini, hapus project yang berisi resource tersebut, atau simpan project dan hapus setiap resource.

    Setelah menyelesaikan tutorial, bersihkan resource yang Anda buat di Google Cloud agar resource tersebut tidak menghabiskan kuota dan Anda tidak akan ditagih di masa mendatang. Bagian berikut menjelaskan cara menghapus atau menonaktifkan resource ini.

    Menghapus instance Cloud Data Fusion

    Ikuti petunjuk untuk menghapus instance Cloud Data Fusion Anda.

    Menghapus project

    1. In the Google Cloud console, go to the Manage resources page.

      Go to Manage resources

    2. In the project list, select the project that you want to delete, and then click Delete.
    3. In the dialog, type the project ID, and then click Shut down to delete the project.

    Langkah berikutnya