Google Cloud Platform (GCP) terdiri dari banyak layanan database. GCP menawarkan tiga arsitektur referensi untuk distribusi data global – distribusi hybrid, multi-cloud, dan regional. Ini akan membantu untuk mempertimbangkan arsitektur ini ketika memilih layanan basis data Google.
Dalam postingan ini, kami akan menjelaskan distribusi data di GCP dan memberikan ringkasan tentang layanan database cloud Google yang populer, termasuk pertimbangan penting saat mengevaluasi dan memilih layanan. Kami juga akan menunjukkan bagaimana NetApp Cloud Volumes ONTAP dapat membantu memusatkan dan menyederhanakan pengelolaan sumber daya basis data cloud Google. Ini adalah bagian dari rangkaian panduan komprehensif kami untuk teknologi penyimpanan cloud.
Deploy database di Google Cloud
Google Cloud Platform (GCP) mendukung tiga model penerapan utama: cloud tunggal, hybrid, dan multi-cloud.
Penerapan cloud tunggal
Model penerapan paling sederhana adalah menerapkan database hanya di Google Cloud melalui:
- Pembuatan database cloud baru di Google
- “Mengangkat dan memindahkan” beban kerja yang ada dari on-premise ke cloud dan menonaktifkan sumber daya database on-premise
Penerapan hibrid: Google Cloud dan sumber daya lokal
Penerapan hybrid praktis saat Anda memiliki aplikasi di cloud yang memerlukan akses ke database lokal atau sebaliknya. Misalnya, jika Anda melakukan analitik pemasaran di lokasi dan perlu mengakses database pelanggan yang dihosting di cloud.
Ada tiga pertimbangan utama untuk men-deploy database dalam model hybrid—dengan beberapa data di Google Cloud dan beberapa data lokal:
- Basis data utama – Anda perlu memutuskan apakah basis data pusat Anda akan disimpan secara lokal atau di cloud. Jika Anda memilih cloud, resource GCP dapat berfungsi sebagai pusat data untuk resource lokal. Sumber daya internal Anda dapat menyinkronkan data ke cloud untuk penggunaan jarak jauh atau cadangan jika Anda memilih lokal. Ini memungkinkan Anda memelihara basis data yang dicerminkan untuk menyediakan failover saat terjadi kerusakan.
- Layanan terkelola – layanan ini hanya tersedia untuk sumber daya cloud. Jika Anda perlu menggunakan aplikasi hybrid dengan data Anda, Anda mungkin tidak dapat mengakses layanan terkelola untuk aplikasi tersebut. Misalnya, jika Anda membuat database cloud hibrid, Anda tidak dapat memanfaatkan sepenuhnya karena sumber daya lokal Anda tidak dikelola. Layanan ini mencakup skalabilitas, redundansi, dan pencadangan otomatis. Namun, Anda dapat menggunakan layanan terkelola pihak ketiga.
- Portabilitas – Jenis penyimpanan data yang Anda pilih memengaruhi portabilitas data Anda. Untuk memastikan transfer data yang andal dan konfigurasi serta manajemen yang konsisten, Anda harus mempertimbangkan penyimpanan lintas platform seperti MySQL. Menggunakan database homogen di tempat dan di cloud menyediakan Anda tidak perlu memformat ulang atau mengubah skema data, memungkinkan Anda untuk mentransfernya sesuai kebutuhan dengan cepat.
Diagram berikut menampilkan contoh arsitektur hybrid dengan Google Cloud dan sistem lokal.
Penerapan Multicloud: Termasuk Google Cloud dan penyedia lainnya
Penerapan multicloud memungkinkan Anda menggabungkan database yang diterapkan di Google Cloud dengan layanan database dari penyedia cloud lainnya. Ini dapat membantu Anda membangun lebih banyak fitur keamanan, mendistribusikan database Anda dengan lebih efisien, atau memanfaatkan lebih banyak fitur cloud eksklusif. Saat mempertimbangkan penerapan multi-cloud, Anda harus mengetahui hal-hal berikut:
- Integrasi – penting untuk memastikan bahwa sistem klien dapat dengan lancar mengakses database terlepas dari cloud tempat mereka diterapkan. Anda dapat menggunakan pustaka klien sumber terbuka untuk memastikan ketersediaan database yang lancar di seluruh awan seperti awan (lihat panduan JDBC).
- Migrasi Database – Dengan beberapa penyedia cloud, Anda mungkin perlu memigrasikan data antar cloud. Akan membantu jika Anda menggunakan alat replikasi basis data atau proses ekspor/impor untuk memigrasikan basis data ke GCP. Ada beberapa alat migrasi Google Cloud yang dapat Anda gunakan untuk memigrasikan data ke Google Cloud, seperti Google Storage Transfer.
Diagram berikut menunjukkan penerapan multi-cloud yang melibatkan GCP dan penyedia cloud publik lainnya.
Layanan Basis Data Google Cloud
GCP menawarkan beberapa layanan database Google Cloud yang dapat dipilih. Di bawah ini adalah pengantar masing-masing.
Cloud SQL
Cloud SQL adalah layanan basis data relasional Google Cloud yang dikelola sepenuhnya yang kompatibel dengan SQL Server, MySQL, dan PostgreSQL. Ini mencakup pencadangan otomatis, replikasi data, dan fitur pemulihan bencana untuk memastikan ketersediaan dan ketahanan yang tinggi. Anda dapat mengintegrasikan layanan ini dengan Kubernetes, App Engine, dan BigQuery Kasus penggunaan Cloud SQL setiap hari mencakup:
- Angkat dan pindahkan database SQL lokal ke cloud
- Analisis data SQL ekstensif
- Penyimpanan data Content Management System (CMS) dan dukungan skalabilitas.
- Manajemen basis data menggunakan Infrastruktur sebagai Kode (IaC)
- Pengembangan dan penerapan aplikasi kontainer dan layanan mikro
Cloud Spanner
Cloud Spanner adalah layanan database relasional yang terkelola sepenuhnya dari Google Cloud. Ini berbeda dari Cloud SQL karena berfokus untuk memungkinkan Anda menggabungkan manfaat struktur relasional dengan skalabilitas non-relasional. Contoh penggunaan Cloud Spanner antara lain:
- Manufaktur dan manajemen rantai pasokan
- Perdagangan keuangan, analisis, dan prediksi
- Logistik dan transportasi
Baca Juga
BigQuery
BigQuery adalah gudang data tanpa server yang terkelola sepenuhnya. Anda dapat menggunakannya untuk melakukan analisis data melalui SQL dan aliran data kueri. Layanan ini menyertakan layanan transfer data bawaan untuk membantu Anda memigrasikan data dari sumber lokal, termasuk Teradata. BigQuery menyertakan fitur untuk pembelajaran mesin, kecerdasan bisnis, dan analitik geospasial. Fitur ini disediakan melalui BI Engine, BigQuery ML, dan GIS. Contoh penggunaan untuk BigQuery meliputi:
- Proses analitik dan pengoptimalan
- Pemrosesan dan analisis data besar
- Analisis dan prediksi perilaku berdasarkan pembelajaran mesin
- Modernisasi gudang data
Cloud Bigtable
Cloud Bigtable adalah layanan database NoSQL yang dikelola sepenuhnya dari Google Cloud. Ini dirancang untuk tugas operasional dan analitis yang besar. Cloud Bigtable menghadirkan konfigurasi zero-downtime yang tinggi, ketersediaan, dan latensi di bawah 10 md. Anda dapat mengintegrasikannya dengan berbagai alat, termasuk BigQuery, TensorFlow, dan Layanan Apache. Contoh penggunaan Cloud Bigtable antara lain:
Analisis dan peramalan keuangan
Penerimaan dan pemrosesan data Internet of Things (IoT).
Cloud Firestore
Cloud Firestore adalah database Google Cloud NoSQL tanpa server yang terkelola sepenuhnya, dirancang untuk pengembangan aplikasi tanpa server. Anda dapat menggunakannya untuk menyimpan, menyinkronkan, dan meminta data untuk aplikasi web, seluler, dan IoT. Ini mencakup fitur untuk dukungan offline, sinkronisasi langsung, dan keamanan bawaan. Anda dapat mengintegrasikan Firestore dengan Firebase, platform pengembangan seluler GCP, untuk mempermudah pembuatan dan pengelolaan aplikasi. Contoh penggunaan Cloud Firestore antara lain:
- Aplikasi seluler dan web dengan opsi online dan offline
- Multi-pengguna, aplikasi kolaboratif
- Analisis waktu nyata
- Aplikasi media sosial
- Forum game dan papan peringkat
Firebase database secara real time
Realtime Database adalah database Google Cloud NoSQL yang merupakan bagian dari platform Firebase. Ini memungkinkan Anda untuk menyimpan dan menyinkronkan data secara real-time dan menyertakan fitur caching untuk penggunaan offline.
Basis data real-time juga akan memungkinkan Anda menerapkan autentikasi deklaratif, mencocokkan pengguna dengan identitas atau pola. Ini mencakup kit pengembangan perangkat lunak seluler dan web (SDK) untuk pengembangan aplikasi yang lebih mudah dan lebih cepat. Contoh penggunaan untuk Firebase Realtime Database antara lain:
- Mengembangkan aplikasi yang berfungsi lintas perangkat
- Pengoptimalan dan personalisasi iklan
- Pemrosesan pembayaran pihak ketiga
- Integrasi pembelajaran mesin
Penyimpanan Cloud Memory
Penyimpanan Cloud Memory adalah penyimpanan data dalam memori Google Cloud yang terkelola sepenuhnya. Ini dirancang agar dapat diskalakan, sangat tersedia, dan aman. Penyimpanan Cloud Memory memungkinkan cache aplikasi dengan latensi sub-milidetik untuk mengakses data. Contoh penggunaan penyimpanan Cloud Memory meliputi:
- Migrasi aplikasi angkat dan geser
- Penerapan pembelajaran mesin
- Analisis waktu nyata
- Caching dan pemuatan data latensi rendah
Pilih database Google Cloud
Bahkan setelah menjelajahi opsi database di Google Cloud, memutuskan pilihan mana yang cocok untuk Anda bisa jadi menantang. Hal ini memungkinkan Anda untuk mengoptimalkan implementasi sesuai dengan kemampuan database daripada mencoba menyesuaikan layanan database agar sesuai dengan semua kebutuhan.
Cloud SQL
Cloud SQL adalah pilihan yang baik saat Anda memerlukan fungsionalitas database relasional tetapi tidak memerlukan penyimpanan lebih dari 10 TB atau lebih dari 4000 koneksi bersamaan. Anda juga harus terampil dalam manajemen on-premise.
Cloud Spanner
Cloud Spanner adalah pilihan yang baik saat Anda berencana menggunakan data dalam jumlah besar (lebih dari 10 TB) dan membutuhkan konsistensi transaksional. Sebaiknya gunakan sharding untuk throughput dan ketersediaan yang lebih tinggi. Jika Anda mengetahui atau merasa perlu untuk dapat menskalakan database Google Cloud secara horizontal, Cloud Scanner adalah pilihan yang lebih baik daripada Cloud SQL. Jika Anda memulai dengan Cloud SQL dan pada akhirnya perlu bermigrasi ke Cloud Spanner, bersiaplah untuk menulis ulang aplikasi selain memigrasikan database.
Cloud Firestore/Datastore
Cloud Firestore atau Datastore adalah pilihan yang baik ketika Anda berencana untuk fokus pada pengembangan aplikasi dan memerlukan sinkronisasi langsung dan dukungan offline. Cloud Datastore direkomendasikan jika Anda perlu menyimpan data tidak terstruktur dalam dokumen JSON. Ini dibandingkan dengan saat Anda perlu menyimpan data terstruktur, di mana Cloud Spanner direkomendasikan. Faktor lain yang perlu dipertimbangkan adalah apakah Anda memerlukan Atomicity, Consistency, Isolation, and Durability (ACID). Anda harus memilih Cloud Spanner karena Cloud Datastore hanya menawarkan transaksi atomik dan persisten.
Cloud Bigtable
Cloud Bigtable adalah pilihan yang baik jika Anda menggunakan data dalam jumlah besar dengan satu kunci. Dengan kata sederhana, ini bekerja dengan baik untuk latensi rendah dan throughput tinggi. Jika Anda perlu menganalisis satu area, Cloud Bigtable lebih disukai daripada Cloud Spanner. Namun, Cloud Spanner adalah solusi yang direkomendasikan jika Anda membutuhkan traffic multi-region. Misalnya, Cloud Bigtable adalah pilihan yang baik untuk aplikasi deret waktu yang dibuat untuk pemantauan DevOps. Sementara itu, Cloud Spanner adalah pilihan yang direkomendasikan untuk platform pemantauan infrastruktur yang dirancang untuk penawaran software-as-a-service (SaaS).
Penyimpanan Cloud Memory
Cloud Memorystore adalah pilihan yang baik jika Anda menggunakan kumpulan data nilai kunci dan latensi transaksi adalah perhatian utama Anda. Jika Anda tidak membutuhkan persistensi disk dan hanya menggunakan layanan caching, Cloud Memorystore harus menjadi pilihan Anda. Namun, jika Anda mengkhawatirkan masalah seperti konsistensi cache dan database atau pemrosesan streaming, Anda harus memilih Cloud Bigtable. Demikian pula, kapan pun volume data Anda terlalu besar untuk muat di memori, Cloud Memorystore bukanlah pilihan terbaik untuk Anda.
Pengelolaan Database Google Cloud dengan Volume Cloud
ONTAP NetApp Cloud Volumes ONTAP, solusi manajemen penyimpanan tingkat perusahaan terkemuka, menyediakan layanan manajemen penyimpanan yang aman dan terbukti di AWS, Azure, dan Google Cloud. Cloud Volumes ONTAP mendukung kapasitas hingga 368 TB dan mendukung berbagai kasus penggunaan seperti layanan file, database, DevOps, atau beban kerja perusahaan lainnya dengan serangkaian fitur canggih termasuk ketersediaan tinggi, perlindungan data, efisiensi penyimpanan, integrasi Kubernetes, dan banyak lagi. Cloud Volumes ONTAP sangat membantu dalam menangani beban kerja database di cloud, menjembatani kesenjangan antara kemampuan database cloud Anda dan sumber daya cloud publik yang dijalankannya.