什么是MyCat


这篇文章主要讲解了“什么是MyCat”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“什么是MyCat”吧!  MyCat 是目前最流行的基于 java 语言编写的数据库中间件,是一个实现了 MySQL 协议的服务器,前端用户可以把它看作是一个数据库代理,用 MySQL 客户端工具和命令行访问,而其后端可以用 MySQL 原生协议与多个 MySQL 服务器通信,也可以用 JDBC 协议与大多数主流数据库服务器通信,其核心功能是分库分表。配合数据库的主从模式还可实现读写分离
  MyCat 是基于阿里开源的 Cobar 产品而研发,Cobar 的稳定性、可靠性、优秀的架构和性能以及众多成熟的使用案例使得 MyCat 变得非常的强大。
  MyCat 发展到目前的版本,已经不是一个单纯的 MySQL 代理了,它的后端可以支持MySQL、SQL Server、Oracle、DB2、PostgreSQL 等主流数据库,也支持 MongoDB 这种新型NoSQL 方式的存储,未来还会支持更多类型的存储。而在最终用户看来,无论是那种存储方式,在 MyCat 里,都是一个传统的数据库表,支持标准的 SQL 语句进行数据的操作,这样一来,对前端业务系统来说,可以大幅降低开发难度,提升开发速度。
  MyCat 官网: http://www.mycat.io/  单一的 MySQL 其数据存储量级和操作量级有限.
  Mycat 可以管理若干 MySQL 数据库,同时实现数据的存储和操作.Mycat 是 java 编写的中间件. 开源,免费.有非常多的人和组织对 Mycat 实行开发,维护,管理,更新.Mycat 版本提升较快,可以跟随环境发展.如果有问题,可以快速解决.Mycat 有开源网站和开源社区.且有官方发布的电子书籍.Mycat 是阿里原应用 corba 转型而来的.  MyCat 在互联网应用中占比非常高.  逻辑上的切分. 在物理层面,是使用多库[database],多表[table]实现的切分.  就是把原本存储于一个库的数据存储到多个库上
  由于对数据库的读写都是对同一个库进行操作,所以单库并不能解决大规模并发写入的问题。例如,我们会建立定义数据库 workDB、商品数据库 payDB、用户数据库 userDB、日志数据库 logDB 等,分别用于存储项目数据定义表、商品定义表、用户数据表、日志数据表等。优点减少增量数据写入时的锁对查询的影响。由于单表数量下降,常见的查询操作由于减少了需要扫描的记录,使得单表单次查询所需的检索行数变少,减少了磁盘 IO,时延变短。缺点:无法解决单表数据量太大的问题。  把原本存储于一个表的数据分块存储到多个表上。
  当一个表中的数据量过大时,我们可以把该表的数据按照某种规则,进行划分,然后存储到多个结构相同的表,和不同的库上。例如,我们 userDB 中的 userTable 中数据量很大,那么可以把 userDB 切分为结构相同的多个 userDB:part0DB、part1DB 等,再将 userDB 上的 userTable,切分为很多userTable:userTable0、userTable1 等,然后将这些表按照一定的规则存储到多个 userDB 上。优点单表的并发能力提高了,磁盘 I/O 性能也提高了。如果出现高并发的话,总表可以根据不同的查询,将并发压力分到不同的小表里面。缺点:无法实现表连接查询。  Mycat 中定义的 database.是逻辑上存在的.但是物理上是不存在的.主要是针对纵向切分提供的概念.  Mycat 中定义的 table.是逻辑上存在,物理上是不存在的.主要是针对横向切分提供的概念.  物理 MySQL 存放的主机地址.可以使用主机名,IP,域名定义.  配置物理的 database. 数据保存的物理节点.就是 database.  当控制数据的时候,如何访问物理 database 和 table.就是访问 dataHost 和 dataNode 的算法. 在 Mycat 香港云主机 处理具体的数据 CRUD 的时候,如何访问 dataHost 和 dataNode 的算法.如:哈希算法,crc32 算法等.感谢各位的阅读,以上就是“什么是MyCat”的内容了,经过本文的学习后,相信大家对什么是MyCat这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是开发云,小编将为大家推送更多相关知识点的文章,欢迎关注!

相关推荐: springboot开发单体web shop中Mybatis Generator如何生成common mapper

本篇文章为大家展示了springboot开发单体web shop中Mybatis Generator如何生成common mapper,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。在我们开启一个新项目的研发后,通常要编…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 08/11 11:01
下一篇 08/11 11:01

相关推荐