Descripción de las estadísticas

Completado

Cuando se ejecuta una consulta, debe crear un plan para decidir cómo acceder a los datos. Por ejemplo, si una consulta SELECT devuelve todas las filas, no hay ninguna ventaja para usar un índice y sería más eficaz examinar toda la tabla. En este escenario, es sencillo planear la consulta, pero la mayoría de los planes de consulta no son tan fáciles de resolver.

Imagine un escenario en el que se ejecuta una consulta que busca cada pedido entre 10,00 USD y 20,00 USD. Inicialmente, no sabemos si la consulta devuelve todos los datos de la tabla o solo un subconjunto pequeño. Esto desconocido dificulta el planeamiento de la estrategia de consulta hasta que veamos los datos. Si sabemos que la tabla contiene pedidos que tienen un precio de compra entre 1,00 USD y 800,00 USD, se podría usar un índice para buscar un pequeño subconjunto de los datos. Sin embargo, es posible que todavía no haya suficiente información para generar el plan de consulta adecuado. En este ejemplo, aunque los pedidos tienen un precio de compra de entre 1,00 USD y 800,00 USD, el 95 % de los pedidos se encuentran entre 10,00 USD y 20,00 USD, y un examen de los datos es realmente el plan más eficaz.

Con escenarios como el ejemplo anterior, PostgreSQL necesita estadísticas detalladas para poder usar el plan de consulta óptimo.

Para supervisar las estadísticas de planeación y ejecución, hay una extensión de PostgreSQL denominada pg_stat_statements. pg_stat_statements está habilitado de forma predeterminada en Azure Database for PostgreSQL y permite a los miembros del rol de pg_read_all_stats consultar estadísticas mediante varias vistas de pg_stat . La consulta siguiente devuelve la actividad de consulta mediante la vista pg_stat_activity :

SELECT * FROM pg_stat_activity;

Captura de pantalla de la consulta de pg_stat_activity.

Desactivación de pg_stat_statements

Si las consultas son únicas y no repite la misma consulta periódicamente, los datos de consulta históricos son menos útiles. Además, si no usa las vistas de pg_stat, no proporcionan ninguna ventaja. Hay una sobrecarga para mantener pg_stat_statements, que puede ser de hasta un 50 %, y puede desactivar el seguimiento de pg_stat_statements en estos escenarios.

Para desactivar el seguimiento de pg_stat_statements, realice los pasos siguientes:

  1. Vaya a Azure Portal y seleccione el servidor de Azure Database for PostgreSQL.

  2. Seleccione Parámetros del servidor y vaya a la configuración pg_stat_statements.track .

    Captura de pantalla del comando pg_statements.

  3. Si desea desactivar el seguimiento, seleccione NONE.

  4. Para obtener un seguimiento más exacto, seleccione ALL.

  5. La configuración predeterminada es TOP.

  6. Seleccione Guardar.