I gather Postgres actually uses a lot of NoSQL-type tricks under the hood.
As an engineer, it is IMPOSSIBLE to design an efficient purely FNF database. The maths is great, the engineering efficiency is awful.
Design an NFNF database properly (non-first-normal-form) and it will blow a relational database out of the water. Basically, I can store a *view* in the equivalent of a table, and guarantee that accessing any attribute of an object will retrieve ALL the associated attributes of that object into RAM as a side effect. Given that disk io is the biggest performance killer, I've just built intelligent read-ahead into the database engine ...
There's a reason Pick databases used to ABSOLUTELY FLY on old hardware. The difference isn't so marked now that many databases seem to fit in RAM ... but if your database is large relative to RAM and has a random working set of data, then a No-SQL database should be able to clobber a relational database for speed, simply due to reduced disk io.
(Absolutely fly == 30 users on a 386, or a Pentium 90 running a query faster than the twin-Xeon-800 intended to replace it, etc etc.)