473,386 Members | 1,757 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

Seeking Hierarchical Relational Data Model

I'm looking for documentation and would not turn my nose up to
any code from anybody who thinks they are good at the design
of an algorythm that can be used to generated a hierarchical relational
data model.

What?

A Yahoo-like drill-down menu that is a series of categories and nested
categories is a hierarchical relational data model. An example can
be seen at [1] but the review of the query string values strongly indicates
a flawed model as the query string values are not logically ordered,
are not grouped, are not sequenced and in short are indicative of a
flawed model.

I'm formally trained in architecture. Where's a computer scientiest
when you need one? :-)

--
<%= Clinton Gallagher
A/E/C Consulting, Web Design, e-Commerce Software Development
Wauwatosa, Milwaukee County, Wisconsin USA
NET csgallagher@ REMOVETHISTEXT metromilwaukee.com
URL http://www.metromilwaukee.com/clintongallagher/

[1] [1] http://demos.deloittes.net/directory...rmDefault.aspx
Nov 16 '05 #1
5 2229
Joe Celko wrote a couple of excellent books on hierarchical database models.
How many levels deep is your hierarchical structure?

Thanks,
Michael C.

"clintonG" <csgallagher@RE************@metromilwaukee.com> wrote in message
news:ui**************@TK2MSFTNGP09.phx.gbl...
I'm looking for documentation and would not turn my nose up to
any code from anybody who thinks they are good at the design
of an algorythm that can be used to generated a hierarchical relational
data model.

What?

A Yahoo-like drill-down menu that is a series of categories and nested
categories is a hierarchical relational data model. An example can
be seen at [1] but the review of the query string values strongly indicates a flawed model as the query string values are not logically ordered,
are not grouped, are not sequenced and in short are indicative of a
flawed model.

I'm formally trained in architecture. Where's a computer scientiest
when you need one? :-)

--
<%= Clinton Gallagher
A/E/C Consulting, Web Design, e-Commerce Software Development
Wauwatosa, Milwaukee County, Wisconsin USA
NET csgallagher@ REMOVETHISTEXT metromilwaukee.com
URL http://www.metromilwaukee.com/clintongallagher/

[1] [1] http://demos.deloittes.net/directory...rmDefault.aspx

Nov 16 '05 #2
Hello!
Joe Celko wrote a couple of excellent books on hierarchical database models. How many levels deep is your hierarchical structure?


I have been following Joe Celkos for some time and have succesfully
implemented the graph model (although in a slighty modified version that
also allows for frequent insertions) all the way from the DB layer to C#
models (that allows for tree traversions including caching etc.).

The model has many advantages to the normal parent/child adjacency list -
even though the adjancency model is quite strong, when it comes to
lazyloading children etc. because you only need to fetch a set of children
for any given parent. With some caching in the middletier, you're looking at
service cached objects (or clones), instead of fresh data from the database.

But while most graph models allows for lazyloading children, some are
stronger in terms of fetching large presorted trees, and frequent
insertions. Usually, most trees have frequent selections and in-frequent
insertions. Unfortunately, with the basic graph (nested sets) model from Mr.
Celko, you end up locking the entire table when inserting new nodes.

Explaining everything here is not going to happen, but I'd suggest you get
his latest book on "Trees and Hierarchies in SQL" and take it from there.
It's quite interesting actually.

--
venlig hilsen / with regards
anders borum
--
Nov 16 '05 #3
Well thank you Michael and Anders alike. Your references to Joe Celko
and his work has me eager to get going..

Answering Michael's question regarding how deeply the model needs to
nest is why I think I needed to be referred to a 'Joe Celko' as the model
I need must enable indeterminate levels.

I want to make it possible for those with deep subject level expertise
to generate and edit their own tree(s) as they and they alone are those that
know the taxonomy and the hierarchical relationships that are pertinent to
their body of knowledge.

Maybe a tough task for me compared to what can be done using an application
such as the "Verity Collaboration Classifier" [1] but that's what I'm interested
in
learning more about and appreciate your comments pointing the way...

--
<%= Clinton Gallagher
A/E/C Consulting, Web Design, e-Commerce Software Development
Wauwatosa, Milwaukee County, Wisconsin USA
NET csgallagher@ REMOVETHISTEXT metromilwaukee.com
URL http://www.metromilwaukee.com/clintongallagher/

