真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)-創(chuàng)新互聯(lián)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

學(xué)習(xí) mycat mysql

創(chuàng)新互聯(lián)是一家專業(yè)提供師宗企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)H5建站、小程序制作等業(yè)務(wù)。10年已為師宗眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進(jìn)行中。
  • Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

  • 1. Mycat是什么

  • 2. Mycat與其他中間件的區(qū)別

    • 2.1 Mango

    • 2.2 Cobar

    • 2.3 Heisenberg

    • 2.4 Atlas

    • 2.5 Ameoba

  • 3. Mycat能解決的問題

  • 4. Mycat核心概念

    • 4.2.1 分片表

    • 4.2.2 非分片表

    • 4.2.3 ER表

    • 4.2.4 全局表

    • 4.1 邏輯庫(kù)(schema)

    • 4.2 邏輯表(table)

    • 4.3 分片節(jié)點(diǎn)(dataNode)

    • 4.4 節(jié)點(diǎn)主機(jī)(dataHost)

  • 5. Mycat文件夾以及文件介紹

1. Mycat是什么

Mycat是一個(gè)徹底開源的面向企業(yè)應(yīng)用開發(fā)的大數(shù)據(jù)庫(kù)集群,支持事務(wù)、ACID,是可以替代MySQL的加強(qiáng)版數(shù)據(jù)庫(kù)。Mycat被視為MySQL集群的企業(yè)級(jí)數(shù)據(jù)庫(kù),用來替代昂貴的Oracle集群,它是融合了內(nèi)存緩存技術(shù)、NoSQL技術(shù)、HDFS大數(shù)據(jù)的新型SQL Server,是結(jié)合了傳統(tǒng)數(shù)據(jù)庫(kù)和新型分布式數(shù)據(jù)倉(cāng)庫(kù)的新一代的企業(yè)級(jí)數(shù)據(jù)庫(kù)產(chǎn)品,也是一個(gè)優(yōu)秀的數(shù)據(jù)庫(kù)中間件。

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

2. Mycat與其他中間件的區(qū)別

目前的數(shù)據(jù)庫(kù)中間件有很多。

2.1 Mango

Mango的中文名是“芒果”,它是一個(gè)輕量級(jí)的極速數(shù)據(jù)層訪問框架,目前已有十多個(gè)大型線上項(xiàng)目在使用它。據(jù)稱,某一支付系統(tǒng)利用Mango承載了每秒12萬的支付下單請(qǐng)求,其超高的性能及超快的響應(yīng)速度幾乎相當(dāng)于直接使用JDBC。它采用接口與注解的形式定義DAO,完美地結(jié)合了db與cache操作;支持動(dòng)態(tài)SQL,可以構(gòu)造任意復(fù)雜的SQL語(yǔ)句;支持多數(shù)據(jù)源、分表、分庫(kù)、事務(wù);內(nèi)嵌“函數(shù)式調(diào)用”功能,能將任意復(fù)雜的對(duì)象映射到數(shù)據(jù)庫(kù)的表中。但是從整體上看Mango是一個(gè)Java Dao Framework,是一個(gè)jar包,它的運(yùn)行依賴于應(yīng)用系統(tǒng)的項(xiàng)目代碼和服務(wù)器,采用了JDBC Shard思想,與TDDL是同款產(chǎn)品。

2.2 Cobar

Cobar是阿里巴巴研發(fā)的關(guān)系型數(shù)據(jù)的分布式處理系統(tǒng)(Amoeba的升級(jí)版,該產(chǎn)品成功替代了原先基于Oracle的數(shù)據(jù)存儲(chǔ)方案,目前已經(jīng)接管了3000多個(gè)MySQL數(shù)據(jù)庫(kù)的scheme,平均每天處理近50億次的SQL執(zhí)行請(qǐng)求。

2.3 Heisenberg

Heisenberg源于Cobar,結(jié)合了Cobar和TDDL的優(yōu)勢(shì),讓其分片策略變?yōu)榉謳?kù)分表策略,節(jié)約了大量的連接。優(yōu)點(diǎn)是分庫(kù)分表與應(yīng)用脫離,分庫(kù)分表如同使用單庫(kù)表一樣,減少了db連接數(shù)的壓力,采用熱重啟配置,可水平擴(kuò)容,并遵循 MySQL原生協(xié)議,采用讀寫分離,無語(yǔ)言限制。MySQL Client、C、Java等都可以使用Heisenberg服務(wù)器通過管理命令查看和調(diào)整連接數(shù)、線程池、節(jié)點(diǎn)等。Heisenberg采用velocity的分庫(kù)分表腳本進(jìn)行自定義分庫(kù)分表,相當(dāng)靈活。

