Mysql每日百万条数据怎么存储和查询

zhw890212 2017-05-18 11:25:09
我们公司会根据客户请求服务在其中一张表中插入日志数据,访问一次就会插入一条。根据运维反应一天会有将近500万的数据入库,原来的业务数据是存储在oracle中(插入没有问题,数据准备要拿去和客户进行对账,查询直接卡死了,所以没办法去对账,运维没办法工作),现在领导决定这个问题,数据库选择在mysql上做。我之前工作没有接触过这么大数据量的表。现在领导给出的方案是要用分表来解决。每张表数据达到500万后生成新表。但是分表的同时还要考虑用户名和时间两个查询维度,在分表的同时要根据这两个维度建表。最终要求20分钟能查询到数据就能满足要求,但是我觉得这样做不是问题的解决办法,也不清楚上面那样做能提升性能到什么程度,能不能满足要求。我现在想知道有没有已有正确的解决办法,我现在只能按领导说的办法去试试看看达到什么程度,没有这方面经验真的感觉无处下手,我先按分表的思路去解决吧,请大家看看我还可以怎么做。
...全文
888 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
c_sdn_shang_bu_qi 2017-05-26
  • 打赏
  • 举报
回复
365天每天一张表,10年单表也才5000万
ACMAIN_CHM 2017-05-23
  • 打赏
  • 举报
回复
分区表尝试一下。
zjcxc 2017-05-22
  • 打赏
  • 举报
回复
无尽的数据放在无尽的表是正常的,无尽的数据都堆在一个表才不正常吧
zjcxc 2017-05-19
  • 打赏
  • 举报
回复
直接按时间分表吧,如果 500 万一个表也嫌多,可以1小时一个表,反正你自己控制 分表之后,查询会比较简单,容易创建索引 分时间段查的话,根据时间段就可以直接锁定到要查哪些表 按用户编号查就需要查所有表,但每个表都有用户编号索引,并发从多个表可查出数据也可以很快(当然,满足条件的数据量大的话,这始终是需要花较长时间的)
ckc 2017-05-19
  • 打赏
  • 举报
回复
分表就可以啊,每天一张表就很简单
zhw890212 2017-05-19
  • 打赏
  • 举报
回复
感觉这样分表下去数据的表会无穷无尽啊

56,687

社区成员

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

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