[1] http://www.verity.com/products/vcc/index.html


"Anders Borum" <a@b.dk> wrote in message
news:ec**************@tk2msftngp13.phx.gbl...
Hello!
Joe Celko wrote a couple of excellent books on hierarchical database

models.
How many levels deep is your hierarchical structure?


I have been following Joe Celkos for some time and have succesfully
implemented the graph model (although in a slighty modified version that
also allows for frequent insertions) all the way from the DB layer to C#
models (that allows for tree traversions including caching etc.).

The model has many advantages to the normal parent/child adjacency list -
even though the adjancency model is quite strong, when it comes to
lazyloading children etc. because you only need to fetch a set of children
for any given parent. With some caching in the middletier, you're looking at
service cached objects (or clones), instead of fresh data from the database.

But while most graph models allows for lazyloading children, some are
stronger in terms of fetching large presorted trees, and frequent
insertions. Usually, most trees have frequent selections and in-frequent
insertions. Unfortunately, with the basic graph (nested sets) model from Mr.
Celko, you end up locking the entire table when inserting new nodes.

Explaining everything here is not going to happen, but I'd suggest you get
his latest book on "Trees and Hierarchies in SQL" and take it from there.
It's quite interesting actually.

--
venlig hilsen / with regards
anders borum
--

Nov 16 '05 #4
I ran into a similar problem with hierarchical datasets, way back before I
heard about Joe Celko. I beat my head against the wall for about a month
trying to figure it out until I bought his book. He's definitely got the
most in-depth coverage on the topic I've seen. Most authors that touch on
it will dedicate maybe 3 or 4 pages, and barely scratch the surface. He
dedicates whole books to it. I think he also posts to microsoft.public.sql
or another sql newsgroup on occasion.

Also, even though there may not be a logical limit to the depth of your
model, you will run up against physical limitations - performance, storage,
administration cost, etc., at some point. Whatever model you choose, make
sure you take all that good stuff into account.

Good luck,
Michael C.

"clintonG" <csgallagher@RE************@metromilwaukee.com> wrote in message
news:eK****************@TK2MSFTNGP12.phx.gbl...
Well thank you Michael and Anders alike. Your references to Joe Celko
and his work has me eager to get going..

Answering Michael's question regarding how deeply the model needs to
nest is why I think I needed to be referred to a 'Joe Celko' as the model
I need must enable indeterminate levels.

I want to make it possible for those with deep subject level expertise
to generate and edit their own tree(s) as they and they alone are those that know the taxonomy and the hierarchical relationships that are pertinent to
their body of knowledge.

Maybe a tough task for me compared to what can be done using an application such as the "Verity Collaboration Classifier" [1] but that's what I'm interested in
learning more about and appreciate your comments pointing the way...

--
<%= Clinton Gallagher
A/E/C Consulting, Web Design, e-Commerce Software Development
Wauwatosa, Milwaukee County, Wisconsin USA
NET csgallagher@ REMOVETHISTEXT metromilwaukee.com
URL http://www.metromilwaukee.com/clintongallagher/

[1] http://www.verity.com/products/vcc/index.html


"Anders Borum" <a@b.dk> wrote in message
news:ec**************@tk2msftngp13.phx.gbl...
Hello!
Joe Celko wrote a couple of excellent books on hierarchical database

models.
How many levels deep is your hierarchical structure?


I have been following Joe Celkos for some time and have succesfully
implemented the graph model (although in a slighty modified version that
also allows for frequent insertions) all the way from the DB layer to C#
models (that allows for tree traversions including caching etc.).

The model has many advantages to the normal parent/child adjacency list - even though the adjancency model is quite strong, when it comes to
lazyloading children etc. because you only need to fetch a set of children for any given parent. With some caching in the middletier, you're looking at service cached objects (or clones), instead of fresh data from the database.
But while most graph models allows for lazyloading children, some are
stronger in terms of fetching large presorted trees, and frequent
insertions. Usually, most trees have frequent selections and in-frequent
insertions. Unfortunately, with the basic graph (nested sets) model from Mr. Celko, you end up locking the entire table when inserting new nodes.

Explaining everything here is not going to happen, but I'd suggest you get his latest book on "Trees and Hierarchies in SQL" and take it from there. It's quite interesting actually.

--
venlig hilsen / with regards
anders borum
--


