如何让多个节点在Redis中存储一个哈希映射

如何让多个节点在Redis中存储一个哈希映射,redis,Redis,在Redis的群集模式下,是否必须将具有特定密钥的数据段存储在特定节点中,无论其具有何种数据结构(例如列表/哈希) 例如,我有一个哈希映射: HMSET website google www.google.com yahoo www.yahoo.com 散列图的键是“网站”,散列图有数据{google:www.google.com,yahoo:www.yahoo.com}。据我所知,哈希映射只存储在集群的一个节点中。当散列映射较大时(例如,一个散列映射中有400M个键值对),这将是无效的 我的

在Redis的群集模式下,是否必须将具有特定密钥的数据段存储在特定节点中,无论其具有何种数据结构(例如列表/哈希)

例如,我有一个哈希映射:

HMSET website google www.google.com yahoo www.yahoo.com
散列图的键是“网站”,散列图有数据{google:www.google.com,yahoo:www.yahoo.com}。据我所知,哈希映射只存储在集群的一个节点中。当散列映射较大时(例如,一个散列映射中有400M个键值对),这将是无效的

我的问题是:是否有一种方法可以在集群中自动分发同一密钥的哈希映射的内容?例如,当哈希映射的密钥仍然是“网站”时,在节点0中存储对{google:www.google.com},在节点1中存储对{yahoo www.yahoo.com}

在Redis的群集模式下,是否必须将具有特定密钥的数据段存储在特定节点中,无论其具有何种数据结构(例如列表/哈希)

是-每个密钥都映射到一个哈希槽,由单个集群实例管理

我的问题是:是否有一种方法可以在集群中自动分发同一密钥的哈希映射的内容

否-数据分布在关键级别的节点之间。给定密钥的数据结构不能分布在多个碎片之间。要分发数据,必须使用更多键对其进行建模


正确地建模您的需求需要知道您将对分布式“哈希映射”执行什么类型的操作以及它们各自的频率。请随意将此信息添加到问题中,或打开一个更关注您需求的新信息。

不要使用散列。只需设置简单的字符串值,这些值将均匀分布在整个集群中。您将失去在键空间上轻松迭代的能力。