Los servicios de datos de Google Cloud que se describen en esta página son aquellos que almacenan y proporcionan datos como respuesta a una solicitud. Los SLIs de estos servicios son similares a los de los servicios de solicitudes y respuestas, que se describen en la sección Servicios de solicitudes y respuestas, y se centran principalmente en la disponibilidad y la latencia. Ten en cuenta que la latencia, sobre todo cuando se mide el tiempo de respuesta de las consultas de bases de datos, suele depender de la cantidad de datos que se recuperan y puede variar en función de la carga de trabajo de la aplicación.
Para expresar un SLI de disponibilidad basado en solicitudes, usa la estructura TimeSeriesRatio
para configurar una proporción de solicitudes "buenas" con respecto al total de solicitudes. Usted decide cómo filtrar la métrica usando las etiquetas disponibles para determinar si el valor es "bueno" o "válido".
Para expresar un SLI de latencia basado en solicitudes, se usa una estructura DistributionCut
.
Cloud Storage
Cloud Storage es el servicio de almacenamiento de objetos de alta durabilidad de Google Clouda nivel mundial. Cloud Storage está disponible en varias clases de almacenamiento, que te permiten determinar el coste y el modelo de recuperación adecuados para tu servicio o caso práctico.
Para obtener más información, consulta lo siguiente:
- Documentación de Cloud Storage.
- Lista de
storage.googleapis.com
tipos de métricas.
Indicadores de nivel de servicio de disponibilidad
Cloud Storage escribe datos de métricas en Cloud Monitoring mediante el tipo de recurso monitorizado gcs_bucket
y el tipo de métrica api/request_count
. Puede filtrar los datos con la etiqueta de métrica response_code
para contar las solicitudes "buenas". También puedes usar la etiqueta de métrica method
para medir la disponibilidad de un método de API específico, como ReadObject
.
Para expresar un indicador de nivel de servicio de disponibilidad basado en solicitudes para leer objetos de un segmento de Cloud Storage, se usa una proporción, TimeSeriesRatio
, de solicitudes correctas con respecto al total de solicitudes, como se muestra en el siguiente ejemplo:
"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\"",
}
}
}
Indicadores de nivel de servicio de latencia
Cloud Storage no proporciona una métrica de latencia. Si la latencia es un problema, considera la posibilidad de instrumentar tu servicio para recogerla en el cliente.
Bigtable
Bigtable es un servicio de base de datos NoSQL totalmente gestionado y escalable para grandes cargas de trabajo analíticas y operativas. Bigtable es idóneo para almacenar grandes cantidades de datos en un almacén de pares clave-valor. Bigtable también ofrece un alto rendimiento de lectura y escritura con una latencia baja para que puedas acceder rápidamente a grandes cantidades de datos.
Para obtener más información, consulta lo siguiente:
- Documentación de Bigtable.
- Lista de
bigtable.googleapis.com
tipos de métricas.
Indicadores de nivel de servicio de disponibilidad
Bigtable escribe datos de métricas en Cloud Monitoring mediante el tipo de recurso monitorizado bigtable_table
y los siguientes tipos de métricas:
-
server/request_count
, que cuenta el número total de solicitudes. -
server/error_count
, que cuenta el número total de solicitudes fallidas.
Para expresar un indicador de nivel de servicio de disponibilidad basado en solicitudes para leer objetos de un segmento de Cloud Storage, utiliza una proporción, TimeSeriesRatio
, de solicitudes "incorrectas" con respecto al total de solicitudes, tal como se muestra en el siguiente ejemplo:
Puede usar estas dos métricas para expresar un SLI de disponibilidad basado en solicitudes
creando una estructura TimeSeriesRatio
para las solicitudes fallidas
en relación con el total de solicitudes, como se muestra en el siguiente ejemplo:
"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\"",
}
}
}
Indicadores de nivel de servicio de latencia
Para medir la latencia, Bigtable escribe datos de métricas en Cloud Monitoring mediante el tipo de recurso monitorizado bigtable_table
y el tipo de métrica server/latencies
. Puede filtrar los datos mediante la etiqueta de métrica method
para medir las latencias de métodos específicos.
Para expresar un SLI de latencia basado en solicitudes, se usa una estructura DistributionCut
.
El siguiente ejemplo de SLO espera que el 99% de todas las solicitudes de la tabla my_table
del clúster my_cluster
tengan una latencia total de entre 0 y 100 ms en un periodo de una hora:
{
"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 es un servicio de base de datos relacional totalmente gestionado que ofrece coherencia transaccional a escala mundial, esquemas, SQL (ANSI 2011 con extensiones) y replicación automática y síncrona para ofrecer alta disponibilidad.
Para obtener más información, consulta lo siguiente:
- Documentación de Spanner.
- Lista de
spanner.googleapis.com
tipos de métricas.
Indicadores de nivel de servicio de disponibilidad
Spanner escribe datos de métricas en Cloud Monitoring mediante el tipo de recurso monitorizado spanner_instance
y el tipo de métrica query_count
. Puede filtrar los datos mediante la etiqueta de métrica status
para contar las consultas de base de datos correctas y fallidas.
Para expresar un SLI de disponibilidad basado en solicitudes, crea una estructura TimeSeriesRatio
para las solicitudes "buenas" con respecto al total de solicitudes, como se muestra en el siguiente ejemplo:
"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\"",
}
}
}
Indicadores de nivel de servicio de latencia
Para medir la latencia, Spanner escribe datos de métricas en Cloud Monitoring mediante el tipo de recurso monitorizado spanner_instance
y el tipo de métrica api/request_latencies
. Puede filtrar los datos mediante la etiqueta de métrica method
para medir las latencias de métodos específicos. Los datos incluyen latencias no solo de las consultas, sino también de otras llamadas a la API de Spanner.
Para expresar un SLI de latencia basado en solicitudes, se usa una estructura DistributionCut
.
El siguiente ejemplo de SLO espera que el 99% de todas las solicitudes a la API de la my_database
base de datos tengan una latencia total de entre 0 y 100 ms en un periodo de una hora:
{
"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 es una base de datos NoSQL muy escalable que puedes usar con tus aplicaciones. Datastore se encarga automáticamente de la fragmentación y de la replicación: así dispones de una base de datos duradera y de alta disponibilidad que se escala de forma automática para gestionar la carga de tus aplicaciones.
Para obtener más información, consulta lo siguiente:
- Documentación de Datastore.
- Lista de
datastore.googleapis.com
tipos de métricas.
Indicadores de nivel de servicio de disponibilidad
Datastore escribe datos de métricas en Cloud Monitoring mediante el tipo de recurso monitorizado datastore_request
y el tipo de métrica api/request_count
. Puede filtrar los datos mediante la etiqueta de métrica response_code
para contar las llamadas a la API correctas y las fallidas, o bien mediante la etiqueta de métrica api_method
para medir, por ejemplo, solo las lecturas de documentos.
Para expresar un indicador de nivel de servicio de disponibilidad basado en solicitudes, crea una estructura TimeSeriesRatio
para las solicitudes correctas con respecto al total de solicitudes, como se muestra en el siguiente ejemplo:
"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\"",
}
}
}
Indicadores de nivel de servicio de latencia
Actualmente, Datastore no proporciona una métrica de latencia.
Para ver las métricas disponibles, consulte los tipos de métricas de datastore.googleapis.com
.