[ 
https://issues.apache.org/jira/browse/OAK-1312?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15585767#comment-15585767
 ] 

Chetan Mehrotra edited comment on OAK-1312 at 10/18/16 3:50 PM:
----------------------------------------------------------------

h4. Benchmark

Implemented a benchmark and committed that to trunk in r1765455. It
 has 3 parts
* main - The code here create an app:Asset structure 
* Reader - This thread does reads of random assets and read the 
'jcr:content/metadata/status' property
* Mutator - This thread modifies the status property of random asset nodes

{noformat}
java -jar oak-run*.jar benchmark --mongouri="mongodb://localhost:27017/oak" 
BundlingNodeTest Oak-Mongo-DS
{noformat}

h4. Benchmark - Overhead of new bundling logic when bundling *not* in use

It does not depend on bundling api and first purpose is to see overhead of new 
bundling logic when bundling feature itself is not used.

{noformat}
# BundlingNodeTest                 C     min     10%     50%     90%     max    
   N Reader  Mutator  Assets#
trunk
Oak-Mongo-DS                       1     189     280     432     817    1414    
 123   75403    2817    1390      #oak:Resource  (trunk)
Oak-Mongo-DS                       5     362     489     735    1612    2740    
 340   75093    2464    3580      #oak:Resource (trunk)
branch
Oak-Mongo-DS                       1     224     292     453     732    1591    
 122   77328    2794    1400      #oak:Resource (OAK-1312 branch)
Oak-Mongo-DS                       5     336     489     735    1476    2787    
 349   73245    2496    3660      #oak:Resource (OAK-1312 branch)
{noformat}

With above numbers it can be concluded that there is no overhead of bundling 
related change in critical path


was (Author: chetanm):
h4. Benchmark

Implemented a benchmark and committed that to trunk in r1765455. It
 has 3 parts
* main - The code here create an app:Asset structure 
* Reader - This thread does reads of random assets and read the 
'jcr:content/metadata/status' property
* Mutator - This thread modifies the status property of random asset nodes

h4. Benchmark - Overhead of new bundling logic when bundling *not* in use

It does not depend on bundling api and first purpose is to see overhead of new 
bundling logic when bundling feature itself is not used.

{noformat}
# BundlingNodeTest                 C     min     10%     50%     90%     max    
   N Reader  Mutator  Assets#
trunk
Oak-Mongo-DS                       1     189     280     432     817    1414    
 123   75403    2817    1390      #oak:Resource  (trunk)
Oak-Mongo-DS                       5     362     489     735    1612    2740    
 340   75093    2464    3580      #oak:Resource (trunk)
branch
Oak-Mongo-DS                       1     224     292     453     732    1591    
 122   77328    2794    1400      #oak:Resource (OAK-1312 branch)
Oak-Mongo-DS                       5     336     489     735    1476    2787    
 349   73245    2496    3660      #oak:Resource (OAK-1312 branch)
{noformat}

With above numbers it can be concluded that there is no overhead of bundling 
related change in critical path

> Bundle nodes into a document
> ----------------------------
>
>                 Key: OAK-1312
>                 URL: https://issues.apache.org/jira/browse/OAK-1312
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: core, documentmk
>            Reporter: Marcel Reutegger
>            Assignee: Chetan Mehrotra
>              Labels: performance
>             Fix For: 1.6
>
>         Attachments: OAK-1312-meta-prop-handling.patch, 
> OAK-1312-review-v1.diff, OAK-1312-review-v2.diff
>
>
> For very fine grained content with many nodes and only few properties per 
> node it would be more efficient to bundle multiple nodes into a single 
> MongoDB document. Mostly reading would benefit because there are less 
> roundtrips to the backend. At the same time storage footprint would be lower 
> because metadata overhead is per document.
> Feature branch - 
> https://github.com/chetanmeh/jackrabbit-oak/compare/trunk...chetanmeh:OAK-1312



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to