PostgreSQL includes several index types: GiST, SP-GiST, GIN, and of course, the regular B-tree. DBAs are familiar with using each of these for specific use cases, GIN for full-text search, GiST for geometrical data, and so on, but how do they work internally? What makes them suitable for the cases they're typically used for? In this presentation, I will walk through the internal structure of each
![PGCon2016: Index Internals](https://cdn-ak-scissors.b.st-hatena.com/image/square/474db49ef2ee1850745932804e7846de5d39ccb8/height=288;version=1;width=512/https%3A%2F%2Fwww.pgcon.org%2F2016%2Fschedule%2Fimages%2Fevent-934-128x128.png)