I would suggest the approach is dependent on the most likely access pattern.

If you only use parts of the tree at a time (For instance url traversal of 
the tree)  then I would keep the nodes as seperate entities.

I have done this for a simple CMS.  All children have a reference property 
pointing to the parent.  And a list property describing the path elements 
(names).
In addition each parent holds an ordered list of names (children) and keys 
of the children.

This way you can retrieve all immediate children in a single db.get.  You 
can get children of arbitrary depths by querying based on the path.

Aggressive memcache use then means any re-use of parts of the tree on 
subsequant requests hit cache pretty well.

If one the other hand your using whole trees then ignore what I just said 
;-)

Have fun.

T

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/ceAJxTTK-oMJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to