0

我必须在我的 HashMultiMap 中存储超过 1 亿个键值(键可以有多个值)。现在,我想为此使用Jedis。我从这里下载- Jedis 2.0.0.0.jar 在这里推荐给我。现在,经过一番搜索,我找不到任何可以帮助我作为初学者的好文档:

1)如何使用 Jedis(具体来说,我是否必须将其视为 Java 中的普通 .jar 文件,例如 Guava)?

2)如何在Redis中实现HashMultiMap(key可以有多个值)?

3) 如何在 Redis 中执行所有的插入、搜索等操作。

4)我通过搜索 Redis 找到了许多选项,如 Jedis、Redis、Jredis 等。这些变化是什么?为了解决这个问题,我会喜欢哪一个?

任何信息和/或任何文件的链接都会对我有所帮助。对不起,如果我问任何愚蠢的问题,因为我不知道 Redis。所以,开始的想法对我来说很有价值。谢谢。

4

3 回答 3

1

恐怕没有一种简单的方法可以实现您想要的。Redis 只有普通的哈希值。一键 - 一个值。

但是,您可以将多个值序列化为字符串并将其存储值。当然,您失去了单独插入/更新/删除项目的能力,您每次都必须重置整个值。但这对您来说可能不是问题。

于 2012-03-30T19:04:26.527 回答
1

Redis 的内部类型很少,例如列表或集合或关联的哈希。我想你可以为你的情况使用套装。最好序列化 whle 数据,因为内部类型的操作是原子的,您无需担心可能的竞争条件。

于 2012-03-31T02:24:03.043 回答
1
  1. 查看https://github.com/xetorthio/jedis/wikihttp://redis.io/commands
  2. 有几种方法暗示使用 list/sortedSet/hashs 作为多图的单个字段。然后a)制作子数据库以提供分离的名称空间,即限制您的整体多图(选择。和/或b)使用键在redis中具有的丰富语义(参见此处的示例)。您可以简单地使用常规键/值映射设置/获取来组成您的多映射,键名称另外描述您的映射字段。您有多种选择来获得您想要的东西。最后的手段之一是编写脚本。
  3. 依靠!
  4. afaik,绝地武士是最成熟的。
于 2012-04-10T21:57:58.903 回答