Edward Stanley wrote:
Was wondering if people would mind having a read over what I plan to do for my undergraduate honours project - you can get the proposal here:


http://www.mcs.vuw.ac.nz/~eddie/489_Proposal.pdf

ISTM that what you're calling "dynamically attached properties" are generally called Entity-Attribute-Value schemas. In my experience, EAV schemas are usually result of improper database design by someone not understanding the relational theory and the principles of normalization. EAV offers a false sense of flexibility: sure, you can store whatever you want in an EAV database, but because the data isn't well structured, building queries becomes extremely complicated. No amount of syntactic sugar is going to fix that, you just need to normalize your data.

What I'd basically like to know is a) Is this problem worth solving? b) Is there already a good solution (particularly, within PostgreSQL)?

You could create a view on top of the normalized schema. There's also a contrib module called "hstore" which might be relevant.

c) Any other feedback or comments you may have.

I don't know how wedded you are to your subject or your ambitions, but let me suggest a few other ideas anyway:

- Temporal extensions. IIRC, two people/groups have recently come up on hackers, planning to do their thesis on that subject. It's a very real problem, so more people working on it wouldn't hurt. See http://www.amazon.co.uk/Temporal-Data-Relational-Model-Investigation/dp/1558608559 for the right way to solve it

- Recursive queries.

- Materialized views.



--
  Heikki Linnakangas
  EnterpriseDB   http://www.enterprisedb.com

---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
      subscribe-nomail command to [EMAIL PROTECTED] so that your
      message can get through to the mailing list cleanly

Reply via email to