Skip to Content.
Sympa Menu

pcdb - [pcdb] Using Hierarchy

pcdb@lists.ibiblio.org

Subject: Permaculture Database

List archive

Chronological Thread  
  • From: Sean Maley <semaley@yahoo.com>
  • To: pcdb <pcdb@lists.ibiblio.org>
  • Subject: [pcdb] Using Hierarchy
  • Date: Tue, 3 Apr 2007 07:49:08 -0700 (PDT)

Hierarchical joins can be the death of even 8000 records. Think about it.
You can't just search for records of a given attribute, you must join the
table to itself an unknown number of times. In the best of cases, one level
of lineage, you have 8000 times 8000 records where you had just 8000 before.
If your answer is an index, then consider your insertion rate being slowed
by, and reduced concurrency of, having to maintain the index (8000 times the
number of index leaf levels, still worse than 8000). If you enforce the
hierarchy (avoid the self join through normalizing into a hierarchy of
tables), you then face snow flaking to get into your 8000 records.

Because our culture leaves us thinking in a hierarchical way, it sometimes
isn't easy to think in terms of relations. This isn't to say a hierarchy
would never happen in database design, but then even a "goto" statement has
it's place. What is the specific justification to demand the use of a
hierarchy?

Remember that hierarchy comes from discriminating knowledge, where we will
often deal with non-discriminating knowledge, as well. The design could
become very complicated, so we shouldn't be adding to our future woes by
organizing it in an overly discriminating manner.


-Sean.




____________________________________________________________________________________
Sucker-punch spam with award-winning protection.
Try the free Yahoo! Mail Beta.
http://advision.webevents.yahoo.com/mailbeta/features_spam.html




Archive powered by MHonArc 2.6.24.

Top of Page