It permits defining a rule to distribute data of an arbitrary type across a balanced tree and a method to use this representation for access by some operator.
GiST index method comes to our aid for these data types. What is the difference? «btree» index is strictly connected to the comparison semantics: support of «greater», «less», and «equal» operators is all it is capable of (but very capable!) However, modern databases store data types for which these operators just make no sense: geodata, text documents, images,… This is a balanced search tree, just like «b-tree» discussed earlier. GiST is an abbreviation of «generalized search tree». In this article, we will describe GiST indexes. In the previous articles, we discussed PostgreSQL indexing engine, the interface of access methods, and two access methods: hash index and B-tree.