Layanan data Google Cloud yang dibahas di halaman ini mencakup layanan yang menyimpan dan menyediakan data sebagai respons terhadap permintaan. SLI untuk layanan ini mirip dengan SLI untuk layanan permintaan-respons, yang dijelaskan dalam Layanan permintaan-respons, dengan fokus utama pada ketersediaan dan latensi. Perhatikan bahwa latensi, terutama saat mengukur waktu respons kueri database, sering kali menjadi faktor dari jumlah data yang diambil, dan dapat bervariasi dengan beban kerja aplikasi.
Anda menyatakan SLI ketersediaan berbasis permintaan menggunakan
struktur TimeSeriesRatio
untuk menyiapkan
rasio permintaan "baik" terhadap total
permintaan. Anda memutuskan cara memfilter metrik menggunakan label yang tersedia
untuk mendapatkan penentuan "baik" atau "valid" yang Anda inginkan.
Anda mengekspresikan SLI latensi berbasis permintaan menggunakan
struktur DistributionCut
.
Cloud Storage
Cloud Storage adalah penyimpanan objek Google Cloud yang sangat tahan lama dan tersedia di seluruh dunia. Cloud Storage tersedia dalam beberapa class penyimpanan, yang memungkinkan Anda menentukan biaya dan model pengambilan yang sesuai untuk layanan atau kasus penggunaan Anda.
Untuk informasi tambahan, lihat referensi berikut:
- Dokumentasi untuk Cloud Storage.
- Daftar jenis metrik
storage.googleapis.com
.
SLI Ketersediaan
Cloud Storage menulis data metrik ke Cloud Monitoring menggunakan jenis resource yang dimonitor gcs_bucket
dan jenis metrik api/request_count
. Anda dapat memfilter data menggunakan label metrik response_code
untuk menghitung permintaan "baik". Anda juga dapat menggunakan label metrik method
untuk mengukur ketersediaan metode API tertentu, seperti ReadObject
.
Anda menyatakan SLI ketersediaan berbasis permintaan untuk membaca objek dari
bucket Cloud Storage menggunakan rasio,
TimeSeriesRatio
, permintaan yang baik terhadap total
permintaan, seperti yang ditunjukkan dalam contoh berikut:
"serviceLevelIndicator": {
"requestBased": {
"goodTotalRatio": {
"totalServiceFilter":
"metric.type=\"storage.googleapis.com/api/request_count\"
resource.type=\"gcs_bucket\"
metric.label.\"method\"=\"ReadObject\"
resource.label.\"bucket_name\"=\"my_bucket\"",
"goodServiceFilter":
"metric.type=\"storage.googleapis.com/api/request_count\"
resource.type=\"gcs_bucket\"
metric.label.\"method\"=\"ReadObject\"
resource.label.\"bucket_name\"=\"my_bucket\"
metric.label.\"response_code\"=\"OK\"",
}
}
}
SLI berdasarkan Latensi
Cloud Storage tidak menyediakan metrik latensi; jika latensi menjadi masalah, pertimbangkan untuk melengkapi layanan Anda dengan instrumen untuk mengumpulkannya di klien.
Bigtable
Bigtable adalah layanan database NoSQL yang skalabel dan terkelola sepenuhnya untuk workload analisis dan operasional yang besar. Bigtable ideal untuk menyimpan data dalam jumlah sangat besar di penyimpanan nilai kunci. Bigtable juga mendukung throughput operasi baca dan tulis yang tinggi dengan latensi rendah, sehingga menawarkan akses cepat ke data dalam jumlah besar.
Untuk informasi tambahan, lihat referensi berikut:
- Dokumentasi untuk Bigtable.
- Daftar jenis metrik
bigtable.googleapis.com
.
SLI Ketersediaan
Bigtable menulis data metrik ke Cloud Monitoring menggunakan jenis resource yang dimonitor bigtable_table
dan jenis metrik berikut:
-
server/request_count
, yang menghitung jumlah total permintaan. -
server/error_count
, yang menghitung jumlah total permintaan yang gagal.
Anda menyatakan SLI ketersediaan berbasis permintaan untuk membaca objek dari
bucket Cloud Storage menggunakan rasio,
TimeSeriesRatio
, permintaan "buruk" terhadap total
permintaan, seperti yang ditunjukkan dalam contoh berikut:
Anda dapat menggunakan kedua metrik ini untuk menyatakan SLI ketersediaan berbasis permintaan
dengan membuat
struktur TimeSeriesRatio
untuk permintaan yang gagal
terhadap total permintaan, seperti yang ditunjukkan dalam contoh berikut:
"serviceLevelIndicator": {
"requestBased": {
"goodTotalRatio": {
"totalServiceFilter":
"metric.type=\"bigtable.googleapis.com/server/request_count\"
resource.type=\"bigtable_table\"
resource.label.\"table\"=\"my_table\"
resource.label.\"cluster\"=\"my_cluster\"",
"badServiceFilter":
"metric.type=\"bigtable.googleapis.com/server/error_count\"
resource.type=\"bigtable_table\"
resource.label.\"table\"=\"my_table\"
resource.label.\"cluster\"=\"my_cluster\"",
}
}
}
SLI berdasarkan Latensi
Untuk mengukur latensi, Bigtable menulis data metrik ke Cloud Monitoring menggunakan jenis resource yang dimonitor bigtable_table
dan jenis metrik server/latencies
. Anda dapat memfilter data menggunakan label metrik method
untuk mengukur latensi metode tertentu.
Anda mengekspresikan SLI latensi berbasis permintaan menggunakan
struktur DistributionCut
.
Contoh SLO berikut mengharapkan 99% dari semua permintaan ke tabel my_table
dalam cluster my_cluster
memiliki total latensi antara 0 dan 100 md selama
periode satu jam bergulir:
{
"serviceLevelIndicator": {
"requestBased": {
"distributionCut": {
"distributionFilter":
"metric.type=\"bigtable.googleapis.com/server/latencies\"
resource.type=\"bigtable_table\"
resource.label.\"table\"=\"my_table\"
resource.label.\"cluster\"=\"my_cluster\"",
"range": {
"min": 0,
"max": 100
}
}
}
},
"goal": 0.99,
"rollingPeriod": "3600s",
"displayName": "98% requests under 100 ms"
}
Spanner
Spanner adalah layanan database relasional terkelola sepenuhnya yang menawarkan konsistensi transaksional pada skala global, skema, SQL (ANSI 2011 dengan ekstensi), dan replikasi sinkron otomatis untuk ketersediaan tinggi.
Untuk informasi tambahan, lihat referensi berikut:
- Dokumentasi untuk Spanner.
- Daftar jenis metrik
spanner.googleapis.com
.
SLI Ketersediaan
Spanner menulis data metrik ke Cloud Monitoring menggunakan jenis resource yang dimonitor spanner_instance
dan jenis metrik query_count
. Anda dapat memfilter data menggunakan label metrik status
untuk menghitung kueri database yang berhasil dan gagal.
Anda menyatakan SLI ketersediaan berbasis permintaan dengan membuat
struktur TimeSeriesRatio
untuk
permintaan "baik" terhadap total permintaan, seperti yang ditunjukkan dalam contoh berikut:
"serviceLevelIndicator": {
"requestBased": {
"goodTotalRatio": {
"totalServiceFilter":
"metric.type=\"spanner.googleapis.com/query_count\"
resource.type=\"spanner_instance\"
metric.label.\"database\"=\"my_database\"",
"goodServiceFilter":
"metric.type=\"spanner.googleapis.com/query_count\"
resource.type=\"spanner_instance\"
metric.label.\"database\"=\"my_database\"
metric.label.\"status\"=\"ok\"",
}
}
}
SLI berdasarkan Latensi
Untuk mengukur latensi, Spanner menulis data metrik ke Cloud Monitoring menggunakan jenis resource yang dimonitor spanner_instance
dan jenis metrik api/request_latencies
. Anda dapat memfilter data menggunakan label metrik method
untuk mengukur latensi metode tertentu. Data ini mencakup latensi tidak hanya untuk kueri, tetapi juga untuk panggilan Spanner API lainnya.
Anda mengekspresikan SLI latensi berbasis permintaan menggunakan
struktur DistributionCut
.
Contoh SLO berikut memperkirakan bahwa 99% dari semua permintaan API ke database my_database
memiliki total latensi antara 0 dan 100 md selama periode satu jam yang bergulir:
{
"serviceLevelIndicator": {
"requestBased": {
"distributionCut": {
"distributionFilter":
"metric.type=\"spanner.googleapis.com/api/request_latencies\"
resource.type=\"spanner_instance\"
metric.label.\"database\"=\"my_database\"",
"range": {
"min": 0,
"max": 100
}
}
}
},
"goal": 0.99,
"rollingPeriod": "3600s",
"displayName": "98% requests under 100 ms"
}
Datastore
Datastore adalah database NoSQL yang sangat skalabel untuk aplikasi Anda. Datastore secara otomatis menangani sharding dan replikasi, sehingga Anda memiliki database yang sangat tersedia dan andal yang diskalakan secara otomatis untuk menangani beban aplikasi Anda.
Untuk informasi tambahan, lihat referensi berikut:
- Dokumentasi untuk Datastore.
- Daftar jenis metrik
datastore.googleapis.com
.
SLI Ketersediaan
Datastore menulis data metrik ke Cloud Monitoring menggunakan jenis resource yang dimonitor datastore_request
dan jenis metrik api/request_count
. Anda dapat memfilter data menggunakan label metrik response_code
untuk menghitung panggilan API yang berhasil dan gagal, atau menggunakan label metrik api_method
untuk, misalnya, hanya mengukur pembacaan dokumen.
Anda menyatakan SLI ketersediaan berbasis permintaan dengan membuat
struktur TimeSeriesRatio
untuk
permintaan yang berhasil terhadap total permintaan, seperti yang ditunjukkan dalam contoh berikut:
"serviceLevelIndicator": {
"requestBased": {
"goodTotalRatio": {
"totalServiceFilter":
"metric.type=\"datastore.googleapis.com/api/request_count\"
resource.type=\"datastore_request\"",
"goodServiceFilter":
"metric.type=\"datastore.googleapis.com/api/request_count\"
resource.type=\"datastore_request\"
metric.label.\"response_code\"=\"success\"",
}
}
}
SLI berdasarkan Latensi
Datastore saat ini tidak menyediakan metrik latensi.
Untuk metrik yang tersedia, lihat jenis metrik datastore.googleapis.com
.