javascript – 我应该如何在Redis中存储这个对象?

parent = {
    child0: {
        data1:'foo',
        data2: 'bar'
    },
    child1: {
        data1:'foo',
        data2: 'bar'
    },
    child2: {
        data1:'foo',
        data2: 'bar'   
    }
}

起初我以为我会设置一个父:子键,因为我将需要单独的兄弟姐妹的数据.但在某些情况下,我需要返回父级内的所有数据.

我应该把整个对象放在父键中吗?

如果许多获取和设置可能仅适用于其中一个孩子,那么这是否存在缺点?

有没有办法用父:子模式调用所有父数据?

谢谢!

最佳答案 尝试一个哈希 – 它让你只有一个孩子的HGET和HGETALL来获得所有这些.

将整个对象作为JSON存储在单个密钥中也是有效的,并且如果您的使用非常合适,则可以使代码保持简单.如果数字不是太大,即使您只需要显示一个子对象,也总是可以检索整个对象.

避免在单个密钥中存储复杂对象的主要原因是写冲突 – 如果两个连接可以同时修改一个对象的不同子节点,则散列将不那么麻烦.

点赞