我指的是@Sripathi Krishnan给出的great answer来问这里的问题:是Redis只是一个缓存
我正在努力学习如何使用redis,而我的研究让我想到了SO的问题。
有人可以在代码中解释这两行的原因,因为我仍然觉得很难理解它们在Sripathi在答案中给出的代码中的用处。
$ HINCRBY unique_ids question 1
$ HINCRBY unique_ids answer 1
我知道它创建了一个带有'unique_ids'的哈希作为其键,字段'question'和'answer'首先初始化为0然后增加到1.除此之外,我没有看到unique_ids键的任何链接随着流程,但我不确定我的诺布思想是否遗漏了什么。
答案 0 :(得分:2)
这些命令只是生成合成主键的一种方法。
在斯里兰卡的例子中,人们可以在系统中添加问题和答案。需要引用这些实体,因此需要通过唯一键来标识它们。您可以想象使用某种UUID机制,但使用数字键通常更简单。
unique_ids只是一个方便的容器,用于存储系统中存储的对象的下一个可用键。要添加新问题,只需增加unique_ids的问题字段(使用Redis进行原子操作),并使用返回的值作为新问题的关键字。它保证所有新问题都具有不同的关键价值。
在关系数据存储中,此类功能由序列(Oracle,PostgreSQL)或自动增量主键(MySQL)提供。