【问题标题】:Best way to store a small key-value list in Redis在 Redis 中存储小键值列表的最佳方法
【发布时间】:2012-04-11 11:42:29
【问题描述】:

我正在尝试将 Redis 用作我正在制作的小游戏的主数据库(主要是为了搞乱编程和使用 Redis)。

但是我遇到了一个我找不到答案的场景:

我希望存储人们可以使用的不同地图的名称列表(不是很多)以及他们的 ID。注意:我永远不需要从名称中获取 ID。

我认为可以做到这一点的两种方法是将信息存储为字符串或哈希。

即:

1) 基于字符串:

  • 设置地图:0“主要”
  • 设置地图:1“岛”
  • 等(可能还有一个 maps:id 到 存储一个自动增量值)

2) 基于哈希:

  • hset 映射“0”“主要”
  • hset 映射“1”“岛”

我的问题是哪种方式看起来最好。鉴于永远不会有那么多地图,我倾向于使用单个散列对象。部分是因为这提供了一个很好的方法来返回所有存在的地图。但是是否有任何特殊原因表明基于字符串的查询会更有用。

希望你能给我一些明确的信息。

谢谢你, 采摘采摘

【问题讨论】:

    标签: redis


    【解决方案1】:

    实际上不鼓励使用基于字符串的值,因为它比散列消耗更多的内存。

    Redis 优化小散列并以内存高效的方式对其进行编码。这种编码称为 zipmap(或 redis 2.6 中的 ziplist)。请参阅http://redis.io/topics/memory-optimization,特别是“尽可能使用哈希”部分。

    【讨论】:

      猜你喜欢
      • 2015-05-10
      • 2014-07-08
      • 2021-11-30
      • 1970-01-01
      • 2018-06-17
      • 2016-06-30
      • 1970-01-01
      • 2017-08-04
      • 1970-01-01
      相关资源
      最近更新 更多