以下內(nèi)容皆為個人摸索,沒有人專門指導(公司不給力啊!DBA和大牛都木有。。。),所以難免出錯,如有錯誤歡迎指正,小子勇于接受批評~(*^__^*) ~

水平分庫分表和垂直分庫分表,大家都經(jīng)常談,我說下我的理解,看圖:

平面設計培訓,網(wǎng)頁設計培訓,美工培訓,游戲開發(fā),動畫培訓

垂直分表就不用說了,基本上會SQLServer的都會。

 

垂直分庫就是根據(jù)業(yè)務需求來分庫,比如教育系列的,可以分為資訊,課程,用戶(學生,學校)三個數(shù)據(jù)庫。比如電商的可以分為訂單,商品,用戶(商家,消費者)三個數(shù)據(jù)庫。這邊只是舉個例子,具體的你得根據(jù)你們自己業(yè)務的實際情況來分,不是分的越多越好,最好是遇到瓶頸了再去做這些事情(這個過程才能學到很多東西)

水平分表主要就兩種方法,Hash取余法和時間路由法。我重點說下時間路由的方法,這種方案后期擴容和歷史數(shù)據(jù)抽離【結(jié)合列索引更勁爆哦~】比較方便。

舉個簡單的路由表:(時間你可以用傳統(tǒng)的格式,我這邊用的是時間軸)

這個是文章表的時間路由表,每次查詢文章的時候根據(jù)查詢的時間看看

平面設計培訓,網(wǎng)頁設計培訓,美工培訓,游戲開發(fā),動畫培訓

比如我現(xiàn)在準備寫入數(shù)據(jù),當前時間 2016/11/18 16:37:29 ==》1479458249

select RTableName from Route_Article where where 

網(wǎng)友評論