用户名
Email
论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
应用中心
帖子
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com技术社区
»
论坛
›
开源技术
›
开源技术
›
ShardingSphere(原 Sharding-JDBC)是一套开源的分布式 ...
ShardingSphere(原 Sharding-JDBC)是一套开源的分布式数据库中间件办理方 ...
石小疯
论坛元老
|
2024-11-30 20:10:45
|
显示全部楼层
|
阅读模式
楼主
主题
1870
|
帖子
1870
|
积分
5610
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
ShardingSphere(原 Sharding-JDBC)是一套开源的分布式数据库中间件办理方案,它紧张用于办理数据库分库分表等场景下的数据管理问题。此中,Sharding-JDBC 是 ShardingSphere 的一个紧张组成部分,它以 Java JDBC 驱动的形式提供服务,在应用步伐层面实现分库分表等功能,对业务代码侵入性较小。
一、焦点功能
数据分片
水平分片:将数据按照肯定的规则分散存储到多个数据库或表中,以应对数据量的增长和提高查询性能。比方,可以根据用户 ID 的奇偶性将用户数据分布到不同的数据库表中。
垂直分片:将一个数据库中的不同表按照业务模块进行拆分,分别存储在不同的数据库中,以降低单个数据库的负载和提高系统的可扩展性。比如,将用户信息表和订单信息表分别存储在不同的数据库中。
读写分离
支持设置多个数据源,实现读操纵和写操纵的分离。可以将读操纵分配到多个从数据库上,以提高系统的读性能;写操纵则会集在主数据库上,保证数据的一致性。
比方,一个电商系统中,商品查询等读操纵可以分发到多个从数据库上,而订单提交等写操纵则发送到主数据库。
分布式事务
提供了多种分布式事务办理方案,如两阶段提交(2PC)、柔性事务等,以保证在分库分表情况下的数据一致性。
比方,在一个银行转账系统中,需要保证从一个账户扣款和向另一个账户入账两个操纵的原子性,即使在分库分表的情况下也不能出现数据不一致的情况。
数据库治理
提供了数据库毗连池管理、SQL 拦截和审计、数据加密等功能,以提高数据库的安全性和可管理性。
比方,可以对敏感数据进行加密存储,防止数据泄露;对 SQL 语句进行拦截和审计,以便进行性能分析和故障排查。
二、工作原理
客户端署理模式
Sharding-JDBC 以 JDBC 驱动的形式存在于应用步伐中,对应用步伐的 JDBC 操纵进行拦截和处置惩罚。当应用步伐执行 SQL 语句时,Sharding-JDBC 会根据设置的分片规则对 SQL 进行剖析、改写和路由,将其发送到精确的数据库或表中执行。
比方,应用步伐执行一条查询用户信息的 SQL 语句,Sharding-JDBC 会根据用户 ID 的分片规则确定要查询的数据库表,并将 SQL 语句改写为针对详细表的查询语句,然后发送到对应的数据库执行。
中间件模式
ShardingSphere 还提供了独立的中间件服务,即 Sharding-Proxy。它可以作为一个独立的数据库署理服务器,接收应用步伐的数据库请求,然后根据设置的分片规则进行处置惩罚,并将结果返回给应用步伐。
比方,应用步伐通过毗连 Sharding-Proxy 来访问数据库,Sharding-Proxy 会根据设置的分片规则将 SQL 语句转发到后端的多个数据库中执行,并将结果合并后返回给应用步伐。
三、上风
轻量级
以 Java 库的形式提供服务,对应用步伐的侵入性较小,无需对现有应用步伐进行大规模的改造。
相比传统的数据库中间件,ShardingSphere 的部署和维护本钱较低。
功能强大
提供了丰富的功能,包括数据分片、读写分离、分布式事务、数据库治理等,可以满足大多数分布式数据库场景的需求。
支持多种数据库,如 MySQL、PostgreSQL、Oracle 等,具有较好的通用性。
性能高效
通过优化 SQL 剖析和路由算法,以及采用毗连池管理等技术,提高了系统的性能和吞吐量。
在分库分表的情况下,可以大概有效地镌汰数据的冗余和提高查询服从。
社区活跃
ShardingSphere 拥有活跃的开源社区,不停有新的功能和优化推出,同时也有丰富的文档和案例供用户参考。
总之,ShardingSphere 是一个功能强大、轻量级、高性能的分布式数据库中间件办理方案,可以大概有效地帮助用户办理数据库分库分表等场景下的数据管理问题。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复
举报
0 个回复
正序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
发新帖
回复
石小疯
论坛元老
这个人很懒什么都没写!
楼主热帖
解决图片无法设置hover,以设置图片的 ...
SQL的多表查询
解决OpenCV的imread/imwrite在Qt环境不 ...
qrtz表初始化脚本_mysql
Hive安装与启动
C# GDI+ 画心形 跳动动画
几个函数的使用例子:更新VBRK-XBLNR, ...
MySQL基础(DDL、DML、DQL)
堆Pwn:House Of Storm利用手法
在 NGINX 中根据用户真实 IP 进行限制 ...
标签云
集成商
AI
运维
CIO
存储
服务器
登录参与点评抽奖加入IT实名职场社区
下次自动登录
忘记密码?点此找回!
登陆
新用户注册
用其它账号登录:
关闭
快速回复
返回顶部
返回列表