當mysql單錶記錄數過大時,增刪改查效能都會急劇下降。
通常在以整型值為主的表資料量達到千萬級時,以字串為主的表達到五百萬的時候就需要考慮分庫分表。
一般來說,資料庫的分庫分表分為兩種拆分形式,即縱向和橫向。
垂直拆分:垂直分庫:解決表過多的問題; 垂直分表:解決單表列過多的問題。通常根據業務耦合性,將關聯性低的表劃分到不同的資料庫。
垂直拆分的優點:
垂直拆分的缺點:
水平拆分:水平分庫分表:解決單錶資料量過大的問題。按照表內某個字段,根據規則將同乙個表拆分到多個資料庫或多個表中。
水平拆分的優點 :
水平拆分的缺點:
拆分以後生成分布式id的方法:
未完待續...
資料庫分庫分表
1 基本思想之什麼是分庫分表?從字面上簡單理解,就是把原本儲存於乙個庫的資料分塊儲存到多個庫上,把原本儲存於乙個表的資料分塊儲存到多個表上。2 基本思想之為什麼要分庫分表?資料庫中的資料量不一定是可控的,在未進行分庫分表的情況下,隨著時間和業務的發展,庫中的表會越來越多,表中的資料量也會越來越大,相...
資料庫分庫 分表
分庫的優點是 實現簡單,庫與庫之間界限分明,便於維護,缺點是不利於頻繁跨庫操作,單錶資料量大的問題解決不了。分表的優點是 能解決分庫的不足點,但是缺點卻恰恰是分庫的優點,分表實現起來比較複雜,特別是分表規則的劃分,程式的編寫,以及後期的 資料庫拆分移植維護。實際應用中,一般網際網路企業的路線都是先分...
資料庫分庫分表
簡單了解資料庫分庫分表,以及資料庫的分片 什麼是分庫分表 原本儲存於乙個庫的資料分塊儲存到多個庫上,把原本儲存於乙個表的資料分塊儲存在到多個表上 為什麼分庫分表 當一張表的資料達到幾千萬時,你查詢一次所花的時間會變多,如果有聯合查詢的花,我想啃根會死在那。分表的目的就在於此,減少資料庫的負擔,縮短查...