[ https://issues.apache.org/jira/browse/OAK-4837?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Amit Jain updated OAK-4837: --------------------------- Attachment: FileReadBenchmark_0Cache.png FileReadBenchmark for sizes 50 KB, 256 KB, 1 MB for: * JR2 S3 (Over JR2 CachingDataStore) with cache size 0. * S3 (Over the new AbstractSharedCachingData with cache size 0. This again has a performance advantage of 14-15% but starts tapering off as file size increases. The performance difference for small blobs is possibly because of no call to S3 for getting length. !FileReadBenchmark_0Cache.pngwidth=900,height=1200| > 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, FileReadBenchmark_0Cache.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 (v6.3.4#6332)