配置了Hazelcast Map备份后,它还会同时映射max-size包含备份条目吗?

问题描述 投票:0回答:1

说我对Hazelcast地图有以下配置

没有集群中的节点数:1地图配置:最大大小:100MB同步备份数:1异步备份计数:0

如果我使用20个唯一键(每个条目占用1 MB)进行map.put(...)调用,将消耗多少地图内存?

备份条目的内存使用量是否也被视为最大大小的一部分?

hazelcast hazelcast-imap
1个回答
0
投票

如果节点少于请求的数据副本,则无法获取所有请求的数据副本。

例如,backup-count=2请求3个数据副本,即主副本和两个备份。如果只有2个节点,则无法在任何地方托管第二个备份。节点托管多个副本是没有意义的-这样做的重点是数据安全性,节点故障只能导致丢失一个副本。

如果写入20个1MB的条目,则每个副本20MB。您有1个节点,所以1个副本,所以20MB。

您将没有任何备份副本,因为没有地方可以托管它们。但是,如果这样做,它们将包括在最大大小计算中。

例如,如果您有4个节点,1个备份(总共2个副本)和20个条目,则您希望每个节点具有10个主副本条目和10个备份副本条目,因此具有20MB数据。实际分配取决于密钥,密钥可能不一致。

您可以通过管理中心确认所有这些信息。这不是一个坏主意,因为通常序列化后的1MB条目实际上具有不同的大小,并允许条目开销。

https://docs.hazelcast.org/docs/4.0/manual/html-single/index.html#map-eviction解释了搬迁的工作方式。

© www.soinside.com 2019 - 2024. All rights reserved.