Cache entry cost and total cache memory footprint would be nice
CacheMetrics doesn't seem to have it. It comes handy during benchmarking. Hazelcast provides that info.
By "total footprint" I mean non-replicated one i.e. the combined cache size in memory (heap) in all primary (not backups) nodes - excluding all near caches and other service data. However the "query fields" and indexes should be included.
For now, if you want to have better control on memory consumption, I would recommend to switch to offheap memory. It's more compact because it never stores deserialized value and allows to limit the amount of allocated memory. And also there is CacheMetrics.getOffHeapAllocatedSize() that tells how much memory is already allocated. You can refer to this documentation page for more details: https://apacheignite.readme.io/docs/off-heap-memory