this is not dependent on the persistence manager. In fact, CRX supports "bucketing" of user profile nodes to prevent creating a too flat structure. There are two settings in CRX's repository.xml that can help with that, specifically
<param name="autoExpandSize" value="100"/>
<param name="groupMembershipSplitSize" value="100"/>
Thanks for the response.
However, I would appreciate some more general clarity with CRX's ability to handle large flat hierarchies.
1. So is it safe to assume that large flat hierarchies (1M or more child nodes) should be avoided as much possible - by using technques such as "bucketing"?
2. While trying to setup CRX bucketing parameters for user profile nodes, what should we be considering as the threshold of MAX NODE's under a parent?
3. Are you aware of existing CQ5 implementations that have successfully (by using bucketing) avoided large flat hierarchies of user profile nodes? Are there any limits that we should be aware of? Or any impact of such large data sets i.e 50M user profiles?
Thanks in advance for your comments. We appreciate any additional information/context that you should share with us in this regard.
Is it possible to get more information/documentation on the 2 parameters you mentioned? What are the default values and how do these work? When should these values be changed? Currently we have 40,000 users on our CQ5.4 publish instance and potentially expanding to 65k+.
I'm interested in this use case as well. As to default values and how they work I looked in the underlying jackrabbit code here:
https://github.com/apache/jackrabbit/blob/trunk/jackrabbit-core/src/main/java/org/apache/j ackrabbit/core/security/user/UserManagerImpl.java I'd assume the defaults weren't changed in CRX, but that is an assumption only at this point.