Re: Consejos

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: "Miguel Angel (dot)" <rev_angel(at)hotmail(dot)com>
Cc: lnunez(at)enelserver(dot)com, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Consejos
Date: 2007-01-22 23:38:36
Message-ID: 20070122233836.GW26006@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Miguel Angel . escribió:

> Agregando un indice como:
> CREATE INDEX categoria_categoria_id_categoria ON categoria(id_categoria,
> categoria);
>
> Me ayuda con querys como SELECT * FROM categoria WHERE id_categoria=? AND
> categoria=?, pero lo hace lento cuando solo busco uno de los dos valores.
> Entónces es correcto que yo tenga los 3 indíces para mejorar el
> redimiento, de la siguiente manera, para cubrir todas las posibles
> combinaciones ó existe una mejor forma?

En 8.1 y superior, puedes obviar este ultimo indice y Postgres hara una
mezcla de los dos indices que si tienes, en caso de ser conveniente.
Cuando hagas busquedas por id_categoria, siempre sera mas rapido usar el
indice de una sola columna; cuando busques por categoria, siempre sera
mas rapido usar el indice en (categoria).

La pregunta que me surge es: realmente haces busquedas usando los dos
criterios?

Cuales son las consultas que son lentas? No creo que sean del tipo
select * from categoria where id_categoria = ?
verdad?

> CREATE TABLE categoria ( id_categoria varchar NOT NULL, categoria varchar
> NOT NULL, PRIMARY KEY (id_categoria) ) ;
> CREATE INDEX categoria_categoria ON categoria(categoria);
> CREATE INDEX categoria_categoria_id_categoria ON categoria(id_categoria,
> categoria);
> CREATE UNIQUE INDEX categoria_id_categoria ON categoria(id_categoria);

Me parece a mi que el segundo indice no es util.

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Marco Vinicio Jimenez Rojas 2007-01-22 23:56:19 problema con campos varchar
Previous Message Miguel Angel . 2007-01-22 22:40:14 Re: Consejos