[英]What Database model should I use to store this data format?
我基本上在字段中有一堆对象;
此对象实例id : "banana"
的字符串标识符id : "banana"
字符串键和值data : {}
的字典data : {}
与此friends: ["apple", "orange" ]
相关的实例ID的数组friends: ["apple", "orange" ]
相关(不同方式)实例ID的数组。 followers: ["grapefuit"]
您可能已经推断出该数据将为Twitter网络建模。
在我的数据生命周期内(它将超出任何特定程序执行的生命周期),实例的数量和存储在字段中的数据将发生变化(预期会增加),因此我想将所有这些数据存储在MySQL中由PHP脚本连接的数据库。
我是数据库领域的新手,但是我对表模型和查询结构有些了解。
我应该如何为这个特定问题构建数据库?
使用类似MySQL的数据库时,要记住的一件事是,应避免在特定的列中包含字典和数组之类的东西。 原因是这使查询这些值变得可怕。
我要做的是,例如,有一个带有两列FriendA和FriendB的“朋友”模式。 对于您拥有的每个朋友对,这将是该数据库中的一行。 您可以对“关注者”执行同样的操作,并具有“关注者”和“关注者”列。
现在,在这些表之间进行查询仅需要一个联接,更重要的是,如果两个朋友不结为好友,或者某个人决定取消关注另一个人,这只是一个删除而不是两个删除(并且没有数组!)
当然,除非您打算使用非结构化的键/值数据,否则请将其扩展为完整的架构。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.