我正在开发MySQL数据库的结构,我遇到了一个关于其结构的小决策问题。
我有两张桌子:
每条消息都可以有多个与之关联的评论。 什么是在消息和与之相关的评论之间建立联系的更好方法?
我认为通常使用第一种方法然后使用MySQL查询来查找具有相应消息的message_id的注释。但是,当有数十万条评论时它会有多高效?
在这种情况下解码json字符串并通过完全唯一ID访问注释会更有效,更快吗?
如果重要的话,我正在使用python作为后端。
答案 0 :(得分:1)
第一个选择是要走的路。所以你会:
comment_id | message_id | comment_text |时间戳等。
对于您的MySQL表,您可以指定在前两列上构建索引以获得良好的性能 10Mio评论应该可以正常工作,但您可以自己测试这个测试场景。
如果您想计划更多,那么在大约100,000条评论之后,您可以执行以下操作:
这应该适用于大量条目。
您可以根据个人托管(性能)环境调整数字......
答案 1 :(得分:0)
选项一是最好的方法。您需要注释表中message_id
列的索引。这使MySQL能够快速有效地提取特定消息的所有注释,即使有数十万条注释也是如此。