Dokumen ini menjelaskan cara men-deploy Transformasi data antara MongoDB Atlas dan Google Cloud. Dalam dokumen ini, Anda akan men-deploy proses ekstrak, transformasi, dan pemuatan (ETL) antara data dari MongoDB Atlas ke BigQuery.
Petunjuk ini ditujukan untuk administrator data yang ingin menggunakan BigQuery untuk melakukan analisis kompleks pada data operasional yang disimpan di MongoDB Atlas. Anda harus memahami MongoDB Atlas, BigQuery, dan Dataflow.
Arsitektur
Diagram berikut menunjukkan arsitektur referensi yang Anda gunakan saat men-deploy solusi ini.
Seperti yang ditunjukkan pada diagram, ada tiga template Dataflow yang menangani proses integrasi. Template pertama, MongoDB ke BigQuery, adalah pipeline batch yang membaca dokumen dari MongoDB dan menulisnya ke BigQuery. Template kedua, BigQuery ke MongoDB, adalah template batch yang dapat digunakan untuk membaca data yang dianalisis dari BigQuery dan menulisnya ke MongoDB. Template ketiga, MongoDB ke BigQuery (CDC), adalah pipeline streaming yang berfungsi dengan aliran perubahan MongoDB untuk menangani perubahan dalam data operasional. Untuk mengetahui detailnya, lihat Transformasi data antara MongoDB Atlas dan Google Cloud.
Tujuan
Langkah-langkah deployment berikut menunjukkan cara menggunakan template MongoDB ke BigQuery untuk melakukan proses ETL antara data dari MongoDB Atlas ke BigQuery. Untuk men-deploy proses ETL ini, Anda harus melakukan tugas-tugas berikut:
- Menyediakan cluster MongoDB Atlas di Google Cloud.
- Muat data ke cluster MongoDB Anda.
- Konfigurasi akses cluster.
- Siapkan tabel BigQuery di Google Cloud.
- Buat dan pantau tugas Dataflow yang mentransfer data MongoDB ke BigQuery.
- Validasi tabel output di BigQuery.
Biaya
Dalam dokumen ini, Anda akan menggunakan komponen Google Cloud yang dapat ditagih berikut:
Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda,
gunakan kalkulator harga.
Setelah menyelesaikan tugas yang dijelaskan dalam dokumen ini, Anda dapat menghindari penagihan berkelanjutan dengan menghapus resource yang Anda buat. Untuk mengetahui informasi selengkapnya, lihat Pembersihan.
Sebelum memulai
Selesaikan langkah-langkah berikut untuk menyiapkan lingkungan untuk arsitektur MongoDB ke BigQuery.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataflow APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataflow APIs.
Menginstal MongoDB Atlas
Di bagian ini, Anda menggunakan Cloud Marketplace untuk menginstal instance MongoDB Atlas. Petunjuk ini mengasumsikan bahwa Anda tidak memiliki akun MongoDB yang sudah ada. Untuk mengetahui detail lengkap tentang cara menyiapkan langganan dan menautkan akun penagihan Google ke akun MongoDB, lihat Google Cloud Self-Serve Marketplace dalam dokumentasi MongoDB.
- Di konsol Google Cloud, luaskan menu navigasi, lalu pilih Marketplace.
- Di kotak penelusuran Marketplace, masukkan MongoDB Atlas.
- Di hasil penelusuran, pilih MongoDB Atlas (Bayar Sesuai Penggunaan).
- Di halaman MongoDB Atlas (Bayar Sesuai Penggunaan), tinjau ringkasan untuk persyaratan dan ketentuan, lalu klik Daftar dengan MongoDB.
- Di halaman langganan MongoDB, pilih akun penagihan Anda, setujui persyaratan, lalu klik Berlangganan.
- Klik tombol Daftar dengan MongoDB dan buat akun MongoDB.
- Di halaman yang meminta Anda memilih organisasi, pilih organisasi MongoDB yang akan ditautkan ke akun penagihan Google Cloud Anda.
- Tunggu hingga Google Cloud selesai menyinkronkan organisasi Anda.
Saat akun disinkronkan, halaman MongoDB Atlas (Bayar Sesuai Penggunaan) di konsol Google Cloud akan diperbarui untuk menampilkan tombol Kelola di penyedia.
Membuat Cluster MongoDB Atlas
Di bagian ini, Anda akan membuat cluster MongoDB. Selama proses pembuatan, Anda akan memilih informasi berikut:
- Jenis cluster Anda. Pilih Tingkat Cluster berdasarkan persyaratan infrastruktur Anda.
- Region yang diinginkan untuk cluster Anda. Sebaiknya pilih region yang paling dekat dengan lokasi fisik Anda.
Untuk mengetahui detail tentang cara membuat dan men-deploy cluster MongoDB gratis, lihat artikel Men-deploy Cluster Gratis dalam dokumentasi MongoDB.
Untuk membuat dan menyiapkan cluster, ikuti langkah-langkah berikut:
- Di konsol Google Cloud, pada halaman MongoDB Atlas (Pay as You Go), klik Manage on Provider.
Di halaman login MongoDB, klik Google, lalu klik Akun Google yang Anda gunakan untuk menginstal MongoDB Atlas.
Sebagai pengguna baru, UI MongoDB akan otomatis terbuka ke halaman Deployment Database.
Di UI Atlas, pada halaman Database Deployments, klik Create.
Di halaman Buat Cluster, klik Bersama.
Opsi Shared menyediakan cluster gratis yang dapat Anda gunakan untuk menguji arsitektur referensi ini.
Di halaman Create a Shared Cluster, di bagian Cloud Provider & Region, lakukan hal berikut:
- Pilih Google Cloud.
- Pilih region yang paling dekat dengan Anda secara geografis dan memiliki karakteristik yang Anda inginkan.
Di bagian Cluster Tier, pilih opsi M0.
Cluster
M0
gratis dan cocok untuk aplikasi bukti konsep kecil.Di Cluster Name, masukkan nama untuk cluster Anda.
Klik Create Cluster untuk men-deploy cluster.
Menyiapkan cluster MongoDB
Di bagian ini, Anda akan menyelesaikan prosedur berikut:
- Memuat data sampel ke cluster Anda.
- Mengonfigurasi akses ke cluster Anda.
- Menghubungkan ke cluster Anda.
Memuat data sampel ke cluster MongoDB
Setelah membuat cluster MongoDB, Anda perlu memuat data ke dalam cluster tersebut. MongoDB memuat berbagai set data sampel. Anda dapat menggunakan salah satu set data ini untuk menguji deployment ini. Namun, Anda mungkin ingin menggunakan set data yang mirip dengan data sebenarnya yang akan digunakan dalam deployment produksi.
Untuk mengetahui detail tentang cara memuat data sampel, lihat Memuat Data Sampel dalam dokumentasi MongoDB.
Untuk memuat data contoh, lakukan langkah-langkah berikut:
- Di UI Atlas, pada halaman Database Deployments, cari cluster yang baru saja Anda deploy.
Klik tombol Elips (...), lalu klik Muat Set Data Contoh.
Memuat data sampel memerlukan waktu sekitar 5 menit.
Tinjau set data contoh dan catat koleksi yang ingin Anda gunakan saat menguji deployment ini.
Mengonfigurasi akses cluster
Untuk menghubungkan cluster, Anda perlu membuat pengguna database dan menetapkan alamat IP untuk cluster:
- Pengguna database terpisah dari pengguna MongoDB. Anda memerlukan pengguna database untuk terhubung ke MongoDB dari Google Cloud.
- Untuk arsitektur referensi ini, Anda menggunakan blok CIDR
0.0.0.0/0
sebagai alamat IP. Blok CIDR ini memungkinkan akses dari mana saja dan hanya cocok untuk deployment proof of concept seperti ini. Namun, saat Anda men-deploy versi produksi arsitektur ini, pastikan untuk memasukkan rentang alamat IP yang sesuai untuk aplikasi Anda.
Untuk mengetahui detail tentang cara menyiapkan pengguna database dan alamat IP untuk cluster, lihat Mengonfigurasi akses cluster dengan Wizard Mulai Cepat dalam dokumentasi MongoDB.
Untuk mengonfigurasi akses cluster, lakukan langkah-langkah berikut:
- Di bagian Keamanan pada panel navigasi kiri, klik Mulai Cepat.
- Di halaman Nama Pengguna dan Sandi, lakukan tindakan berikut untuk membuat pengguna database:
- Untuk Nama pengguna, masukkan nama untuk pengguna database.
- Untuk Sandi, masukkan sandi untuk pengguna database.
- Klik Create User.
Di halaman Nama Pengguna dan Sandi, lakukan hal berikut untuk menambahkan alamat IP untuk cluster Anda:
Di Alamat IP, masukkan 0.0.0.0/0.
Untuk lingkungan produksi, pilih alamat IP yang sesuai untuk lingkungan tersebut.
(Opsional) Untuk Deskripsi, masukkan deskripsi cluster Anda.
Klik Tambahkan Entri.
Klik Finish and Close.
Menghubungkan ke cluster
Setelah akses ke cluster dikonfigurasi, Anda kini perlu terhubung ke cluster. Untuk mengetahui detail tentang cara menghubungkan ke cluster, lihat Menghubungkan ke Cluster Anda dalam dokumentasi MongoDB.
Ikuti langkah-langkah berikut untuk terhubung ke cluster Anda:
- Di UI Atlas, pada halaman Database Deployments, cari cluster yang baru saja Anda deploy.
- Pilih Hubungkan.
- Di halaman Connect, klik opsi Compass.
Cari kolom Salin string koneksi, lalu salin dan simpan string koneksi MongoDB. Anda menggunakan string koneksi ini saat menjalankan template Dataflow.
String koneksi memiliki sintaksis berikut:
mongodb+srv://<UserName>:<Password>@<HostName>
String koneksi secara otomatis memiliki nama pengguna pengguna database yang Anda buat di langkah sebelumnya. Namun, Anda akan diminta untuk memasukkan sandi pengguna database saat menggunakan string ini untuk terhubung.
Klik Close.
Membuat set data di BigQuery
Saat membuat set data di BigQuery, Anda hanya perlu memasukkan nama set data dan memilih lokasi geografis untuk set data tersebut. Namun, ada kolom opsional yang dapat Anda tetapkan di set data. Untuk informasi selengkapnya tentang kolom opsional tersebut, lihat Membuat set data.
Di konsol Google Cloud, buka halaman BigQuery.
Di panel Explorer, pilih project tempat Anda ingin membuat set data.
Luaskan opsi
, lalu klik Create dataset.Di halaman Create dataset, lakukan hal berikut:
- Untuk Dataset ID, masukkan nama set data yang unik.
Untuk Location type, pilih lokasi geografis untuk set data. Setelah set data dibuat, lokasi tidak dapat diubah.
Jika Anda memilih
EU
atau region yang berbasis di Uni Eropa untuk lokasi set data, Data Pelanggan BigQuery inti Anda akan berada di Uni Eropa. Untuk mengetahui definisi Data Pelanggan BigQuery inti, lihat Persyaratan Khusus Layanan.Klik Create dataset.
Membuat, memantau, dan memvalidasi tugas batch Dataflow
Di Dataflow, gunakan petunjuk berikut untuk membuat tugas batch satu kali yang memuat data contoh dari MongoDB ke BigQuery. Setelah membuat tugas batch, Anda dapat memantau progres tugas di antarmuka pemantauan Dataflow. Untuk mengetahui detail lengkap tentang penggunaan antarmuka pemantauan, lihat Menggunakan antarmuka pemantauan Dataflow.
Di konsol Google Cloud, buka halaman Dataflow.
Klik Create job from template.
Di halaman Create job from template, lakukan langkah-langkah berikut:
- Untuk Nama tugas, masukkan nama tugas yang unik, seperti mongodb-to-bigquery-batch. Pastikan tidak ada tugas Dataflow lain dengan nama tersebut yang saat ini berjalan di project tersebut.
- Untuk Regional endpoint, pilih lokasi yang sama dengan set data BigQuery yang baru saja Anda buat.
- Untuk Template dataflow, di Daftar Proses Data dalam Jumlah Besar (batch), pilih MongoDB to BigQuery.
Di bagian Required Parameters, masukkan parameter berikut:
- Untuk MongoDB Connection URI, masukkan string koneksi MongoDB Atlas Anda.
- Untuk Database Mongo, masukkan nama database yang Anda buat sebelumnya.
- Untuk Koleksi Mongo, masukkan nama koleksi contoh yang Anda catat sebelumnya.
- Untuk tabel tujuan BigQuery, klik Browse, lalu pilih tabel BigQuery yang Anda buat di langkah sebelumnya.
Untuk Opsi pengguna, masukkan TIDAK ADA atau FLATTEN.
NONE akan memuat seluruh dokumen dalam format string JSON ke BigQuery. FLATTEN meratakan dokumen ke satu level. Jika Anda tidak menyediakan UDF, opsi FLATTEN hanya berfungsi dengan dokumen yang memiliki skema tetap.
Untuk memulai tugas, klik Run Job.
Gunakan langkah-langkah berikut untuk membuka antarmuka pemantauan Dataflow tempat Anda dapat memeriksa progres tugas batch dan memvalidasi bahwa tugas selesai tanpa error:
- Di konsol Google Cloud, di project untuk deployment ini, buka menu navigasi.
- Di Analytics, klik Dataflow.
Setelah pipeline berhasil berjalan, lakukan hal berikut untuk memvalidasi output tabel:
- Di BigQuery, buka panel Explorer.
Luaskan project Anda, klik set data, lalu klik dua kali tabel.
Sekarang Anda dapat melihat data MongoDB di tabel.
Pembersihan
Agar tidak menimbulkan biaya pada akun MongoDB dan Google Cloud, Anda harus menjeda atau menghentikan cluster MongoDB Atlas dan menghapus project Google Cloud yang Anda buat untuk arsitektur referensi ini.
Menjeda atau menghentikan cluster MongoDB Atlas
Prosedur berikut memberikan dasar-dasar untuk menjeda cluster Anda. Untuk mengetahui detail selengkapnya, lihat Menjeda, Melanjutkan, atau Menghentikan Cluster di dokumentasi MongoDB.
- Di UI Atlas, buka halaman Deployment Database untuk project Atlas Anda.
- Untuk cluster yang ingin dijeda, klik .
- Klik Pause Cluster.
- Klik Pause Cluster untuk mengonfirmasi pilihan Anda.
Menghapus project
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Langkah selanjutnya
- Temukan Template Google Dataflow di GitHub jika Anda ingin menyesuaikan template.
- Pelajari lebih lanjut solusi MongoDB Atlas dan Google Cloud di Peningkatan keterampilan cloud.
- Pelajari lebih lanjut produk Google Cloud yang digunakan dalam arsitektur referensi ini:
- Untuk mengetahui lebih banyak tentang arsitektur referensi, diagram, dan praktik terbaik lainnya, jelajahi Pusat Arsitektur Cloud.
Kontributor
Penulis:
- Saurabh Kumar | ISV Partner Engineer
- Venkatesh Shanbhag | Senior Solutions Architect (MongoDB)
Kontributor lainnya:
- Jun Liu | Supportability Tech Lead
- Maridi (Raju) Makaraju | Supportability Tech Lead
- Sergei Lilichenko | Solutions Architect
- Shan Kulandaivel | Group Product Manager