2.4 Atlas

Atlas是由奇虎360的Web平臺(tái)部基礎(chǔ)架構(gòu)團(tuán)隊(duì)開發(fā)維護(hù)的一個(gè)基于MySQL協(xié)議的數(shù)據(jù)庫(kù)中間層項(xiàng)目。它在MySQL-proxy 0.8.2版本的基礎(chǔ)上進(jìn)行了優(yōu)化,增加了一些新的功能和特性。奇虎360內(nèi)部使用Atlas運(yùn)行的MySQL業(yè)務(wù),每天承載的讀寫請(qǐng)求數(shù)達(dá)幾十億條。Atlas位于應(yīng)用程序與MySQL之間,實(shí)現(xiàn)了MySQL的客戶端與服務(wù)端協(xié)議,作為服務(wù)端與應(yīng)用程序通信,同時(shí)作為客戶端與MySQL通信。它對(duì)應(yīng)用程序屏蔽了db的細(xì)節(jié),同時(shí)為了降低MySQL的負(fù)擔(dān),維護(hù)了連接池。

2.5 Ameoba

Ameoba是一個(gè)以MySQL為底層數(shù)據(jù)存儲(chǔ),并對(duì)應(yīng)用提供MySQL協(xié)議接口的Proxy。它集中響應(yīng)應(yīng)用的請(qǐng)求,依據(jù)用戶事先設(shè)置的規(guī)則,將SQL請(qǐng)求發(fā)送到特定的數(shù)據(jù)庫(kù)上執(zhí)行,基于此可以實(shí)現(xiàn)負(fù)載均衡、讀寫分離、高可用性等需求。與MySQL官方的MySQL Proxy相比,Ameoba的作者強(qiáng)調(diào)的是Amoeba配置的便捷性(基于XML的配置文件,用SQLJEP語(yǔ)法書寫規(guī)則,比基于Lua腳本的MySQL Proxy簡(jiǎn)單)。

Mycat與以上中間件的對(duì)比如下表所示。

對(duì)比項(xiàng)目MycatMangoCobaHeisenbergAtlasAmoeba
數(shù)據(jù)切片支持支持支持支持支持支持
讀寫分離支持支持支持支持支持支持
宕機(jī)自動(dòng)切換支持不支持支持不支持半支持,影響寫不支持
MySQL協(xié)議前后端支持JDBC前端支持前后端支持前后端支持JDBC
支持的數(shù)據(jù)庫(kù)MySQL、Oracle、MongoDB、PostgreSQLMySQLMySQLMySQLMySQLMySQL、MongoDB
社區(qū)活躍度活躍停滯中等停滯
文檔資料極豐富較齊全較齊全缺少中等缺少
是否開源開源開源開源開源開源開源
是否支持事務(wù)弱XA支持單庫(kù)強(qiáng)一致、分布式弱事務(wù)單庫(kù)強(qiáng)一致、多庫(kù)弱事務(wù)單庫(kù)強(qiáng)一致、分布式弱事務(wù)不支持

3. Mycat能解決的問題

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

4. Mycat核心概念

4.1 邏輯庫(kù)(schema)

業(yè)務(wù)開發(fā)人員通常在實(shí)際應(yīng)用中并不需要知道中間件的存在,只需要關(guān)注數(shù)據(jù)庫(kù),所以數(shù)據(jù)庫(kù)中間件可以被當(dāng)作一個(gè)或多個(gè)數(shù)據(jù)庫(kù)集群構(gòu)成的邏輯庫(kù)。
在云計(jì)算時(shí)代,數(shù)據(jù)庫(kù)中間件可以以多租戶的形式為一個(gè)或多個(gè)應(yīng)用提供服務(wù),每個(gè)應(yīng)用訪問的可能是一個(gè)獨(dú)立或者共享的物理庫(kù)。

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

