概念
为什么要使用分库分表
当数据库数量大降低数据库性能才是用Sharding分库分表
提升性能。
什么是分库分表
分库分表就是为啦解决由于数据量较大导致数据库性能降低的问,将原来独立的数据库查分成若干数据库组成,将数据大表拆成若干数据表组成,是得单一数据库,丹玉数据表的数据量变小,而达到提升数据库性能的目的
分库分表的四只种方式
垂直分库,水平分库,垂直分表,水瓶分表
垂直分表:
是根据查询频率的高低把他分成不同的表
吧不同字段放到一个表 把大字段的放到一个表
经常用的放到一个表
垂直分库l
垂直分库通过将表按业务分类,然后分布在不同数据库,并且介意将这些数据库部署在不同服务器上,而达到多个服务器共同分摊压力的效果但是依然没有解决单标数据量交大的问题。
水平分库:
水平分库是吧通一个表的数据按一定规则拆到不同的数据库中,没个库可以放在不同的服务器上 结构一致
水平分表
是在通一个数据库内,吧通一个表的数据按一定规则拆到多表中,拆分的表结构一致。
Sharding-JDBC介绍
可以写一条sql语句查询不同库不同表
Sharding-JDBC SQL
Sharding-JDBC 接收一个SQL语句执行流程是
SQL解析–>SQL路由–>SQL改写–>SQL执行–>结果规并
SQL路由
SQL路由就是把针对逻辑表的数据操作映射到对数据节点操作的过程。