我是初学者使用firebase而我对重复数据有疑问而不是使用键引用。我们假设我有一个视频的用户评论列表。每个评论都有一个用户名和头像。假设用户可以更改名称和头像。有什么更好的选择:
要考虑的一些要点:
选项1
赞成
缺点
选项2
赞成
CONST
示例:
// OPTION 1
{
user: {
user1: {
name: 'Name 1',
avatar: 'Avatar 1',
}
},
comments: {
comment1: {
text: 'comment',
user: 'user1'
}
}
}
// OPTION 2
{
user: {
user1: {
name: 'Name 1',
avatar: 'Avatar 1',
}
},
comments: {
comment1: {
text: 'comment',
user: {
id: 'user1',
name: 'Name 1',
avatar: 'Avatar 1',
}
}
}
}
答案 0 :(得分:0)
这实际上取决于你想要达到的目标,但总的来说我会建议你选择option 2
。
在Firebase或NoSQL数据库中,镜像数据是一种非常好的方法。特别是如果您想构建具有高性能的应用程序。无论何时发生变化,都不要忘记更新每个节点中的数据。
但有一件事你需要注意的是,嵌套太深也可能很糟糕。这就是为什么我认为它真的取决于案件是否有所作为。