简介
在互联网海量数据的今天,我们需要存储的数据也越来越多,在使用关系型数据库,例如mysql时,单表所需存储的数据也越来越多,但是关系型数据库在单表数据数据量较大的情况下,单表性能会急剧下降,面对这个问题,常见的做法就是进行分表,但是单纯的分表只能减少单表的压力,不能减轻数据库的压力,所以在分表的同时往往也会进行分库操作。
往往很多新事物的产生都是伴随着为了解决现实中存在的问题。在面对海量数据的存储问题上,业界有两种解决方案:1、构建实现一种全新的数据库,像nosql这类非关系型数据,例如:MongDB、 Redis、Memcache。2、在原有关系型数据库的基础上提供增量,而非颠覆,例如shardingsphere在做的。由于nosql无法在根本上取代现有的关系型数据库,例如:mysql、oracle等,所以某种意义上这两种方案各有自己的适用场景,没有谁更优秀一说。
ShardingSphere官网将其分为
ShardingSphere-JDBC #对java jdbc的增强
ShardingSphere-Proxy # 对数据库进行代理 目前提供 MySQL 和 PostgreSQL 版本
ShardingSphere-Sidecar #边车模式 还在开发中 数据网格的管理方式,未来可期
知识梳理
总结
脑图只画了部分,后面慢慢补充,今天做个简单的知识梳理,以便后面开始真刀真枪的读源码。还是那句:后续还会继续深入Shardingsphere的原码学习。