Mysql千万级别数据存储优化

 因为公司是做短信业务的,随着数据量的增加每天新增数据将近200w+,数据全部存放至Mongodb中,总数据量将近3.2亿,业务查询相关出现缓慢,于是决定将一周以前的数据存储至Mysql中并对其进行优化处理。

公司内部方案

  1. 方案一:采用Tidb进行查询优化

 优点:支持高并发、高可用支持无限水平扩展。

详细可见:(https://pingcap.com/docs-cn/dev/key-features/#%e6%b0%b4%e5%b9%b3%e6%89%a9%e5%b1%95)。

数据量少时没什么明显,千万级别出现明显优化查询但是大批量分页查询还是会比较迟钝的,如:分页查询仍然会比较慢,比如查询至9000页以上数据出现仍然很慢

缺点:维护成本高,服务器配置要求较高

2.          方案二:Oracle采用“物化视图”进行优化

详细见:https://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_2001.htm

3.          方案二:Mysql采用水平分表、垂直分表优化(采取方案)

优点:维护成本低,门槛低人人可维护,如果后期需要转移则可直接将Mysql数据转移至Tidb中

业务:将Mongodb中一周以前的数据转移至Mysql,每天将近300w+数据量,双十一高峰时期一天1000W+数据量,转移至Mysql中。

MyISAM水平分表优化:https://blog.csdn.net/qq_31150503/article/details/105450236

分区优化:https://blog.csdn.net/qq_31150503/article/details/105451273

解决方案:

采用定时任务每天将Mongodb中的数据查询并迁移保存至Mysql中

实现方案:

https://blog.csdn.net/qq_31150503/article/details/105451876

存储方案:

https://blog.csdn.net/qq_31150503/article/details/105451273

 
发布了25 篇原创文章 · 获赞 9 · 访问量 46万+

猜你喜欢

转载自blog.csdn.net/qq_31150503/article/details/105449498