title: What's the difference between B-Tree and GiST index methods (in PostgreSQL)?
body: <p>I have been working on optimizing my Postgres databases recently, and traditionally, I've only ever use B-Tree indexes.  However, I saw that GiST indexes suport non-unique, multicolumn indexes, in the Postgres 8.3 documentation.</p>
  
  <p>I couldn't, however, see what the actual difference between them is.  I was hoping that my fellow coders might beable to explain, what the pros and cons between them are, and more importantly, the reasons why I would use one over the other?</p>