水平拆分Or垂直拆分

http://blog.csdn.net/iloveyin/article/details/39996831

通過(guò)某種特定的條件荣堰,將存放在同一個(gè)數(shù)據(jù)庫(kù)中的數(shù)據(jù)分散存放到多個(gè)數(shù)據(jù)庫(kù)上斜棚,實(shí)現(xiàn)分布存儲(chǔ)卖鲤,通過(guò)路由規(guī)則路由訪問(wèn)特定的數(shù)據(jù)庫(kù)雹洗,這樣一來(lái)每次訪問(wèn)面對(duì)的就不是單臺(tái)服務(wù)器了,而是N臺(tái)服務(wù)器,這樣就可以降低單臺(tái)機(jī)器的負(fù)載壓力先慷。提示:sqlserver 2005版本之后,可以友好的支持“表分區(qū)”咨察。

垂直(縱向)拆分:是指按功能模塊拆分论熙,比如分為訂單庫(kù)、商品庫(kù)摄狱、用戶(hù)庫(kù)...這種方式多個(gè)數(shù)據(jù)庫(kù)之間的表結(jié)構(gòu)不同赴肚。

水平(橫向)拆分:將同一個(gè)表的數(shù)據(jù)進(jìn)行分塊保存到不同的數(shù)據(jù)庫(kù)中,這些數(shù)據(jù)庫(kù)中的表結(jié)構(gòu)完全相同二蓝。

▲(縱向拆分)

▲(橫向拆分)

1,實(shí)現(xiàn)原理:使用垂直拆分指厌,主要要看應(yīng)用類(lèi)型是否合適這種拆分方式刊愚,如系統(tǒng)可以分為,訂單系統(tǒng)踩验,商品管理系統(tǒng)鸥诽,用戶(hù)管理系統(tǒng)業(yè)務(wù)系統(tǒng)比較明的,垂直拆分能很好的起到分散數(shù)據(jù)庫(kù)壓力的作用箕憾。業(yè)務(wù)模塊不明晰牡借,耦合(表關(guān)聯(lián))度比較高的系統(tǒng)不適合使用這種拆分方式。但是垂直拆分方式并不能徹底解決所有壓力問(wèn)題袭异,例如 有一個(gè)5000w的訂單表钠龙,操作起來(lái)訂單庫(kù)的壓力仍然很大,如我們需要在這個(gè)表中增加(insert)一條新的數(shù)據(jù)御铃,insert完畢后碴里,數(shù)據(jù)庫(kù)會(huì)針對(duì)這張表重新建立索引,5000w行數(shù)據(jù)建立索引的系統(tǒng)開(kāi)銷(xiāo)還是不容忽視的上真,反過(guò)來(lái)咬腋,假如我們將這個(gè)表分成100個(gè)table呢,從table_001一直到table_100睡互,5000w行數(shù)據(jù)平均下來(lái)根竿,每個(gè)子表里邊就只有50萬(wàn)行數(shù)據(jù),這時(shí)候我們向一張只有50w行數(shù)據(jù)的table中insert數(shù)據(jù)后建立索引的時(shí)間就會(huì)呈數(shù)量級(jí)的下降就珠,極大了提高了DB的運(yùn)行時(shí)效率寇壳,提高了DB的并發(fā)量,這種拆分就是橫向拆分

2嗓违,實(shí)現(xiàn)方法:垂直拆分九巡,拆分方式實(shí)現(xiàn)起來(lái)比較簡(jiǎn)單,根據(jù)表名訪問(wèn)不同的數(shù)據(jù)庫(kù)就可以了蹂季。橫向拆分的規(guī)則很多冕广,這里總結(jié)前人的幾點(diǎn)疏日,

(1)順序拆分:如可以按訂單的日前按年份才分,2003年的放在db1中撒汉,2004年的db2,以此類(lèi)推沟优。當(dāng)然也可以按主鍵標(biāo)準(zhǔn)拆分。

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

缺點(diǎn):數(shù)據(jù)分布不均睬辐,可能2003年的訂單有100W挠阁,2008年的有500W。

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

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

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

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

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

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

缺點(diǎn):每次查詢(xún)之前都要多一次查詢(xún)噪珊,會(huì)造成一定的性能損失。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末逾苫,一起剝皮案震驚了整個(gè)濱河市卿城,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌铅搓,老刑警劉巖瑟押,帶你破解...
    沈念sama閱讀 221,820評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異星掰,居然都是意外死亡多望,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)氢烘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)怀偷,“玉大人,你說(shuō)我怎么就攤上這事播玖∽倒ぃ” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,324評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)维蒙。 經(jīng)常有香客問(wèn)我掰吕,道長(zhǎng),這世上最難降的妖魔是什么颅痊? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,714評(píng)論 1 297
  • 正文 為了忘掉前任殖熟,我火速辦了婚禮,結(jié)果婚禮上斑响,老公的妹妹穿的比我還像新娘菱属。我一直安慰自己,他們只是感情好舰罚,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,724評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布纽门。 她就那樣靜靜地躺著,像睡著了一般营罢。 火紅的嫁衣襯著肌膚如雪膜毁。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,328評(píng)論 1 310
  • 那天愤钾,我揣著相機(jī)與錄音,去河邊找鬼候醒。 笑死能颁,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的倒淫。 我是一名探鬼主播伙菊,決...
    沈念sama閱讀 40,897評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼敌土!你這毒婦竟也來(lái)了镜硕?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,804評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤返干,失蹤者是張志新(化名)和其女友劉穎兴枯,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體矩欠,經(jīng)...
    沈念sama閱讀 46,345評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡财剖,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,431評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了癌淮。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片躺坟。...
    茶點(diǎn)故事閱讀 40,561評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖乳蓄,靈堂內(nèi)的尸體忽然破棺而出咪橙,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 36,238評(píng)論 5 350
  • 正文 年R本政府宣布美侦,位于F島的核電站产舞,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏音榜。R本人自食惡果不足惜庞瘸,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,928評(píng)論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望赠叼。 院中可真熱鬧擦囊,春花似錦、人聲如沸嘴办。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,417評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)涧郊。三九已至贯被,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間妆艘,已是汗流浹背彤灶。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,528評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留批旺,地道東北人幌陕。 一個(gè)月前我還...
    沈念sama閱讀 48,983評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像汽煮,于是被迫代替她去往敵國(guó)和親搏熄。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,573評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容