4.2 邏輯表(table)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

4.2.1 分片表

分片表是將指數(shù)據(jù)量很大的表切分到多個(gè)數(shù)據(jù)庫(kù)實(shí)例中,所有分片組合起來構(gòu)成了一張完整的表。

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

4.2.2 非分片表

并非所有的表在數(shù)據(jù)量很大時(shí)都需要進(jìn)行分片,某些表可以不用分片。非分片表是相對(duì)于分片表而言的不需要進(jìn)行數(shù)據(jù)切片的表。

4.2.3 ER表

關(guān)系型數(shù)據(jù)庫(kù)是基于實(shí)體關(guān)系模型(Entity Relationship Model)的,Mycat中的ER表便來源于此。基于此思想,Mycat提出了基于E-R關(guān)系的數(shù)據(jù)分片策略,子表的記錄與其所關(guān)系的父表的記錄存放在同一個(gè)數(shù)據(jù)分片上,即子表依賴于父表,通過表分組(Table Group)保證數(shù)據(jù)關(guān)聯(lián)查詢不會(huì)跨庫(kù)操作。
表分組(Table Group)是解決跨分片數(shù)據(jù)關(guān)聯(lián)查詢的一種很好的思路,也是數(shù)據(jù)切分的一條重要規(guī)則。

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

4.2.4 全局表

在一個(gè)真實(shí)的業(yè)務(wù)場(chǎng)景中往往存在大量類似的字典表,這些字典表中的數(shù)據(jù)變動(dòng)不頻繁,而且數(shù)據(jù)規(guī)模不大,很少有超過數(shù)十萬條的記錄。
當(dāng)業(yè)務(wù)表因?yàn)橐?guī)模進(jìn)行分片后,業(yè)務(wù)表這些附屬的字典表之間的關(guān)聯(lián)查詢就成了比較棘手的問題,所以在Mycat中通過數(shù)據(jù)冗余來解決這類表的關(guān)聯(lián)查詢,即所有分片都復(fù)制了一份數(shù)據(jù),我們把這些冗余數(shù)據(jù)的表定義為全局表。
數(shù)據(jù)冗余是解決跨分片數(shù)據(jù)關(guān)聯(lián)查詢的一種很好的思路,也是數(shù)據(jù)切分規(guī)劃的另一條重要規(guī)則。

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

4.3 分片節(jié)點(diǎn)(dataNode)

將數(shù)據(jù)切分后,一個(gè)多大個(gè)被分到不同的分片數(shù)據(jù) 庫(kù)上,每個(gè)表分片所在的數(shù)據(jù)庫(kù)就是分片節(jié)點(diǎn)。

4.4 節(jié)點(diǎn)主機(jī)(dataHost)

將數(shù)據(jù)切分后,每個(gè)分片節(jié)點(diǎn)不一定會(huì)獨(dú)占一臺(tái)機(jī)器,同一臺(tái)機(jī)器上可以有多個(gè)分片數(shù)據(jù)庫(kù),這樣一個(gè)或多個(gè)分片節(jié)點(diǎn)所在的機(jī)器就是節(jié)點(diǎn)主機(jī)。為了規(guī)避單節(jié)點(diǎn)主機(jī)并發(fā)數(shù)量的限制,盡量將讀寫壓力高的分片節(jié)點(diǎn)均勻地放在不同的節(jié)點(diǎn)主機(jī)上。

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

5. Mycat文件夾以及文件介紹

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)

參考資料:
[1] http://mycat.io/
[2] 《分布式數(shù)據(jù)庫(kù)架構(gòu)及企業(yè)實(shí)踐——基于Mycat中間件》
[3] 龍哥官方課程課件

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


本文標(biāo)題:Mycat學(xué)習(xí)實(shí)戰(zhàn)-Mycat初識(shí)-創(chuàng)新互聯(lián)
本文URL:http://weahome.cn/article/ccepcj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部