Nov 16 '05 #5
Thanks again Michael...

<%= Clinton

"Michael C" <mi*******@optonline.net> wrote in message
news:bH**********************@news4.srv.hcvlny.cv. net...
I ran into a similar problem with hierarchical datasets, way back before I
heard about Joe Celko. I beat my head against the wall for about a month
trying to figure it out until I bought his book. He's definitely got the
most in-depth coverage on the topic I've seen. Most authors that touch on
it will dedicate maybe 3 or 4 pages, and barely scratch the surface. He
dedicates whole books to it. I think he also posts to microsoft.public.sql
or another sql newsgroup on occasion.

Also, even though there may not be a logical limit to the depth of your
model, you will run up against physical limitations - performance, storage,
administration cost, etc., at some point. Whatever model you choose, make
sure you take all that good stuff into account.

Good luck,
Michael C.

"clintonG" <csgallagher@RE************@metromilwaukee.com> wrote in message
news:eK****************@TK2MSFTNGP12.phx.gbl...
Well thank you Michael and Anders alike. Your references to Joe Celko
and his work has me eager to get going..

Answering Michael's question regarding how deeply the model needs to
nest is why I think I needed to be referred to a 'Joe Celko' as the model
I need must enable indeterminate levels.

I want to make it possible for those with deep subject level expertise
to generate and edit their own tree(s) as they and they alone are those

that
know the taxonomy and the hierarchical relationships that are pertinent to
their body of knowledge.

Maybe a tough task for me compared to what can be done using an

application
such as the "Verity Collaboration Classifier" [1] but that's what I'm

interested
in
learning more about and appreciate your comments pointing the way...

--
<%= Clinton Gallagher
A/E/C Consulting, Web Design, e-Commerce Software Development
Wauwatosa, Milwaukee County, Wisconsin USA
NET csgallagher@ REMOVETHISTEXT metromilwaukee.com
URL http://www.metromilwaukee.com/clintongallagher/

[1] http://www.verity.com/products/vcc/index.html


"Anders Borum" <a@b.dk> wrote in message
news:ec**************@tk2msftngp13.phx.gbl...
Hello!

> Joe Celko wrote a couple of excellent books on hierarchical database
models.
> How many levels deep is your hierarchical structure?

I have been following Joe Celkos for some time and have succesfully
implemented the graph model (although in a slighty modified version that
also allows for frequent insertions) all the way from the DB layer to C#
models (that allows for tree traversions including caching etc.).

The model has many advantages to the normal parent/child adjacency list - even though the adjancency model is quite strong, when it comes to
lazyloading children etc. because you only need to fetch a set of children for any given parent. With some caching in the middletier, you're looking at service cached objects (or clones), instead of fresh data from the database.
But while most graph models allows for lazyloading children, some are
stronger in terms of fetching large presorted trees, and frequent
insertions. Usually, most trees have frequent selections and in-frequent
insertions. Unfortunately, with the basic graph (nested sets) model from Mr. Celko, you end up locking the entire table when inserting new nodes.

Explaining everything here is not going to happen, but I'd suggest you get his latest book on "Trees and Hierarchies in SQL" and take it from there. It's quite interesting actually.

--
venlig hilsen / with regards
anders borum
--



Nov 16 '05 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

34
by: yensao | last post by:
Hi, I have a hard time to understand difference and similarities between Relational database model and the Object-Oriented model. Can somebody help me with this? Thank you in advance. ...
12
by: Doug Baroter | last post by:
Hi, This question has been bothering me for some time. A lot of people seem to "think" XML is the king of data problems, and I've heard that next version of SQL Server is going to have a strong...
1
by: John | last post by:
Hi, We have XML files (and its XSD) that are dump of our tree-like data structure in memory. These XML files may potentially have unlimited levels of nesting because some elements can contain...
49
by: Mike MacSween | last post by:
I frequently hear that there isn't a commercially available dbms that fully implements the relational model. Why not? And which product comes closest. Mike MacSween
4
by: Congero | last post by:
I'm trying to find a way to bind hierarchical data to a gridview control. I've been able to do this with some third party controls and was wondering if this functionality is available with the...
7
by: Pradeep | last post by:
Hello, I need to take a set of input tables and create an XML output file. The format of the XML output must be user-definable and must be intuitive enough for non-techies to use. input...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.