如何解决在MongoDB中以其他大型非关系模式保存和访问高度嵌套的数据
初学者在这里。试图为我的数据库建模,到目前为止一直在尝试使事情简单。我将最重要的数据放在一个非常大的模式中:
{
id: '....',albums: [
{
artist: 'Taylor Swift',songs: [
{ songId: '...',...
lyrics: [
{ id: 'line1',content: '...'},{ id: 'line2',content: '...'} ] } ]
}
]
}
您可以看到它是超级嵌套的。我曾想过要移到关系数据库,但是我的应用程序将永远不需要没有专辑等的艺术家,并且每次请求几乎每次都需要全部数据。
问题:用户想保存喜欢的歌词
但是,现在有一个用例,我希望用户能够保存/收藏歌词:用户应该能够保存例如第2行,然后在单独的视图中可以看到他/她保存的不同歌曲和专辑中的所有歌词。 (因此,我有一个用户模式,我想在哪里保存歌词?)如何最好地完成这样的事情而不保存冗余数据?
此外,我不想不必将歌词与其余数据分开(如果可能的话),因为这是我的应用程序的关键数据,除了这种用例之外,永远不会以关系方式使用
PS:这里的数据模型(包括专辑和歌词等)只是一个例子。解释我的实际用例太复杂了,因为它是另一个领域的技术含量很高的,请记住这一点
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。