什么是分库分表
- 分库分表方案是对关系型数据库数据存储和访问机制的一种补充。
- 分库:将一个库的数据拆分到多个相同的库中,访问的时候访问一个库
- 分表:把一个表的数据放到多个表中,操作对应的某个表就行
(1) 数据库垂直拆分
根据业务拆分,如图,电商系统,拆分成订单库,会员库,商品库
(2) 数据库水平拆分
按会员库拆分,拆分成会员1库,会员2库,以userId拆分,userId尾号0-5为1库 6-9为2库,还有其他方式,进行取模,偶数放到1库,奇数放到2库
(3) 表水平拆分
如图把users表拆分成users1表和users2表,以userId拆分,进行取模,偶数放到users1表,奇数放到users2表
(4)表垂直拆分
根据业务去拆分表,如图,把user表拆分成user_base表和user_info表,use_base负责存储登录,user_info负责存储基本用户信息
分库分表带来的问题
- - 分布式事务 - 跨库join查询 - 分布式全局唯一id - 开发成本 对程序员要求高
分库分表技术如何选型
- jdbc 直连层:shardingsphere、tddl
- proxy 代理层:mycat
点我进入
面试宝典
很多人不知道面试问什么,或者其他的XXGuide,那里边的太多没用的,也没有源码解析,都靠自己悟, 不懂得还是不懂,没人讲解, 所以面试宝典来了,阿里P7亲自录制
目录:
每一个专题都是 基础+面试题
--基础阶段剖析了很多源码比如Spring的 LongAdder ConcurrentHashMap源码 ThreadLocal源码 AQS SpringBoot等等。。。
享受服务:
购买后请私我
1.如何学习才能拿到Offer,加好友立马规划
2.基础知识+最全面试题视频解析
3.公司内推
4.简历修改
5.1V1VX永久答疑,一辈子的朋友
6.模拟面试1次
7.入职公司后第一个任务 技术方案指导
入职后技术方案编写答疑
学习过程中改bug截图:
课件分为:
分为 【张无忌的面试宝典】-Java校招·实习【上】 + 【张无忌的面试宝典】-Java校招·实习【下】+【张无忌的面试宝典】-Java校招·实习【补充】
我已经带过太多学生,大厂,国企,中厂都有过,比如最近带的一个学生,在秋招中签了国企,秀下Offer