欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

mysql分表的方法-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!

專注于為中小企業(yè)提供網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)岱岳免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

這篇文章將為大家詳細(xì)講解有關(guān)mysql分表的方法,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

mysql分表的方法

分表的原因:

當(dāng)一張的數(shù)據(jù)達(dá)到幾百萬時(shí),你查詢一次所花的時(shí)間會(huì)變多,如果有聯(lián)合查詢的話,我想有可能會(huì)死在那兒了。分表的目的就在于此,減小數(shù)據(jù)庫的負(fù)擔(dān),縮短查詢時(shí)間。

分庫分表有垂直切分和水平切分兩種:

1、依照不同的表(或者Schema)來切分到不同的數(shù)據(jù)庫(主機(jī))之上,這樣的切分稱之為數(shù)據(jù)的垂直(縱向)切分。

2、依據(jù)表中的數(shù)據(jù)的邏輯關(guān)系,將同一個(gè)表中的數(shù)據(jù)依照某種條件拆分到多臺(tái)數(shù)據(jù)庫(主機(jī),當(dāng)然也可能是同一個(gè)數(shù)據(jù)庫)上面。這樣的切分稱之為數(shù)據(jù)的水平(橫向)切分。

數(shù)據(jù)的垂直切分

mysql分表的方法

將數(shù)據(jù)庫想象成由非常多個(gè)一大塊一大塊的“數(shù)據(jù)塊”(表)組成,我們垂直的將這些“數(shù)據(jù)塊”切開,然后將他們分散到多臺(tái)數(shù)據(jù)庫(主機(jī))上面,這樣的切分方法就是一個(gè)垂直(縱向)的數(shù)據(jù)切分。

數(shù)據(jù)的水平切分

mysql分表的方法

數(shù)據(jù)的垂直切分基本上能夠簡單的理解為依照表依照模塊來切分?jǐn)?shù)據(jù),而水平切分就不再是依照表或者是功能模塊來切分了。一般來說,簡單的水平切分主要是將某個(gè)訪問極其頻繁的大表再依照某個(gè)字段的某種規(guī)則來分散到多個(gè)表之中。每一個(gè)表中包括一部分?jǐn)?shù)據(jù)。

簡單來說,就是將表中的某些行切分到一個(gè)數(shù)據(jù)庫(表),而另外的某些行又切分到其它的數(shù)據(jù)庫(表)中。當(dāng)然,為了能夠比較容易的判定各行數(shù)據(jù)被切分到哪個(gè)數(shù)據(jù)庫(表)中了,切分總是都須要依照某種特定的規(guī)則來進(jìn)行的。

水平分庫分表的切分規(guī)則主要包括如下幾種:

按號(hào)段分

user_id為區(qū)分,1~1000的對(duì)應(yīng)DB1,1001~2000的對(duì)應(yīng)DB2,以此類推;

優(yōu)點(diǎn):可部分遷移

缺點(diǎn):數(shù)據(jù)分布不均

hash取模分:

對(duì)user_id進(jìn)行hash,然后用一個(gè)特定的數(shù)字,比如應(yīng)用中需要將一個(gè)數(shù)據(jù)庫切分成4個(gè)數(shù)據(jù)庫的話,我們就用4這個(gè)數(shù)字對(duì)user_id的hash值進(jìn)行取模運(yùn)算,也就是user_id%4,這樣的話每次運(yùn)算就有四種可能:結(jié)果為0的時(shí)候?qū)?yīng)DB1;結(jié)果為1的時(shí)候?qū)?yīng)DB2;結(jié)果為2的時(shí)候?qū)?yīng)DB3;結(jié)果為3的時(shí)候?qū)?yīng)DB4,這樣一來就非常均勻的將數(shù)據(jù)分配到4個(gè)DB中。如上圖所示。

優(yōu)點(diǎn):數(shù)據(jù)分布均勻

缺點(diǎn):數(shù)據(jù)遷移的時(shí)候麻煩,不能按照機(jī)器性能分?jǐn)倲?shù)據(jù)

在認(rèn)證庫中保存數(shù)據(jù)庫配置

建立一個(gè)DB,這個(gè)DB單獨(dú)保存user_id到DB的映射關(guān)系,每次訪問數(shù)據(jù)庫的時(shí)候都要先查詢一次這個(gè)數(shù)據(jù)庫,以得到具體的DB信息,然后才能進(jìn)行我們需要的查詢操作。

優(yōu)點(diǎn):靈活性強(qiáng),一對(duì)一關(guān)系

缺點(diǎn):每次查詢之前都要多一次查詢,性能大打折扣

其他方式

1)按照地理區(qū)域:比如按照華東,華南,華北這樣來區(qū)分業(yè)務(wù)。

2)按照時(shí)間切分,就是將6個(gè)月前,甚至一年前的數(shù)據(jù)切出去放到另外的一張表,因?yàn)殡S著時(shí)間流逝,這些表的數(shù)據(jù)被查詢的概率變小,所以沒必要和“熱數(shù)據(jù)”放在一起,這個(gè)也是“冷熱數(shù)據(jù)分離”。

關(guān)于mysql分表的方法就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

當(dāng)前標(biāo)題:mysql分表的方法-創(chuàng)新互聯(lián)
文章分享:http://chinadenli.net/article18/shegp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站自適應(yīng)網(wǎng)站微信公眾號(hào)搜索引擎優(yōu)化網(wǎng)站策劃關(guān)鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)