欢迎来到代码驿站!

Mysql

当前位置:首页 > 数据库 > Mysql

Mysql的水平分表与垂直分表的讲解

时间:2021-07-11 08:41:09|栏目:Mysql|点击:

在我上一篇文章中说过,mysql语句的优化有局限性,mysql语句的优化都是围绕着索引去优化的,那么如果mysql中的索引也解决不了海量数据查询慢的状况,那么有了水平分表与垂直分表的出现(我就是记录一下自己的理解)

水平分表:

如上图所示:另外三张表表结构是一样的  只不过把数据进行分别存放在这三张表中,如果要insert 或者query 那么都需要对id进行取余 然后table名进行拼接,那么就是一张完整的table_name

但是如果我需要对name进行分表呢 或者对email呢?

那么就需要用MD5进行加密 因为MD5加密后是16进制  那么就就可以进行取余,思路同上。

垂直分表:

为什么需要进行垂直分表?

因为如果一张表中 有一个大字段 而且并不是必须要展示的或者不是当前需要用的  那么虽然没有刻意去查询  但是在根据id或者其他索引进行查询的时候就会把大字段一起查出来,会严重影响查询的性能,所以才有的垂直分表

详细请看下图:

以上就是水平分表和垂直分表的一种思路,水平有限 不足之处 请指出 谢谢

总结

上一篇:mysql MGR 单主多主模式切换知识点详解

栏    目:Mysql

下一篇:阿里云centos7安装mysql8.0.22的详细教程

本文标题:Mysql的水平分表与垂直分表的讲解

本文地址:http://www.codeinn.net/misctech/155606.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有