Igniters, I am noticing that some users struggle with performance when using collocated compute and off-heap cache. The main reason is that collocated computations access data locally, directly on the server, and with off-heap cache all binary objects need to be deserialized for every access.
A much more efficient approach is to enable on-heap cache, so the data is deserialized once and then stored in the on-heap cache. However, the disadvantage of this approach is that the data foot print in memory doubles because the data is now stores in both, on-heap and off-heap caches. What if we suggested the following configuration for the collocated compute users: - enable the *on-heap cache* and make it large enough to fit all the data - enable *Ignite native persistence* in BACKGROUND mode, so there is no performance overhead for persisting data - make *off-heap cache* very small compared to the on-heap cache. This way, the memory will be consumed by the on-heap cache mostly, the data will be cached in deserialized form, and there should be no performance degradation. Will this approach work? D.
