ShardingSphere简介

什么是 ShardingSphere

官方文档:https://shardingsphere.apache.org/document/current/cn/overview 

1、一套开源的分布式数据库中间件解决方案
2、有三个产品: Sharding-JDBC 和 Sharding-Proxy
3、定位为关系型数据库中间件,合理在分布式环境下使用关系型数据库操作

什么是分库分表

1、数据库数据量不可控的,随着时间和业务发展,造成表里面数据越来越多,如果再去对数
据库表 curd 操作时候,造成性能问题。
2、方案 1:从硬件上
3、方案 2:分库分表
* 为了解决由于数据量过大而造成数据库性能降低问题

分库分表的方式

1、分库分表有两种方式:垂直切分和水平切分
2、垂直切分:垂直分表和垂直分库
3、水平切分:水平分表和水平分库

4、垂直分表
( 1)操作数据库中某张表,把这张表中一部分字段数据存到一张新表里面,再把这张表另一
部分字段数据存到另外一张表里面

5、垂直分库
(1)把单一数据库按照业务进行划分,专库专表

6、水平分库

7、水平分表

分库分表应用和问题 

1、应用
(1)在数据库设计时候考虑垂直分库和垂直分表
( 2)随着数据库数据量增加,不要马上考虑做水平切分,首先考虑缓存处理,读写分离,使
用索引等等方式,如果这些方式不能根本解决问题了,再考虑做水平分库和水平分表
2、分库分表问题
(1) 跨节点连接查询问题(分页、排序)
(2)多数据源管理问题
原文地址:https://www.cnblogs.com/weianlai/p/14589497.html