当前位置: 首页 > 面试题库 >

如何在Redis中存储哈希数组

阳德润
2023-03-14
问题内容

我想在redis中存储哈希数组,最好的编码方法是什么?


问题答案:

AFAIK的唯一方法是取消引用它们。假设您有2个散列数组,例如:{foo: 'bar', baz: 'qux'}

您将它们分别存储,然后创建一个引用它们全部的SET:

HMSET myarr:0 foo bar baz qux
SADD myarr myarr:0
HMSET myarr:1 foo bar baz qux
SADD myarr myarr:1

然后,您可以通过查询set:来检索它们全部SMEMBERS myarr,然后调用HGETALL <key>所有返回的键来重建原始的哈希数组。

我希望这是有道理的。而且,如果您找到了更聪明的方法,我将很高兴听到。



 类似资料:
  • 问题内容: 我对Redis还是很陌生,希望看看是否有可能。想象一下我正在接收这样的数据: 并为另一个帐户接收此数据: 我想以类似的格式将这些数据保留在Redis中: 对于xyz: 所以问题是我应该使用哪种数据类型来存储此Redis? 问题答案: 如果您的目标是检查是否用作该帐户的解决方案,则解决方案应类似于: 样本数据 执行此操作( 使用redis集 ): 然后,您可以通过以下命令检查是否用作该帐

  • 问题内容: 我在Redis中存储MessagePacked哈希时遇到问题。我在下面粘贴了一个测试用例。从Redis中提取打包数据并对其进行解压缩时,哈希会略有损坏。当哈希值超出一定长度时,似乎会发生这种情况,尽管我不能肯定地说。 我正在使用Redis 2.4.17(默认配置),Ruby 1.9.3p194,MessagePack 0.4.7和Redis gem 3.0.2。使用节点也会发生相同的问

  • 问题内容: 我有一个简单的问题,当我想将SHA1哈希的结果存储在MySQL数据库中时发生: 我将散列结果存储在 VARCHAR 字段中多长时间? 问题答案: 我将使用可变长度的数据,但不使用固定长度的数据。由于SHA-1值 始终为 160位长,因此将仅在固定长度字段的长度上浪费一个额外的字节。 而且我也不会存储返回的值。因为每个字符只使用4位,因此需要160/4 = 40个字符。但是,如果每个字符

  • 要在redis中使用和创建队列,在python中,我是这样做的: 但是如何在redis队列中存储key:value对呢? 假设和可以是任何字符串(因此不能使用进行拆分),推送的最佳方式是什么 4个项目进入队列,并且当第5对被推入队列时,它弹出?

  • 我一直在研究散列/加密密码并将其存储在数据库中的正确方法。我知道盐和散列,所以我环顾四周,PBKDF2似乎是一个不错的选择。所以我找到了这个网站,它提供了一个很好的教程,以及一个适用于PHP的PBKDF2(这是我在我的网站上使用的)。 因此,我设置了我的网站,以使用这些功能生成/创建密码,但正如您在以下代码中看到的: salt在create_散列函数中生成,并存储在生成的散列中,该散列最终看起来像