RE: numero de registros de consulta

From: Edwin Quijada <listas_quijada(at)hotmail(dot)com>
To: <cgrajales(at)colombiasoftware(dot)net>, <venegasp_armando(at)hotmail(dot)com>
Cc: <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: RE: numero de registros de consulta
Date: 2012-03-28 15:32:21
Message-ID: BAY155-W286EAF54ED67C401D7862BE34B0@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda


Wao!!
Ese podria ser un buen caso de exito. ! Puedes indicar de que tipo es la empresa , nada que sea confidencial solo a grandes rasgos, este seria un ejemplo excelente de lo que puede PostgreSQL.
Se podria ?

Date: Tue, 27 Mar 2012 14:51:22 -0500
Subject: Re: [pgsql-es-ayuda] numero de registros de consulta
From: cgrajales(at)colombiasoftware(dot)net
To: venegasp_armando(at)hotmail(dot)com
CC: pgsql-es-ayuda(at)postgresql(dot)org

Hola a todos.
Gracias por sus respuestas.
La verdad la que me sirve es la opcion que brinda Armando.
Mi aplicacion tiene al rededor de 5000 usuarios (al momento) los cuales tengo clasificados de acuerdo a un rol dentro de la aplicacion.

Tengo una base de datos que crece a razon de unos 50000 registros por dia en diferentes tablas.
Mis usuario generan informes cuyos resultados pueden traer incluso mas de 1 millon de registros
Para un usuario normal no es necesario tanta informacion pues no la va a poder procesar. Pero hay ciertos usuarios a los que si les interesa dicha informacion.

Por tal motivo el explain me da un estimado de cuantos registros trae una consulta antes de ejecutarla y si supera un umbral (50000 registros ) para un usuario normal, simplemenete no la ejecuto y asi me ahorro trafico y esfuerzo innecesario en la bd.

Claro esta que esto debe ir de la mano con que las estadisticas de las tablas esten actualizadas.

Por su interes mil gracias.

El 27 de marzo de 2012 13:39, Armando Venegas Pérez <venegasp_armando(at)hotmail(dot)com> escribió:

Hola Carlos

La manera en que yo lo resolví, fue usando EXPLAIN antes de la consulta. Este te regresa algunos valores y entre ellos cuantos registros retornará.

Ejemplifico:

Ejecuto:
EXPLAIN select * from registro.convocatoria;

Retorna:
"Seq Scan on convocatoria (cost=0.00..18875.86 rows=502386 width=182)"

De aquí solo tomo con programación "rows=502386".

Tú puedes agregarle mas comandos (SUBSTR, SPLIT) para que PostgreSQL solo te regrese la cantidad solamente.

Ya depende de tu ingenio y tiempo que le quieras dedicar.

Saludos.

NOTA: la consulta la realice en la versión: 8.4.

> Date: Tue, 27 Mar 2012 13:34:04 -0400

> From: npolanco(at)cuij(dot)edu(dot)cu
> To: jaime(at)2ndquadrant(dot)com
> CC: pgsql-es-ayuda(at)postgresql(dot)org; cgrajales(at)colombiasoftware(dot)net

> Subject: Re: [pgsql-es-ayuda] numero de registros de consulta
>
> Creo que con el uso de ventanas poedes solucionar eso.
>
> ----- Mensaje original -----
> De: "Jaime Casanova" <jaime(at)2ndquadrant(dot)com>

> Para: "Carlos Edward Grajales" <cgrajales(at)colombiasoftware(dot)net>
> CC: "pgsql-es-ayuda(at)postgresql(dot)org\"" <pgsql-es-ayuda(at)postgresql(dot)org>

> Enviados: Domingo, 25 de Marzo 2012 0:30:14
> Asunto: Re: [pgsql-es-ayuda] numero de registros de consulta
>
> 2012/3/24 Carlos Edward Grajales <cgrajales(at)colombiasoftware(dot)net>:

> > Buenos dias....
> > Tengo la siguiente pregunta. ¿ Es posible determinar el numero de registros
> > (o al menos tener un valor aproximado) que devolvera una consulta antes de
> > ejecutarla?

> >
> > La idea es que debo restringir la ejecucion de ciertas consultas que superen
> > un umbral (por ejemplo 100000 registros) a un grupo determinado de usuarios.
> >
>
> LIMIT 100000 ?

>
> --
> Jaime Casanova www.2ndQuadrant.com
> Professional PostgreSQL: Soporte 24x7 y capacitación
> -
> Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)

> Para cambiar tu suscripción:
> http://www.postgresql.org/mailpref/pgsql-es-ayuda
> -
> Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)

> Para cambiar tu suscripci�n:
> http://www.postgresql.org/mailpref/pgsql-es-ayuda

--
___________________________________________________

Cordialmente,

Carlos Edward Grajales
Colombia Software Ltda.
Calle 18 N No. 3N-24 Ofc.902
Cali - Colombia

www.colombiasoftware.net
Cel. 313 765 0594
Tel: (2) 489 79 40

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alejandro Carrillo 2012-03-28 16:03:45 Re: numero de registros de consulta
Previous Message Alvaro Herrera 2012-03-28 13:32:25 Re: Fractal tree indexes para PostgreSQL