MySQL-对于一个千万级别的表,适不适合做复合主键啊?
现在要设计一个收藏表,该表就两个字段,一个uid,一个收藏的id,如果用复合主键的话,到达千万级别以上之后,插入的时候会不会因为要检查有没有重复而变慢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
现在要设计一个收藏表,该表就两个字段,一个uid,一个收藏的id,如果用复合主键的话,到达千万级别以上之后,插入的时候会不会因为要检查有没有重复而变慢?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
首先:建索引是肯定会对dml语言有性能影响的,应为他修改信息时必须维护索引结构。
这中情况我觉得使用innodb鼻使用myisam好, 使用innode 直接以uid,id建聚集索引,
如果根据收藏id查询用户id多的话, 再建个收藏id的索引就可以了。
纯属小白意见, 希望大牛解答。
1千万的话,如果uid和收藏的id都是数字型的话,做一个复合主键,性能还是可以的,只不过复合主键的顺序是uid在前,收藏id在后,然后在做一个单独收藏id索引,因为某个uid下的收藏id的总数一般不会破万。