Amit Jain updated OAK-4837:
    Attachment: FileWriteBenchmark.png

SmallFileWriteTest/SmallFileReadTest for different file sizes (50 KB, 250 KB, 1 
MB, 5 MB) with different implementation:
* FileDataStore
* JR2 S3 (Using JR2 CachingDataStore)
* S3 (Using the new AbstractSharedCachingDataStore)

There is a small improvement in the writes ~13-15% but tapers of as File size 

The read performance is approximately same for all the 3 DataStores using 
default caching parameters.

> Improved caching for DataStore
> ------------------------------
>                 Key: OAK-4837
>                 URL: https://issues.apache.org/jira/browse/OAK-4837
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: blob
>            Reporter: Amit Jain
>            Assignee: Amit Jain
>              Labels: performance
>         Attachments: FileReadBenchmark.png, FileWriteBenchmark.png
> The current CachingDataStore implementation used with S3DataStore has certain 
> problems:
> * Lack of stats to show hit rate/miss rates for files being requested for 
> downloads
> * Lack of stats for async uploads
> * CachingDataStore starts proactively downloading files in the background 
> when a call to {{getRecord}} is made.
> * Async upload functionality leaks into Backend implementations, LocalCache 
> classes.
> * The call to {{DataStore#getRecord()}} which makes multiple calls to 
> backends which is problematic for S3 (i.e. when not being served bu cache)
> * There is some functionality which is not used with Oak like length cache, 
> sync/async touch etc. which can be removed and code simplified.

This message was sent by Atlassian JIRA

Reply via email to