0

我是 GridGain 的新手,我的缓存堆大小有问题。

我有一个 2.000.000 ~ 3.000.000 行的 CSV 文件,文件大小为 600~800 MB,但是当我将此数据加载到 GridGain 上的缓存中时,我需要 5~7 GB。我可以减少缓存中数据的大小吗?还是我需要 5~7 GB 才能保存 600 MB 的文件?

4

1 回答 1

0

以下是可能影响内存消耗的因素:

  1. 配置的备份数。例如,如果您配置了 1 个备份,则集群所需的内存量会增加一倍。
  2. 索引 - 如果您正在为数据创建索引,索引确实需要额外的空间。
  3. 如果对象同时以序列化和反序列化形式存储,则需要额外的空间。

我认为一个好的测试是将相同的数据加载到 ConcurrentHashMap 中,看看需要多少内存。我想说,在像 GridGain 这样的分布式事务缓存中,版本控制、锁定等占用了空间。所以分布式缓存所需的内存量应该是简单 ConcurrentHashMap 所需空间的 2 倍或 3 倍。

于 2014-07-12T04:53:12.277 回答