Dokumen di Framework Arsitektur Google Cloud ini memberikan rekomendasi untuk membantu Anda mengoptimalkan biaya database dan workload analisis di Google Cloud.
Panduan di bagian ini ditujukan untuk arsitek, developer, dan administrator yang bertanggung jawab untuk penyediaan dan pengelolaan database serta workload analisis di cloud.
Bagian ini mencakup rekomendasi pengoptimalan biaya untuk produk berikut:
Cloud SQL
Cloud SQL adalah database relasional yang terkelola sepenuhnya untuk MySQL, PostgreSQL, dan SQL Server.
Memantau penggunaan
Tinjau metrik di dasbor pemantauan, dan validasikan bahwa deployment memenuhi persyaratan workload Anda.
Mengoptimalkan sumber daya
Berikut ini beberapa rekomendasi untuk membantu Anda mengoptimalkan resource Cloud SQL:
- Desain strategi dengan ketersediaan tinggi dan pemulihan dari bencana yang selaras dengan
batas waktu pemulihan (RTO) dan toleransi durasi kehilangan data (RPO) Anda.
Bergantung pada workload Anda, sebaiknya lakukan tindakan berikut:
- Untuk workload yang memerlukan RTO dan RPO yang singkat, gunakan konfigurasi ketersediaan tinggi dan replika untuk failover regional.
- Untuk workload yang dapat bertahan dari RTO dan RPO yang lebih lama, gunakan cadangan otomatis dan on-demand, yang memerlukan waktu sedikit lebih lama untuk dipulihkan setelah terjadi kegagalan.
- Menyediakan database dengan kapasitas penyimpanan minimum yang diperlukan.
- Untuk menskalakan kapasitas penyimpanan secara otomatis seiring pertumbuhan data Anda, aktifkan fitur peningkatan penyimpanan otomatis.
- Pilih jenis penyimpanan, solid-state drive (SSD) atau hard disk drive (HDD), yang sesuai untuk kasus penggunaan Anda. SSD adalah pilihan paling efisien dan hemat biaya untuk sebagian besar kasus penggunaan. HDD mungkin cocok untuk set data besar (>10 TB) yang tidak sensitif terhadap latensi atau jarang diakses.
Mengoptimalkan tarif
Pertimbangkan untuk membeli diskon abonemen untuk workload dengan kebutuhan resource yang dapat diprediksi. Anda dapat menghemat 25% dari harga on demand untuk komitmen 1 tahun dan 52% untuk komitmen 3 tahun.
Spanner
Spanner adalah database berbasis cloud dengan skala tidak terbatas dan konsistensi kuat yang menawarkan ketersediaan hingga 99,999%.
Memantau penggunaan
Berikut adalah rekomendasi untuk membantu Anda melacak penggunaan resource Spanner:
- Pantau deployment Anda, dan konfigurasikan jumlah node berdasarkan rekomendasi CPU.
- Tetapkan pemberitahuan tentang deployment Anda untuk mengoptimalkan resource penyimpanan. Untuk menentukan konfigurasi yang sesuai, lihat batas per node yang direkomendasikan.
Mengoptimalkan sumber daya
Berikut adalah rekomendasi untuk membantu Anda mengoptimalkan resource Spanner:
- Menjalankan workload yang lebih kecil di Spanner dengan biaya yang jauh lebih rendah dengan menyediakan resource menggunakan Unit Pemrosesan (PU) dibandingkan node; satu node Spanner sama dengan 1.000 PU.
- Tingkatkan performa eksekusi kueri dengan menggunakan pengoptimal kueri.
- Buat Pernyataan SQL menggunakan praktik terbaik untuk membuat rencana eksekusi yang efisien.
- Kelola penggunaan dan performa deployment Spanner menggunakan alat Autoscaler. Alat ini memantau instance, menambahkan atau menghapus node secara otomatis, dan membantu Anda memastikan bahwa instance tetap berada dalam batas CPU dan penyimpanan yang direkomendasikan.
- Lindungi dari penghapusan atau penulisan yang tidak disengaja: pemulihan point-in-time (PITR). Database dengan periode retensi data yang lebih lama (terutama database yang sering menimpa data) menggunakan lebih banyak resource sistem dan memerlukan lebih banyak node.
- Tinjau strategi pencadangan Anda, dan pilih di antara opsi berikut:
- Pencadangan dan pemulihan
- Mengekspor dan mengimpor
Mengoptimalkan tarif
Saat memutuskan lokasi node Spanner Anda, pertimbangkan
perbedaan biaya antara region Google Cloud. Misalnya, node yang
di-deploy di region us-central1
memiliki biaya per jam yang jauh lebih rendah dibandingkan
node di region southamerica-east1
.
Bigtable
Bigtable adalah penyimpanan NoSQL kolom lebar dan berbasis cloud untuk workload berlatensi rendah dan berskala besar.
Memantau penggunaan
Berikut adalah rekomendasi untuk membantu Anda melacak penggunaan resource Bigtable:
- Analisis metrik penggunaan untuk mengidentifikasi peluang pengoptimalan resource.
- Identifikasi hotspot dan hotkey di cluster Bigtable Anda dengan menggunakan alat diagnostik Key Visualizer.
Mengoptimalkan sumber daya
Berikut adalah rekomendasi untuk membantu Anda mengoptimalkan resource Bigtable:
- Untuk membantu memastikan penggunaan CPU dan disk yang menyeimbangkan latensi dan kapasitas penyimpanan, evaluasi dan sesuaikan jumlah node dan ukuran cluster Bigtable Anda.
- Pertahankan performa serendah mungkin dengan menskalakan secara terprogram cluster Bigtable Anda untuk menyesuaikan jumlah node secara otomatis.
Evaluasi jenis penyimpanan (HDD atau SSD) yang paling hemat biaya untuk kasus penggunaan Anda, berdasarkan pertimbangan berikut:
- Harga penyimpanan HDD lebih murah daripada SSD, tetapi performanya lebih rendah.
- Harga penyimpanan SSD lebih mahal daripada HDD, tetapi memberikan performa yang lebih cepat dan dapat diprediksi.
Penghematan biaya dari HDD minimal, relatif terhadap biaya node di cluster Bigtable Anda, kecuali jika Anda menyimpan data dalam jumlah besar. Penyimpanan HDD terkadang sesuai untuk set data besar (>10 TB) yang tidak sensitif terhadap latensi atau jarang diakses.
Menghapus data yang telah habis masa berlakunya dan tidak digunakan lagi menggunakan pembersihan sampah memori.
Untuk menghindari hotspot, terapkan praktik terbaik untuk desain row key.
Desain rencana pencadangan hemat biaya yang sesuai dengan RPO Anda.
Untuk menurunkan penggunaan cluster dan mengurangi jumlah node, pertimbangkan untuk menambahkan cache kapasitas untuk kueri yang dapat di-cache menggunakan Memorystore.
Bacaan tambahan
- Blog: Panduan dasar tentang pengoptimalan biaya Bigtable
- Blog: Praktik terbaik untuk performa dan pengoptimalan biaya Bigtable
BigQuery
BigQuery adalah data warehouse multicloud serverless, sangat skalabel, dan hemat biaya yang dirancang untuk fleksibilitas bisnis.
Memantau penggunaan
Berikut adalah rekomendasi untuk membantu Anda melacak penggunaan resource BigQuery:
- Visualisasikan biaya BigQuery yang disegmentasi berdasarkan project dan pengguna. Identifikasi kueri yang paling mahal dan mengoptimalkannya.
- Analisis penggunaan slot di seluruh project, tugas, dan reservasi menggunakan tabel metadata
INFORMATION_SCHEMA
.
Mengoptimalkan sumber daya
Berikut adalah rekomendasi untuk membantu Anda mengoptimalkan resource BigQuery:
- Siapkan masa berlaku tingkat set data, tingkat tabel, atau tingkat partisi untuk data berdasarkan strategi kepatuhan Anda.
- Batasi biaya kueri dengan membatasi jumlah byte yang ditagih per kueri. Untuk mencegah error manusia yang tidak disengaja, aktifkan kontrol biaya di level pengguna dan level project.
- Hanya kueri data yang Anda butuhkan. Hindari pemindaian kueri penuh. Untuk menjelajahi dan memahami semantik data, gunakan opsi pratinjau data tanpa biaya.
- Untuk mengurangi biaya pemrosesan dan meningkatkan performa, lakukan partisi dan cluster tabel Anda bila memungkinkan.
- Filter kueri Anda sedini dan sesering mungkin.
- Saat memproses data dari berbagai sumber (seperti Bigtable, Cloud Storage, Google Drive, dan Cloud SQL), hindari duplikasi data, dengan menggunakan model data akses gabungan dan mengkueri data langsung dari sumbernya.
- Manfaatkan Cadangan BigQuery daripada menduplikasi data. Lihat Skenario pemulihan dari bencana (disaster recovery) untuk data.
Mengoptimalkan tarif
Berikut adalah rekomendasi untuk membantu Anda mengurangi tarif penagihan untuk resource BigQuery:
- Evaluasi cara Anda mengedit data, dan manfaatkan harga penyimpanan jangka panjang yang lebih rendah.
- Tinjau perbedaan antara pricing tarif tetap dan on-demand, lalu pilih opsi yang sesuai dengan kebutuhan Anda.
- Pertimbangkan apakah Anda dapat menggunakan pemuatan batch, bukan streaming insert, untuk alur kerja data Anda. Gunakan streaming insert jika data yang dimuat ke BigQuery langsung dipakai.
- Untuk meningkatkan performa dan mengurangi biaya pengambilan data, gunakan hasil kueri yang disimpan dalam cache.
Bacaan tambahan
- Mengontrol biaya BigQuery
- Praktik terbaik pengoptimalan biaya untuk BigQuery
- Memahami prinsip pengoptimalan biaya (PDF)
Dataflow
Dataflow adalah layanan serverless yang cepat dan hemat biaya untuk pemrosesan data batch dan streaming terpadu.
Memantau penggunaan
Berikut adalah rekomendasi untuk membantu Anda melacak penggunaan resource Dataflow:
- Prediksi biaya tugas Dataflow dengan menjalankan eksperimen beban kecil, menemukan performa optimal tugas Anda, dan memperkirakan faktor throughput.
- Dapatkan peningkatan visibilitas ke throughput dan penggunaan CPU dengan menggunakan dasbor kemampuan observasi.
- Amati metrik pipeline terkait performa, eksekusi, dan kondisi kesehatan menggunakan Antarmuka pemantauan Dataflow.
Mengoptimalkan sumber daya
Berikut adalah rekomendasi untuk membantu Anda mengoptimalkan resource Dataflow:
- Pertimbangkan Dataflow Prime untuk memproses big data secara efisien.
- Kurangi biaya batch processing menggunakan Flexible Resource Scheduling (FlexRS), untuk pipeline batch yang diskalakan secara otomatis. FlexRS menggunakan penjadwalan lanjutan, Dataflow Shuffle, serta kombinasi VM preemptible dan VM reguler untuk mengurangi biaya pipeline batch.
- Tingkatkan performa dengan menggunakan layanan shuffle dalam memori daripada Persistent Disk dan worker node.
- Agar penskalaan otomatis lebih responsif, dan untuk mengurangi konsumsi resource, gunakan Streaming Engine, yang memindahkan eksekusi pipeline dari worker VM ke backend layanan Dataflow.
- Jika pipeline tidak memerlukan akses ke dan dari internet serta jaringan Google Cloud lainnya, nonaktifkan alamat IP publik. Menonaktifkan akses internet membantu Anda mengurangi biaya jaringan dan meningkatkan keamanan pipeline.
- Ikuti praktik terbaik untuk pipeline yang efisien dengan Dataflow.
Dataproc
Dataproc adalah layanan Apache Spark dan Apache Hadoop terkelola untuk batch processing, pembuatan kueri, streaming, dan machine learning.
Berikut adalah rekomendasi untuk membantu Anda mengoptimalkan biaya resource Dataproc:
- Pilih jenis mesin yang sesuai dengan workload Anda.
- Skalakan secara otomatis agar sesuai dengan permintaan menggunakan cluster penskalaan otomatis, dan hanya bayar resource yang Anda butuhkan.
- Jika sebuah cluster dapat dihapus setelah tugas selesai, pertimbangkan untuk menyediakan cluster sementara menggunakan template alur kerja cluster terkelola.
- Untuk menghindari biaya bagi cluster yang tidak aktif, gunakan penghapusan terjadwal, yang memungkinkan Anda menghapus cluster setelah periode nonaktif tertentu, pada waktu tertentu, atau setelah periode tertentu
- Ikuti praktik terbaik untuk membangun cluster yang berjalan lama di Dataproc.
- Beli diskon abonemen untuk workload yang selalu aktif.
Langkah selanjutnya
- Mengoptimalkan biaya untuk layanan komputasi, penyimpanan, jaringan, dan operasi:
- Jelajahi kategori lain dari Framework Arsitektur Google Cloud