Explain Plans PostgreSQL 9.0 Text, JSON, XML, YAML - Part 1: You Choose
One of the new features of PostgreSQL 9.0 is the ability to specify the format of an explain plan. In prior versions your only choice was text (and graphic explain with tools like PgAdmin III and...
View ArticleImproving speed of GIST indexes in PostgreSQL 9.2
This is about improvements to GIST indexes that I hope to see in PostgreSQL 9.2. One is a patch for possible inclusion in PostgreSQL 9.2 called SP-GiST, Space-Partitioned GiST created by Teodor Sigaev...
View ArticleMail Merging using Hstore
For those who aren't familiar with hstore, it's a key/value storage type that is packaged as an extension or contrib in PostgreSQL 8.2+. In PostgreSQL 9.0 it got a little extra loving in several ways...
View ArticlePostgreSQL 9.2: Preserving column names of subqueries
There is another new feature in 9.2 that doesn't get much press, and probably because it's hard to explain. It is a pretty useful feature if you are working with the new json type or the existing...
View ArticleForeign Data Wrap (FDW) Text Array, hstore, and Jagged Arrays
As we discussed in file_textarray_fdw Foreign Data Wrapper, Andrew Dunstan's text array foreign data wrapper works great for bringing in a delimited file and not having to worry about the column names...
View ArticleSchemas vs. Schemaless structures and The PostgreSQL Type Farm
There has been a lot of talk lately about schemaless models touted by NoSQL groups and how PostgreSQL fits into this New world order. Is PostgreSQL Object-Relational? Is it Multi-Model. We tend to...
View ArticleUnpivoting data in PostgreSQL
A while ago we demonstrated how to create cross tabulation tables using tablefunc extension aka (Pivot Tables) (basically collapsing rows into columns). Recently someone asked me how to do the reverse...
View ArticlePostgreSQL 9.3 Lateral Part 1: Use with HStore
One of the improvements coming in PostgreSQL 9.3 is the new LATERAL SQL clause. LATERAL allows you to write more succinct code than you would be able to otherwise and will be a welcome companion to...
View ArticleUsing HStore for Archiving
I'm not a big proponent of schemaless designs, but they have their place. One particular place where I think they are useful is for archiving of data where even though the underlying table structure of...
View Article