ShardingSphere-简介 | 学习笔记

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 快速学习ShardingSphere-简介。

开发者学堂课程【数据库中间件ShardingSphere详解ShardingSphere-简介】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/666/detail/11239


ShardingSphere-简介

 

打开 Apache 的官网,通过官网来看什么是 ShardingSphere ,或者说 ShardingSphere 到底可以做什么事情。在浏览器中输入shardingSphere.apache.org/index_zh.html 即可。

9.1.png

 

Apache ShardingSphere 是一套开源的分布式数据库中间件解决方案组成的生态圈,主要是针对数据库中间件的一些操作,他有三个独立的产品,并且又能混合部署配合使用,一个叫 Sharding-JDBC ,一个叫 Sharding-Proxy 还有一个叫 Sharding-Sidecar ,第三个产品目前正在规划中,所以重点为两个,这些产品店铺能提供标准化数据分片、分布式事务和数据库治理功能,适用于如 Java 同构、异构语言、云原生等各种多样化的应用场景。

ShardingSphere 定位为关系型数据库中间件,旨在充分合理地在分布式场景下利用关系型数摆车的计算和存储能力,例如,关系型数据库随着数据量的增加,会遇到很多瓶颈,而遇到瓶颈之后怎么做,可以对数据库进行分库分表操作,而 ShardingSphere  就是来解决这个问题而产生的关系型数据库的中间件,而并非实现一个全新的关系型数据库。它通过关注不变,进而抓住事物本质,关系型数据库当今依然占有巨大市场,是各个公司核心业务的基石,未来也难于动,我们目前阶段更加关注在原有基础上的增量,而非颠覆。

ShardlngSphere 已经在 2020 4 16 日成为 Apache 顶级项目( Apache 官方发布从 4.0.0 版本开始)。

什么是 ShardingSphere

1、一套开源的分布式数据库中间件解决方案

2、有三个产品: Sharding-JDBCSharding-ProxySharding-Sidecar,主要学前两个产品的使用

3、定位为关系型数据库中间件,合理在分布式环境下使用关系型数据库

下面是他的具体功能,了解更多界面中,介绍了他的三款产品的特点。首先看第一个产品叫做 Sharding-JDBC ,这里说 Sharding-JDBC 是轻量级 Java 框架,这句话应该感觉很熟悉,比如说之前学过的 SpringMybatis 都是轻量级的框架,而 Sharding-JDBC 也定位为轻量级的框架,他是在 Java JDBC 层提供额外服务。他使用客户端直连数据库,以 jar 包形式提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架。

1)适用于任何基于 JDBC ORM 框架,如:JPA, Hibernate , Mybatis , Spring JDBC Template 或直接使用JDBC

2)支持任何第三方的数据库连接池,如: DBCP ,C3PO, BoneCP , Druld , HikariCP 等。

3)支持任意实现 JDBC 规范的数据库。目前支持 MySQL ,Oracle , SQLServer , PostgreSQL 以及任何遵循 SQL92 标准的数据库。

第二个产品叫做 Sharding-Proxy ,定位为透明化的数据库代理端,提供封装了数据库二进制协议的服务端版本,用于完成对异构语言的支持,目前先提供的 MySQL/PoetgreSQL 版本,它可以使用任何兼容MySQL/PoetgreSQLxie 协议的访问进入客户端(如:MySQL Command ClientMySQL WorkbenchNavicat 等 )操作数据,对 DBA 更加友好。

比如录入数据的时候可以用客户端工具与数据库进行连接,而数据库有很多,比如常见的 Navicat 等等,那客户端究竟怎样连接数据库,这个过程是怎样不知道,而现在用了Sharding-JDBC ,他把这个过程完全透明了,就是他怎样做到可以通过配置进行实现,可以把它当做MySQL/PoetgreSQL 进行使用,这个叫 Sharding-Proxy,另外他适用于任何兼容的 MySQL/PoetgreSQL 客户端工具。

ShardingSphere 是一个分布式的环境下的一个中间件的解决方案,他有三款产品,重点关注前两个    Sharding-JDBC、Sharding-Proxy ,另外它定位为关系型数据库的中间件,用于在合理环境下使用关系型数据库进行操作。Sharding-JDBC 是轻量级 Java 框架, Sharding-Proxy 是一个透明化的数据库代理端。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
5月前
|
SQL 算法 Java
数据库系列课程(08)-SpringBoot整合Sharding-Jdbc
数据库系列课程(08)-SpringBoot整合Sharding-Jdbc
64 0
|
7月前
|
SQL 算法 搜索推荐
Mqsql使用Sharding-JDBC案例实战 2
Mqsql使用Sharding-JDBC案例实战
63 0
|
7月前
|
算法 Java 关系型数据库
Mqsql使用Sharding-JDBC案例实战 1
Mqsql使用Sharding-JDBC案例实战
24 0
|
5月前
|
SQL 关系型数据库 Java
数据库系列课程(07)-Sharding-Jdbc简介
数据库系列课程(07)-Sharding-Jdbc简介
52 0
|
5月前
|
SQL Java 中间件
Springboot集成 Sharding-JDBC + Mybatis-Plus实现分库分表(源码)
Sharding-jdbc是开源的数据库操作中间件;定位为轻量级Java框架,在Java的JDBC层提供的额外服务。它使用客户端直连数据库,以jar包形式提供服务,无需额外部署和依赖,可理解为增强版的JDBC驱动,完全兼容JDBC和各种ORM框架。
|
8月前
|
SQL XML 算法
|
9月前
|
关系型数据库
ShardingSphere 实战
ShardingSphere 实战
50 0
|
10月前
|
存储 弹性计算 算法
《微服务实战》 第三十一章 ShardingSphere - ShardingSphere-JDBC(上)
《微服务实战》 第三十一章 ShardingSphere - ShardingSphere-JDBC(上)
110 0
|
10月前
|
算法 微服务
《微服务实战》 第三十一章 ShardingSphere - ShardingSphere-JDBC(下)
《微服务实战》 第三十一章 ShardingSphere - ShardingSphere-JDBC(下)
91 0