what postgres postgre guide example commands postgresql indexing

postgresql - guide - ¿Cómo determinar qué tipo de índice usar en Postgres?



using psql command line (2)

Postgres admite tipos de indexación B-tree, R-tree, Hash, GiST y GIN. La indexación de B-tree es la más común y se ajusta a los escenarios más comunes. Esta es la sintaxis:

CREATE INDEX idex_name ON table_name USING btree(column1, column2);

Aquí está la documentación de createindex y aquí hay más información sobre diferentes indextypes de indextypes en postgres.

El tipo de índice que debe usar depende de qué tipo de operaciones desee realizar. Si simplemente desea verificar la igualdad, entonces el índice de hash es el mejor. Para las operaciones más comunes (por ejemplo, comparación, coincidencia de patrones) se debe usar B-tree. Personalmente, nunca he usado indexación GiST o GIN. CUALQUIER gurú por ahí?

La documentación describe todos estos tipos. Ellos pueden ayudarte mejor que yo :)

Espero que esto ayude.

Tengo una base de datos de Postgres que tiene 2 columnas que no son claves principales (ni pueden serlo), pero se buscan en un lote y se comparan para la igualdad con 2 columnas en otras tablas.

Creo que este es un caso perfecto para agregar un índice a mis tablas. Nunca he utilizado indexación en una base de datos antes, así que estoy tratando de aprender la forma correcta de hacerlo.

Aprendí que hay múltiples tipos de indexación que puedo elegir. ¿Cómo determino qué método será el más eficiente para mi base de datos? ¿También sería el método adecuado crear un índice único que cubra ambas columnas?


Trate de entender el queryplanner también, porque esta parte de PostgreSQL tiene que trabajar con sus índices. EXPLAIN ANALYZE será esencial para optimizar sus consultas.