W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
解決什么問題?
回答:當(dāng)mysql單表的數(shù)據(jù)庫過大時,數(shù)據(jù)庫的訪問速度會下降,“數(shù)據(jù)量大”問題的常見解決方案是“水平切分”。
mysql常見的水平切分方式有哪些?
回答:分庫分表,分區(qū)表
什么是mysql的分庫分表?
回答:把一個很大的庫(表)的數(shù)據(jù)分到幾個庫(表)中,每個庫(表)的結(jié)構(gòu)都相同,但他們可能分布在不同的mysql實例,甚至不同的物理機(jī)器上,以達(dá)到降低單庫(表)數(shù)據(jù)量,提高訪問性能的目的。
分庫分表往往是業(yè)務(wù)層實施的,分庫分表后,為了滿足某些特定業(yè)務(wù)功能,往往需要rd修改代碼。
什么是mysql的分區(qū)表?
回答:所有數(shù)據(jù)還在一個表中,但物理存儲根據(jù)一定的規(guī)則放在不同的文件中。這個是mysql支持的功能,業(yè)務(wù)rd代碼無需改動。
看上去分區(qū)表很帥氣,為什么大部分互聯(lián)網(wǎng)還是更多的選擇自己分庫分表來水平擴(kuò)展咧?
回答:
1)分區(qū)表,分區(qū)鍵設(shè)計不太靈活,如果不走分區(qū)鍵,很容易出現(xiàn)全表鎖
2)一旦數(shù)據(jù)量并發(fā)量上來,如果在分區(qū)表實施關(guān)聯(lián),就是一個災(zāi)難
3)自己分庫分表,自己掌控業(yè)務(wù)場景與訪問模式,可控。分區(qū)表,研發(fā)寫了一個sql,都不確定mysql是怎么玩的,不太可控
4)運維的坑,嘿嘿
5)…
埋坑:如何來進(jìn)行水平切分,分庫分表?如果大伙感興趣,后續(xù)和大家聊更多的數(shù)據(jù)庫架構(gòu)。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: