我正在探索整个NoSQL概念。我一直在玩Amazons DynamoDB,我非常喜欢这个概念。但是,我说我不太确定数据应该如何分开。我的意思是,我应该像在关系数据库中那样为相关数据功能创建一个新表,还是使用单个表来存储所有应用程序数据?
例如,在关系数据库中,我可能有一个名为users的表和一个名为users_details的表。然后我会例如在两个表之间创建1:1的关系。使用NoSQL概念,理论上我也可以创建两个表,但是让我更高效地将所有数据放在一个表中。
如果是这种情况,那么你什么时候停止?想法是将给定用户的所有应用程序数据存储在一个表中吗?
答案 0 :(得分:0)
首先问问自己:为什么我首先将用户与RDBMS中的用户详细信息分开。
更一般地说,在谈论NoSQL时,你真的不应该关注表之间的关系。
你不应该考虑从不同的表中“加入”信息,而是以可以检索的方式准备数据最佳。
在user / user_details场景中,将所有信息放在users表中,并通过指定要获取的属性来查询所需内容。