mysql 动静数据分离

记录一下今天学习到的东西引发的思考,可能有些错误,还望指出


mysql在遇到大量数据时总要分表,对于分表时用join进行分页或者聚合会导致查询很慢,于是我们需要一种方式来完善这个

merge引擎:
这个引擎不储存数据,而是把一组MyISAM数据表当成一个逻辑单元对待,这让我们可以同时对这一组表进行查询。

MyISAM引擎:
5.x版本的默认引擎(现在是innodb)不支持事务,读的速度很快,同时有读写的情况并发量很低(读和写会加锁),适用于储存静态数据。

跟据上面两个引擎的优点,我们可以有一下做法,比如常见的订单的业务,需要读和写,并且有大量的静态数据(历史已完成交易的订单)。可以用以下方案:

1.对于已经交易完成的订单,可以用MyISAM引擎建表按照时间进行分表然后合并到merge表中查找这方面的记录就走merge表

2.对于未完成的订单用innodb引擎建表并储存,并写一个定时任务定时将已完成的订单移交到历史表中#Java#
全部评论

相关推荐

不愿透露姓名的神秘牛友
02-12 10:05
小米集团 算法工程师 28.0k*15.0
泡沫灬一触即破:楼上那个看来是看人拿高薪,自己又不如意搁这泄愤呢是吧,看你过往评论很难不怀疑你的精神状态
点赞 评论 收藏
分享
野猪不是猪🐗:把你的学校加黑,加粗,斜体,下划线,描边,内阴影,内发光,投影,外发光,再上渐变色,居中,放大到最大字号,再把简历里其它内容删了,就行了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务