Redis Enterprise 主备模式用例

最后更新时间:2024 年 4 月 18 日

问题

使用“副本 of”功能创建的 Redis Enterprise 主备部署涵盖哪些用例?

回答

数据迁移

使用“副本 of”功能,可以从 Redis Enterprise 数据库或 Redis OSS 服务器迁移到目标 Redis Enterprise 数据库,以进行数据迁移用例。

数据整合

多个主数据库可以复制到单个数据库。此功能可以将来自多个数据库的数据整合到单个数据库中。注意:具有冲突名称的键将在目标副本数据库中被覆盖;建议为不同的数据库使用不同的命名空间。例如,为了整合来自 *hhrr* 和 *devs* 数据库的数据,相应的键空间可以分别以 *hhrr:* 和 *devs:* 为前缀。

缩减数据库规模

Redis Enterprise 允许通过对数据库进行重新分片来实现垂直扩展(或“向上扩展”),从而允许多个分片利用一个或多个 Redis Enterprise 节点中的多个资源。在 Redis Enterprise 中无法缩减规模,因此,如果需要减少数据库的分片数量,则应创建一个具有所需分片数量的新数据库,然后此新数据库应复制原始数据库的数据(使用“副本 of”功能),最后,在迁移完成后,将放弃以前的数据库。

灾难恢复

副本数据库(最初为被动)可以提升为主副本。如果主数据库不可用,客户端应用程序应将工作负载转移到副本。数据库副本应在不同的集群中创建。

读取可扩展性

将读取扩展到一个数据库或多个数据库副本。Redis Enterprise 数据库可以复制到一个或多个数据库副本,以提高只读吞吐量。副本可以托管在同一个源数据库集群中,也可以托管在不同的远程集群中。


主备模式和主动-主动模式

请注意,如果出现连接错误,副本同步可能会从最后的位置重新开始,或者可能需要从源进行完全重新同步,从而导致大量数据被传输并加载到数据库副本中。请参考文档页面中的同步错误。由于存在这些情况,最好配置一个活跃-活跃的地理分布式数据库,它比活跃-被动数据库更能容忍网络分区。使用活跃-活跃在灾难恢复方面可能特别方便。当副本用作备用数据库时,如果不可能出现冲突,则可以放宽活跃-活跃数据库的规模模型(活跃-活跃数据库的规模模型通常会将数据所需的内存量增加一倍,而仅用于灾难恢复的活跃-活跃副本可能会有更方便的分配内存量)。如果您使用活跃-活跃,请验证模块的功能:并非所有模块都支持活跃-活跃(例如,RedisGraph)。

参考文献

地理分布式 Redis 的副本