分庫分表的核心理念就是對數(shù)據(jù)進行切分(Sharding)冶匹,以及切分后如何對數(shù)據(jù)的快速定位與查詢結(jié)果整合。而分庫與分表都可以從:垂直(縱向)和 水平(橫向)兩種緯度進行切分。
- 分庫
垂直分庫:將不同的數(shù)據(jù)庫實例用于存儲不同的數(shù)據(jù)集或業(yè)務(wù)模塊。
水平分庫:將數(shù)據(jù)水平分割為多個數(shù)據(jù)庫實例荸频,每個實例存儲部分數(shù)據(jù)行 - 分表
垂直分表:將一個大型表按照列進行劃分,將不同的列存儲在不同的物理表中客冈。
水平分表:將一個大型表按照某個分片鍵(如日期旭从、地理位置等)進行切分,將不同的行分布到不同的物理表中