当前位置: 首页 > 科技观察

为什么互联网公司不用MySQL分区表?

时间:2023-03-15 13:17:40 科技观察

出处:有朋友问我分区表在58的应用,答不上来。在我的印象中,百度和58都没有听说过分区表的应用。大多是自己分库分表,不使用分区表。于是上网查了下,请58到家的DBA专家把我收到的资料收集起来分享给大家。它解决了什么问题?答:当mysql单表数据库过大时,数据库的访问速度会下降。“大数据量”问题的常见解决方案是“水平切分”。mysql常见的水平切分方式有哪些?答:分库分表,分区表什么是mysql分库分表?答:把一个大库(表)的数据分成若干个库(表),每个库(表)的结构是一样的,但可能分布在不同的mysql实例甚至不同的物理机上,以达到目的减少单库(表)的数据量,提高访问性能。分库分表往往由业务层来实现。分库分表后,为了满足某些特定的业务功能,往往需要修改代码。什么是mysql分区表?答:所有的数据还是在一张表中,只是物理存储按照一定的规则放在了不同的文件中。这是mysql支持的功能,业务rd代码不用改。看来分区表很帅啊。为什么大部分互联网还是选择分库分表来横向扩展?答:分区表,分区键设计不是很灵活。一旦数据量和并发量增加,如果在分区表中实现关联,自己分库分表,自己控制业务场景和访问方式,是可控的,那就是灾难。分区表,研发写了一个sql,不清楚mysql是怎么运行的,运维的坑不是很可控,呵呵。。。文章很短,一分钟搞定。希望每个人都能有所收获。如果您有任何疑问,请询问。如果你明白,请教DBA专家。如果大家有分区表的应用,踩到什么坑了,也可以回复,下一篇分享。埋坑:如何进行水平切分、分库分表?如果大家有兴趣,以后会和大家聊聊更多的数据库架构。文章转载自微信公众号《建筑师之路》