【问题标题】:Key-Range equivalent in Redis? Coming from DynamoDBRedis 中的键范围等效项?来自 DynamoDB
【发布时间】:2022-12-07 02:45:58
【问题描述】:

在 DynamoDB 中,我使用复合键来模拟表中的一对多关系:

User (Key) - Order (Range)

一组典型的记录是这样的:

John - Burger

John - Fries

Sue - Pizza

Sue - Soda

看起来 Redis 只支持主键,在这种情况下这将不起作用,因为主键是唯一的。有没有办法在 Redis 中实现上述内容?

【问题讨论】:

    标签: redis key composite-primary-key


    【解决方案1】:

    Redis 支持两种不同的数据类型,您可以使用它们来模拟一对多关系:

    • sets:唯一字符串的无序集合;
    • sorted sets:按相关分数排序的唯一字符串(成员)的集合。

    在某种程度上,甚至可以使用 Redis lists,它们是字符串值的链表。

    有没有办法在 Redis 中实现上述内容?

    是的,这取决于您将如何使用这种关系。以下是如何使用 Redis 集执行此操作,例如:

    SADD users:John Burger Fries
    > 2
    
    SADD users:Sue Pizza Soda
    > 2
    

    【讨论】:

      猜你喜欢
      • 2017-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-28
      • 1970-01-01
      • 2023-02-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多