# **誕生背景**
## **海量數據的存儲問題**
```
如今隨著互聯網的發展,數據的量級也是撐指數的增長,從GB到TB到PB。對數據的各種操作也是愈加的困難,傳統的關系性數
據庫已經無法滿足快速查詢與插入數據的需求。這個時候NoSQL的出現暫時解決了這一危機。它通過降低數據的安全性,減少對
事務的支持,減少對復雜查詢的支持,來獲取性能上的提升。但是,在有些場合NoSQL一些折中是無法滿足使用場景的,就比如
有些使用場景是絕對要有事務與安全指標的。這個時候NoSQL肯定是無法滿足的,所以還是需要使用關系性數據庫。如果使用關
系型數據庫解決海量存儲的問題呢?此時就需要做數據庫集群,為了提高查詢性能將一個數據庫的數據分散到不同的數據庫中存
儲。
```
## **什么是數據庫分片**
```
簡單來說,就是指通過某種特定的條件,將我們存放在同一個數據庫中的數據分散存放到多個數據庫(主機)上面,以達到分散
單臺設備負載的效果。數據的切分(Sharding)根據其切分規則的類型,可以分為兩種切分模式。一種是按照不同的表(或者
Schema)來切分到不同的數據庫(主機)之上,這種切可以稱之為數據的垂直(縱向)切分
```
**數據的垂直(縱向)切分示意圖**
:-: 
```
另外一種則是根據表中的數據的邏輯關系,將同一個表中的數據按照某種條件拆分到多臺數據庫(主機)上面,這種切分稱之為
數據的水平(橫向)切分。
```
**如何實現數據庫分片**
```
當數據庫分片后,數據由一個數據庫分散到多個數據庫中。此時系統要查詢時需要切換不同的數據庫進行查詢,那么系統如何知
道要查詢的數據在哪個數據庫中?當添加一條記錄時要向哪個數據庫中插入呢?這些問題處理起來都是非常的麻煩。這種情況下
可以使用一個數據庫中間件mycat來解決相關的問題。接下來了解一下什么是mycat。
```
## **什么是Mycat**
```
Mycat 背后是阿里曾經開源的知名產品——Cobar。Cobar 的核心功能和優勢是 MySQL 數據庫分片,此產品曾經廣為流傳,據
說最早的發起者對 Mysql 很精通,后來從阿里跳槽了,阿里隨后開源的 Cobar,并維持到 2013 年年初,然后,就沒有然后
了。Cobar 的思路和實現路徑的確不錯。基于 Java 開發的,實現了 MySQL 公開的二進制傳輸協議,巧妙地將自己偽裝成一
MySQL Server,目前市面上絕大多數 MySQL 客戶端工具和應用都能兼容。比自己實現一個新的數據庫協議要明智的多,
因為生態環境在哪里擺著。Mycat 是基于 cobar 演變而來,對cobar 的代碼進行了徹底的重構,使用 NIO 重構了網絡模塊,
并且優化Buffer內核,增強了聚合,Join 等基本特性,同時兼容絕大多數數據庫成為通用的數據庫中間件。簡單的說,
MyCAT就是:一個新穎的數據庫中間件產品支持mysql集群,或者mariadb cluster,提供高可用性數據分片集群。你可以
像使用mysql一樣使用mycat。對于開發人員來說根本感覺不到mycat的存在
```

## **Mycat支持的數據庫**

## **關鍵特性**

- 序言
- 系統要求
- 版本更新日志
- 遠豐商城技術對接說明
- 開發指導
- 系統架構
- 負載集群
- 云存儲
- 框架內容
- 基礎
- 開發規范
- 目錄結構
- 架構
- 架構總覽
- 數據庫
- 數據庫連接
- 基本使用
- 緩存
- 配置
- 路由
- 數據字典
- ucenter
- shop
- paycenter
- ucenter_admin
- shop_admin
- paycenter_admin
- shop1
- shop2
- shop3
- 通訊內容
- 商家中心
- 頂部導航欄
- 店鋪信息欄
- 店鋪及商品提示欄
- 交易提示欄
- 銷售情況統計欄
- 集群架構圖
- 單品銷量排行欄
- 店鋪運營推廣欄
- 平臺聯系方式欄
- 訂單物流
- 商品
- 商品列表
- 商品詳情
- 商品發布與編輯
- 分銷商品
- 關聯版式
- 商品規格
- 圖片空間
- 淘寶導入
- 訂單流程
- 交易訂單
- 訂單退款/退貨
- 促銷
- 團購管理
- 加價購
- 限時折扣
- 滿即送
- 代金券管理
- 分銷
- 店鋪
- 店鋪設置
- 自銷產品供應商
- 實體店鋪
- 品牌申請
- 店鋪信息
- 消費者保障服務
- 門店賬號
- 分銷商--產品供應商
- 分銷明細
- 批發市場
- 商家微信公眾號
- 售后服務
- 咨詢管理
- 投訴管理
- 退款管理
- 退貨管理
- 雜項
- 遠程上傳圖片
- 接口(廢棄,參考最外層接口項)
- 接口說明
- 品牌
- 商品規格
- 商品類型
- 商品分類
- 商品
- 訂單
- 商品/店鋪收藏
- 足跡
- 退款及退貨
- 商家店鋪
- 會員
- 入駐協議
- 訂單接口
- 商品接口
- 訂單物流接口
- 商家中心接口
- 促銷接口
- 快遞鳥物流接口
- 代金券接口
- 首頁版塊
- 團購
- 平臺紅包
- 限時折扣接口
- 拼團接口
- wap首頁模板
- JS
- 銀聯支付
- 多語言
- 商品評分
- 圖片加載
- 買家申請退款退貨
- 商家退款退貨
- 平臺退款退貨
- 添加發票
- 提交訂單
- 確認訂單
- 運費銷售區域
- 獲取會員地址
- 充值
- 導出XLS
- 商城系統集成
- 多語言實現
- 三級分銷推廣鏈接發展推廣員
- app.ini.php
- 去分銷
- 版本更新
- 物流支持
- 運營人員建議
- 業務邏輯
- 統計結算
- 客服消息
- 賬號
- 三級分銷
- IM
- 配置
- 平臺帳號
- 活動數據表說明
- 接口
- 數據庫中間鍵
- MyCat的優勢
- 概念說明
- Mycat的下載及安裝
- 參數配置案列
- Mycat讀寫分離
- 基本命令
- 常見錯誤