Cómo obtener estadísticas de consulta
En esta página, se explica cómo obtener estadísticas de consultas con la CLI de cbt
. También puedes obtener estadísticas de consultas con la biblioteca cliente de Go para Cloud Bigtable.
El contenido que se proporciona aquí está destinado a desarrolladores de aplicaciones. Antes de leer esta página, debes comprender el modelo de almacenamiento de Bigtable. También debes conocer las prácticas recomendadas para el diseño de esquemas y comprender el rendimiento.
La capacidad de obtener información sobre una consulta de Bigtable puede ser útil cuando desarrollas una aplicación. Te permite obtener datos sobre el rendimiento de una consulta y, luego, ajustarla o cambiar el diseño del esquema para optimizar su rendimiento.
Aunque, en general, una consulta es cualquier solicitud de datos que se envía a una tabla, Bigtable muestra estadísticas de consultas solo para solicitudes de lectura.
Antes de comenzar
- Si aún no instalaste la CLI de
cbt
, sigue las instrucciones de la descripción general de la CLI decbt
, incluidos los pasos para crear un archivo.cbtrc
. - Revisa la sección Lee filas de la referencia de la CLI de
cbt
para familiarizarte con la sintaxis de la línea de comandos y las opciones disponibles para enviar una solicitudcbt read
a tu tabla. Ten en cuenta que la CLI decbt
no admite filtros. - Asegúrate de tener el permiso
bigtable.tables.readRows
para la tabla o de que seas un miembro del rolbigtable.reader
.
Ejecuta tu consulta
Crea una consulta con la sintaxis para leer filas.
Ejecuta el siguiente comando. El parámetro
include-stats=full
le indica a Bigtable que muestre las estadísticas de la consulta.cbt read TABLE_ID QUERY include-stats=full
Reemplaza lo siguiente:
TABLE_ID
: el ID único de la tabla a la que le realizas la consultaQUERY
: Una consulta con formato de CLI decbt
La terminal muestra los datos que se leyeron y una lista que contiene las siguientes estadísticas:
rows_seen_count
: La cantidad de filas que Bigtable procesó para la solicitudrows_returned_count
: Es la cantidad de filas que se muestran después de aplicar los filtros.cells_seen_count
: Es la cantidad de celdas procesadas para la solicitud.cells_returned_count
: Es la cantidad de celdas que se muestran después de aplicar los filtros.frontend_server_latency
: Latencia de la solicitud medida desde el grupo de servidores del frontend de Bigtable, expresada en milisegundos
Interpreta los resultados
Observa la proporción de celdas vistas y de celdas devueltas. Si el cociente de
cells_seen_count
/cells_returned_count
es 1 o está cerca de 1, significa que tu consulta no hizo que Bigtable procesara los datos que, en última instancia, se filtraron.Ten en cuenta la cantidad de filas que se devuelven. Cuanto más alto sea ese número, más trabajo estará realizando Bigtable. La cantidad óptima aquí depende de tu caso de uso y de los requisitos de latencia, pero, en general, una consulta que devuelve menos filas tendrá una latencia más baja.
Ejemplo
Si deseas obtener estadísticas de consultas cuando lees todas las filas que coinciden con la expresión regular orange:*.*
en una tabla llamada my-table
, puedes ejecutar lo siguiente:
cbt read my-table regex='.*orange' columns='.*:.*' include-stats=full
El resultado es similar a este:
----------------------------------------
orange
Details:Color @ 2022/09/26-14:48:01.286000
"orange"
Details:Size @ 2022/09/26-14:48:01.286000
"medium"
Request Stats
====================
rows_seen_count: 10
rows_returned_count : 1
cells_seen_count: 2
cells_returned_count: 2
frontend_server_latency: 13ms
¿Qué sigue?
- Identifica las tablets sobrecargadas de un clúster.
- Revisa las prácticas recomendadas para el diseño de esquemas.