You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Steve Hostettler (JIRA)" <ji...@apache.org> on 2018/09/11 18:16:00 UTC

[jira] [Created] (IGNITE-9551) Provide support for on-heap/non serialised/read only caches

Steve Hostettler created IGNITE-9551:
----------------------------------------

             Summary: Provide support for on-heap/non serialised/read only caches
                 Key: IGNITE-9551
                 URL: https://issues.apache.org/jira/browse/IGNITE-9551
             Project: Ignite
          Issue Type: Wish
          Components: cache
    Affects Versions: 2.7
            Reporter: Steve Hostettler


We have several use cases in which we warm-up caches and then use them in a read-only manner during the processsing. For instance, we exchange rates and forex values. These caches are heavily used.

 

Ideally I would like to be able to tag caches (or get projections) with the following features:
 * Read Only : the cache are of course initiliazed but once they are marked as initiliazed I do not need any locking anymore because I know that the only access will be read only until they are destroyed. In micro-benchmarks that create a new projection using GatewayProtectedCacheProxy<K1, V1>(
 (IgniteCacheProxy<K1, V1>) delegate, opCtx.keepBinary(), false); I gain around 15%

 * No Serialisation : These type of caches usually do not contain billions of elements but almost all the fields are used all the time. Therefore the overhead of the systematic binary marshalling is quite high.
 * On Heap : as explained in [http://apache-ignite-developers.2346864.n4.nabble.com/Questions-about-getAllInternal-in-GridLocalAtomicCache-td34662.html] having everything off-heap comes at a cost. Espcially the need to put guards and locking.

I would love to contribute but I need some guidance and reality check.

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)