Mycat關鍵特性
關鍵特性
- 支持SQL92標准
- 支持MySQL、Oracle、DB2、SQL Server、PostgreSQL等DB的常見SQL語法
- 遵守Mysql原生協議,跨語言,跨平台,跨數據庫的通用中間件代理。
- 基於心跳的自動故障切換,支持讀寫分離,支持MySQL主從,以及galera cluster集群。
- 支持Galera for MySQL集群,Percona Cluster或者MariaDB cluster
- 基於Nio實現,有效管理線程,解決高並發問題。
- 支持數據的多片自動路由與聚合,支持sum,count,max等常用的聚合函數,支持跨庫分頁。
- 支持單庫內部任意join,支持跨庫2表join,甚至基於caltlet的多表join。
- 支持通過全局表,ER關系的分片策略,實現了高效的多表join查詢。
- 支持多租戶方案。
- 支持分布式事務(弱xa)。
- 支持XA分布式事務(1.6.5)。
- 支持全局序列號,解決分布式下的主鍵生成問題。
- 分片規則豐富,插件化開發,易於擴展。
- 強大的web,命令行監控。
- 支持前端作為MySQL通用代理,后端JDBC方式支持Oracle、DB2、SQL Server 、 mongodb 、巨杉。
- 支持密碼加密
- 支持服務降級
- 支持IP白名單
- 支持SQL黑名單、sql注入攻擊攔截
- 支持prepare預編譯指令(1.6)
- 支持非堆內存(Direct Memory)聚合計算(1.6)
- 支持PostgreSQL的native協議(1.6)
- 支持mysql和oracle存儲過程,out參數、多結果集返回(1.6)
- 支持zookeeper協調主從切換、zk序列、配置zk化(1.6)
- 支持庫內分表(1.6)
- 集群基於ZooKeeper管理,在線升級,擴容,智能優化,大數據處理(2.0開發版)。
什么是MYCAT
- 一個徹底開源的,面向企業應用開發的大數據庫集群
- 支持事務、ACID、可以替代MySQL的加強版數據庫
- 一個可以視為MySQL集群的企業級數據庫,用來替代昂貴的Oracle集群
- 一個融合內存緩存技術、NoSQL技術、HDFS大數據的新型SQL Server
- 結合傳統數據庫和新型分布式數據倉庫的新一代企業級數據庫產品
- 一個新穎的數據庫中間件產品
MYCAT監控
- 支持對Mycat、Mysql性能監控
- 支持對Mycat的JVM內存提供監控服務
- 支持對線程的監控
- 支持對操作系統的CPU、內存、磁盤、網絡的監控
目標
低成本的將現有的單機數據庫和應用平滑遷移到“雲”端,解決數據存儲和業務規模迅速增長情況下的數據瓶頸問題。
1.5版本架構
MYCAT官方論壇地址已更新為:i.mycat.io 歡迎大家訪問!MYCAT社區所打造的IT新生活!
長期規划2.0
- 完全實現分布式事務,完全的支持分布式。
- 通過Mycat web(eye)完成可視化配置,及智能監控,自動運維。
- 通過mysql 本地節點,完整的解決數據擴容難度,實現自動擴容機制,解決擴容難點。
- 支持基於zookeeper的主從切換及Mycat集群化管理。
- 通過Mycat Balance 替代第三方的Haproxy,LVS等第三方高可用,完整的兼容Mycat集群節點的動態上下線。
- 接入Spark等第三方工具,解決數據分析及大數據聚合的業務場景。
- 通過Mycat智能優化,分析分片熱點,提供合理的分片建議,索引建議,及數據切分實時業務建議。
優勢
基於阿里開源的Cobar產品而研發,Cobar的穩定性、可靠性、優秀的架構和性能以及眾多成熟的使用案例使得MYCAT一開始就擁有一個很好的起點,站在巨人的肩膀上,我們能看到更遠。業界優秀的開源項目和創新思路被廣泛融入到MYCAT的基因中,使得MYCAT在很多方面都領先於目前其他一些同類的開源項目,甚至超越某些商業產品。
MYCAT背后有一支強大的技術團隊,其參與者都是5年以上資深軟件工程師、架構師、DBA等,優秀的技術團隊保證了MYCAT的產品質量。