Hierarchical Data Storage
Bart Pietercil
bart.pietercil at gmail.com
Mon Feb 12 14:54:58 CST 2007
Hi Trevor,
why wouldn't you organise it as Tree "lessons" ---> Node 1 Lesson 1,
Node 2 Lesson 1.1 Node 3 Lesson 2 and so one ?
The Tree traversal method allows an unlimited number of Levels?
Maybe I'm missing something (wouldn't be the first time)
Bart
On 12-feb-07, at 20:47, Trevor DeVore wrote:
> On Feb 12, 2007, at 11:26 AM, Ruslan Zasukhin wrote:
>
>>> I thought about using double values as well. Looking at how updates
>>> are performed in the modified preorder tree traversal algorithm it
>>> seems to me that adding child nodes can potentially invalidate data
>>> in many records that aren't part of the current hierarchy. If I am
>>> understanding the concept correctly, this seems like a bad thing if
>>> you have lots of clients working on parts of the tree.
>>>
>>> Using doubles to at least isolate the tree connected to each root
>>> node seems like it could solve that issue for some projects.
>>
>> I think should exists only one root.
>>
>> May be I have not think deeply yet, but it seems to me if AddNode
>> () touch
>> not ALL right nodes but only nearest nodes, then this improve
>> concurrency.
>
> Let's say I have a lessons and steps table in my database. A
> lesson is made up of one or more steps. A step with no children
> means it's content is displayed to the user, a step with children
> is used to create a hierarchal lesson structure.
>
> Lesson 1
> Step 1
> Step 1.1
> Step 1.2
> Step 1.3
> Step 2
> Step 2.1
> Step 2.2
> Lesson 2
> Step 1
> Step 1.1
> Step 1.2
>
> So I was picturing Leson 1.Step 1, Leson 1.Step 2, Leson 2.Step 1
> as "root" nodes and using the algorithm on the steps table. When I
> modify the order or number of steps in Lesson 1 I wouldn't want to
> modify relationship data in Lesson 2. That is where the thought of
> using doubles came from. For steps, the number to the left of the
> decimal represented the lesson and the number to the right
> represented the numbers used left left/right values.
>
> This is the first I've really thought about the modified preorder
> tree traversal algorithm before and perhaps the above scenario
> isn't how it would be used. Or maybe the tables would have to be
> designed differently.
>
> Make any sense?
>
> --
> Trevor DeVore
> Blue Mango Learning Systems - www.bluemangolearning.com
> trevor at bluemangolearning.com
>
>
> _______________________________________________
> Valentina mailing list
> Valentina at lists.macserve.net
> http://lists.macserve.net/mailman/listinfo/valentina
More information about the Valentina
mailing list