在 Flash 上使用 Redis 存储大 key 的要求
上次更新时间:2024 年 4 月 18 日
目标
在 Flash 上配置 Redis 时,了解对值大小的限制。RAM 百分比是否需要大于最大的单值大小?例如,在以下场景中
- 内存限制 = 10 GB
- RAM 中的 RoF = 20%(2GB)
- 键值大小 > 2GB(例如流)
Redis 如何从磁盘中获取值并将其传输到 RAM 中?
解决方案
对于值的大小而言,使之成为可行的解决方案的 自动分层 需要具备以下要求
- 所有键都必须适合 RAM 大小
- 从 Flash 存储中检索的任何键都需要适合 RAM 大小
这意味着已配置的 RAM 必须大于数据集中任何键的最大值。此外,RAM 还应有足够的空间来存储所有键及其开销。
使用启用 Redis on Flash 时,存储较大的键值对(或使用大型 Redis 流)通常是反模式。如果您必须从 Flash 中提取整个 1MB HASH,只是为了在 hash 内设置一个 pair,那么就会出现不必要的开销。
参考
请参阅 自动分层 功能文档。