请教大数据分表分数据库的问题

LWLIFE 2017-09-21 10:49:17
业务数据比较多,每天可能会有几十W的数据,这样长期下去单表压力比较大,现在想根据日期来进行拆表,200W左右的数据应该就会有影响了,所以想请教一下:
1拆表能节省多少时间?
2一个数据库拆多少表合适?
3表太多了是否需要拆库?
...全文
464 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ZXYperseverance 2018-03-13
  • 打赏
  • 举报
回复
首先考虑可以分区,把表中的数据按时间分到不同的区,这样可以提高查询效率。 如果拆表,首先可以日期分类进行拆表,选择合适的日期拆表,把常用的字段创建索引。 或者根据具体的业务类型进行拆表。
LWLIFE 2018-02-22
  • 打赏
  • 举报
回复
引用 4 楼 zjcxc 的回复:
拆库通常是要考虑的,一个库中太多的表管理起来也麻烦 拆表对天大数据通常来说是必须考虑的,性能的提升取决于你的查询和处理方法 比如,如果你拆表了,查最近一年的数据 如果还是通过一个 UNION ALL 所有表的视图(或者类似的方法)去查,那么效率提升有限 但如果你直接根据条件锁定只查最近一年的表,那么,那么对于 10 年的数据量来说,你只需要查 1/10 的数据,这个的性能提升是非常可观的
谢谢,应该是你最后说的,如果拆表,会根据条件只锁定几个表的,如果时间长了表拆多了是不是了也要考虑建个新库?这个一个库多少表合适?
rucypli 2017-09-21
  • 打赏
  • 举报
回复
先考虑查询慢的问题是否可以通过优化sql来解决
lifewell1 2017-09-21
  • 打赏
  • 举报
回复
几十万数据还好吧 ,不用分表,加入索引 然后按照月份分期就好 我这边有高达每天上亿的数据才分表的
zjcxc 2017-09-21
  • 打赏
  • 举报
回复
拆库通常是要考虑的,一个库中太多的表管理起来也麻烦 拆表对天大数据通常来说是必须考虑的,性能的提升取决于你的查询和处理方法 比如,如果你拆表了,查最近一年的数据 如果还是通过一个 UNION ALL 所有表的视图(或者类似的方法)去查,那么效率提升有限 但如果你直接根据条件锁定只查最近一年的表,那么,那么对于 10 年的数据量来说,你只需要查 1/10 的数据,这个的性能提升是非常可观的
LWLIFE 2017-09-21
  • 打赏
  • 举报
回复
引用 1 楼 rucypli 的回复:
先考虑查询慢的问题是否可以通过优化sql来解决
谢谢回复,这个优化考虑过,但现在的量确实太大了才考虑分表的

56,675

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