On Sat, Feb 02, 2008 at 01:38:19PM +0100, Thomas Pundt wrote: > Hi, > > vladimir konrad wrote: >> I think that I understand basic relational theory but Clearly, you'll have to revisit that thought. > [example stripped] > > Yes, this is known as eg. Entity-Attribute-Value model (cf. > wikipedia). > > IMO most times its disadvantages (it can be very hard to write > performant queries compared to the traditional row based model) Make that, "impossible." The "flexibility" stems from fear of making a design decision. The second and smaller price is having the system bog down entirely and have to be scrapped, whether it's 3 months down the line, or 3 years. The math beneath this is that query complexity goes up like O(E!A!V!) for Entity, Attribute and Value. The first price, though, and by far the biggest, is that it's impossible to maintain any kind of data integrity in such a system, as such constraints, by their nature, are application-dependent. Two applications means you're violating the SPOT (Single Point of Truth) Rule, and that in turn means your data turns quickly into incomprehensible gibberish. > weigh higher than you gain (in flexibility) in relational databases. > But it sure has its uses cases. Why, yes. I encourage all my competitors to use it. ;) Cheers, David. -- David Fetter <david@xxxxxxxxxx> http://fetter.org/ Phone: +1 415 235 3778 AIM: dfetter666 Yahoo!: dfetter Skype: davidfetter XMPP: david.fetter@xxxxxxxxx Remember to vote! Consider donating to Postgres: http://www.postgresql.org/about/donate ---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend