usage of oak:unstructured in AEM 6.x | Community
Skip to main content
varshsr
Level 5
February 1, 2016
Solved

usage of oak:unstructured in AEM 6.x

  • February 1, 2016
  • 3 replies
  • 1987 views

As per the jackrabbit oak goal OAK repositories are meant to scale for larger child node (possibly millions - please correct if wrong)

But how this is effective in case of AEM 6.x is not clear 

1) Does it mean all the content node  and user/group nodes base jcr type are child nodes(inheriting) of oak:unstructured ( vs nt:unstructured / order able child nodes)

2) How far AEM 6.x OOTB uses  oak:unstructured and what are list of node types that can be categorized for larger child nodes ?

Please share your thoughts.

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by joerghoh

Hi,

The decision, whether or not child nodes are orderable or not, should be a careful one. Only a very small number of nodetypes inherit from oak:unstructured. For example the cq:page nodetype does not. Also the subnodes jcr:content are simple nt:unstructured nodes, because the order matters. For example in a parsys the ordering of the individual components must be stable. Also think of the order in which pages appear in a navigation.

Therefor:

1) No, they don't. While for the group and user nodes it could make sense, for everything below /content ordering is absolutly required.

2) oak:unstructured is only used in a small number of cases. Ordering matters in many usecases.

I think, that the biggest benefit is in usecases, where you massive amount of data and no requirement for ordering. Mabye product lists. But unless you need to store many nodes as siblings this problem shouldn't matter. Having a structure is always good, especially when the kind of the nodes already suggests one.

Jörg

3 replies

Adobe Employee
February 1, 2016

Joerg has an excellent article on this subject[0]. Whether you use ordered or unordered depends on your requirements. 

Regards,

Opkar

[0]https://cqdump.wordpress.com/2015/07/09/1000-nodes-per-folder-and-oak-orderable-nodes/ 

joerghoh
Adobe Employee
joerghohAdobe EmployeeAccepted solution
Adobe Employee
February 1, 2016

Hi,

The decision, whether or not child nodes are orderable or not, should be a careful one. Only a very small number of nodetypes inherit from oak:unstructured. For example the cq:page nodetype does not. Also the subnodes jcr:content are simple nt:unstructured nodes, because the order matters. For example in a parsys the ordering of the individual components must be stable. Also think of the order in which pages appear in a navigation.

Therefor:

1) No, they don't. While for the group and user nodes it could make sense, for everything below /content ordering is absolutly required.

2) oak:unstructured is only used in a small number of cases. Ordering matters in many usecases.

I think, that the biggest benefit is in usecases, where you massive amount of data and no requirement for ordering. Mabye product lists. But unless you need to store many nodes as siblings this problem shouldn't matter. Having a structure is always good, especially when the kind of the nodes already suggests one.

Jörg

varshsr
varshsrAuthor
Level 5
February 2, 2016

Thanks Jörg for the details :-)