MySQL:可以不会 ,不能不知的SpringBoot+Sharding-JDBC分库分表项目实战( 二 )


据库整体性能 。 核心理念就是对数据进行切分(Sharding) , 以及切分后如何对数据的快速定位与整合 。
针对数据切分类型 , 大致可以分为:垂直(纵向)切分和水平(横向)切分两种 。
1、垂直分片
? 按照业务拆分的方式称为垂直分片 , 又称为纵向拆分 , 它的核心理念是专库专用 。 在拆分之前 , 一个数据库由多个数据表构成 , 每个表对应着不同的业务 。 而拆分之后 , 则是按照业务将表进行归类 , 分布到不同的数据库中 , 从而将压力分散至不同的数据库 。 下图展示了根据业务需要 , 将用户表和订单表垂直分片到不同的数据库的方案 。
MySQL:可以不会 ,不能不知的SpringBoot+Sharding-JDBC分库分表项目实战
本文插图
2、水平切分
? 水平分片又称为横向拆分 。 相对于垂直分片 , 它不再将数据根据业务逻辑分类 , 而是通过某个字段(或某几个字段) , 根据某种规则将数据分散至多个库或表中 , 每个分片仅包含数据的一部分 。 例如:根据主键分片 , 偶数主键的记录放入0库(或表) , 奇数主键的记录放入1库(或表)
MySQL:可以不会 ,不能不知的SpringBoot+Sharding-JDBC分库分表项目实战
本文插图
四、课程大纲
MySQL:可以不会 ,不能不知的SpringBoot+Sharding-JDBC分库分表项目实战
本文插图
通过以上内容 , 大家对Sharding-JDBC有了新的了解 , 如果你实战中想要体验分布式开发新技能 , 可以参与到我们的新项目实战中!
课程上新Q&A
1. 适合人群:
SpringBoot 基础
2. 使用的版本号是?
SpringBoot 2.1.1
3. 没有Spring Boot基础怎么办?
需要先学习Spring Boot基础(从零开始学SpringBoot)【可以在实训邦学习
4. 现在的学习资料和视频大多都是1.4、1.5的 , 2.0比较少 , 对于学习有影响嘛?
(1)1.0版本到2.0版本的跨越 , 主要是新特性的增加 , 旧的特性还是一样的 , 学习完1.0版本的 , 升级到2.0版本是比较容易的 。
(2)阿里现在有些项目还是使用1.4.7和1.5.8版本的 , 对于实际项目还是稳定为主 , 而不是追求最新的 。
(3)官网1.X的版本也有在维护 , 目前最新版本是1.5.18 。


推荐阅读