打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
MySQL分库分表有哪些成熟的中间件?不要破坏到原有程序设计的?

说说MyCat吧!!!!

首先Mycat是一个开源的分布式数据库系统,但是由于真正的数据库需要存储引擎的,而Mycat并没有存储引擎,所以并不是完全意义的分布式数据库系统的。

Mycat: 数据库中间件技术的:

这个前端使用中间件后端使用数据库(mysql oracle)支持的,可以对数据库集群有效的管理方便扩容,对大型数据表横纵分片,这个分片后的表连接的查询,是对前端开发处于透明状态的。

还有这个myCat 的话需要在JDK7版本以上运行。MyCat推荐使用mySql做集群的。

这个MyCAT 有提供编译好的安装包,支持 windows、Linux、Mac、Solaris的 等系统上安装运行了。

建议的数据切分原则的:

第一原则:能不切分尽量不要切分的。

第二原则:如果要切分一定要选择合适的切分规则,提前规划好的。

第三原则:数据切分尽量通过数据冗余或表分组来降低跨库 的Join 的可能吧。

这个第四原则:由于数据库中间件对数据 Join 实现的优劣难以把握,而且实现高性能难度极大,业务读取尽量少使用多表join的,可能分布式事务问题的。

讲讲Mycat的原理的 :

这个Mycat的原理中最重要的是拦截的,它拦截了用户发送过来的SQL语句,首先对SQL语句做了一些特定的分析::如分片分析的、路由分析、读写分离分析、缓存分析等的,然后将此SQL发往后端的真实数据库中,然后在并将返回的结果做适当的处理,最终再返回给用户了的了。

我最后数一下这个:

Mycat在1.6版本以后已经完全支持 XA 分布式强事务类型了的的,可以很好地解决分布式事物的基本问题了的。

这个完整的流程图如图所示结果了:

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
基于 MyCat 分布式数据库解决方案的学**汇总
MySQL 高可用:mysql+mycat实现数据库分片(分库分表)
这些开源的分库分表中间件,可能会有大用处?
千万数据的分库分表(一)
MyCat分库分表中间件研究
小米 Go 开发实践——用 Go 构建高性能数据库中间件
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服