Re: Cual es la unidad de medida para saber si un query es lento?

From: Anthony Sotolongo <asotolongo(at)gmail(dot)com>
To: Héctor Alonso Lozada Echezuría <imatsu(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Cual es la unidad de medida para saber si un query es lento?
Date: 2018-02-21 00:08:37
Message-ID: fb7e17dc-f835-8601-8b7f-8372908dc2d7@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On 20/02/18 19:19, Héctor Alonso Lozada Echezuría wrote:
> Muchas gracias Anthony por tu aclaratoria.
>
> https://pastebin.com/21HCMGbL
>
> Allí está el pastebin del explain de todo el query.
>
> Execution time tanto para la función como para el query es
> relativamente el mismo,
es lo normal si prácticamente solo armas la query y la  ejecutas dentro
de la función
> y si, tengo otras funciones dentro de este query, no se si además eso
> sea una buena práctica, tu que opinas?
llamar a funciones en una query puede ser normal, lo preguntaba pues
puede que dentro de esas funciones pudiera esconderse  un problema de
rendimiento y a veces no lo vemos a simple vista, en tu caso, al
parecer, si no me equivoco,  lo que mas consume en tu query es el
llamado a esas funciones

https://explain.depesz.com/s/WP1P
las funciones :
 user_rooms
 coworkers

consumen 7.070 ms

Saludos
>
> El 13 de febrero de 2018, 16:21, Anthony
> Sotolongo<asotolongo(at)gmail(dot)com <mailto:asotolongo(at)gmail(dot)com>>escribió:
>
> Hola Hector, la unidad de medida para saber si algo es lento es
> alguna unidad de tiempo en este caso segundos , milisegundos, etc,
> ahora para decir si es lento o no eso lo define tu negocio o tus
> usuarios, por ejemplo puede que para un sistema o usuarios 500
> milisegundos sea buen tiempo de respuesta pero para otros no, he
> tenido  clientes que en su negocio mientra este por debajo de 2
> segundos esta bien, pero para otros eso es mucho tiempo, así que
> eso es muy peculiar de cada  uno.
>
>
> Lo que pones de EXPLAIN es de la llamada función, seria más útil
> que pudieras poner el EXPLAIN de la variable query que esta dentro
> de la función, pero para comenzar revisa si te hacen falta 
> índices en las tablas que haces filtro de dentro de ese query y si
> están actualizadas las estadísticas de las tablas en cuestión
>
> una pregunta esto son otras funciones  ? : user_rooms (), coworkers()
>
>
> Saludos
>
> Anthony Sotolongo
>
>
> On 13/02/18 17:30, Héctor Alonso Lozada Echezuría wrote:
>> Saludos
>>
>> He programado una función SQL la cual debe retornar una sola fila
>> con una serie de columnas, algunas de ellas en formato JSONB y
>> con mucha información y no se si es lenta o no.
>>
>> https://pastebin.com/q0PcKzus
>>
>> Allí está el enlace del resultado del EXPLAIN.
>>
>> Y aquí va el query.
>>
>> https://pastebin.com/zeVZz3y6
>>
>> --
>> Héctor Alonso Lozada Echezuría
>
>
>
>
> --
> Héctor Alonso Lozada Echezuría
>
>
> El 13 de febrero de 2018, 16:21, Anthony Sotolongo
> <asotolongo(at)gmail(dot)com <mailto:asotolongo(at)gmail(dot)com>> escribió:
>
> Hola Hector, la unidad de medida para saber si algo es lento es
> alguna unidad de tiempo en este caso  segundos , milisegundos,
> etc, ahora para decir si es lento o no eso lo define tu negocio o
> tus usuarios, por ejemplo puede que para un sistema o usuarios 500
> milisegundos sea buen tiempo de respuesta pero para otros no, he
> tenido  clientes que en su negocio mientra este por debajo de 2
> segundos esta bien, pero para otros eso es mucho tiempo, así que
> eso es muy peculiar de cada  uno.
>
>
> Lo que pones de EXPLAIN es de la llamada función, seria más útil
> que pudieras poner el EXPLAIN de la variable query que esta dentro
> de la función, pero para comenzar revisa si te hacen falta 
> índices en las tablas que haces filtro de dentro de ese query y si
> están actualizadas las estadísticas de las tablas en cuestión
>
> una pregunta esto son otras funciones  ? : user_rooms (), coworkers()
>
>
> Saludos
>
> Anthony Sotolongo
>
>
> On 13/02/18 17:30, Héctor Alonso Lozada Echezuría wrote:
>> Saludos
>>
>> He programado una función SQL la cual debe retornar una sola fila
>> con una serie de columnas, algunas de ellas en formato JSONB y
>> con mucha información y no se si es lenta o no.
>>
>> https://pastebin.com/q0PcKzus
>>
>> Allí está el enlace del resultado del EXPLAIN.
>>
>> Y aquí va el query.
>>
>> https://pastebin.com/zeVZz3y6
>>
>> --
>> Héctor Alonso Lozada Echezuría
>
>
>
>
> --
> Héctor Alonso Lozada Echezuría

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message yeli 2018-02-21 14:25:47 Crear Una trigger usando ROW_NUMBER
Previous Message Héctor Alonso Lozada Echezuría 2018-02-20 22:19:00 Re: Cual es la unidad de medida para saber si un query es lento?