目錄
-
- 一、MySql單表最多數據量多少需要分表
-
- 1.1、阿里開發公約
- 1.2、一個三層的B+樹,它最多可以存儲多少數據量
- 1.3、示例
-
- 1.3.1、示例表中一行的數據占多少字節數
- 1.3.2、示例表中一頁里面最多可以存多少條記錄
- 1.3.3、按示例表計算,一個三層的B+樹,可以放多少條100字節的數據
- List item
一、MySql單表最多數據量多少需要分表
1.1、阿里開發公約
- 推薦單表行數超過500萬或者單表容量超過2GB,才推薦進行分庫分表。
- 說明:如果預計三年后的數據量根本達不到這個級別,請不要在創建表時就分庫分表。
1.2、一個三層的B+樹,它最多可以存儲多少數據量
-
因為你單純拋開容量只談行數的話,肯定是不對的。一個三層的B+樹,它最多可以存儲多少數據量呢?
-
首先,我們要知道一顆B+樹,它是由一個一個的磁盤頁所組成的,每一頁的大小可以通過sql語句進行查詢,默認是16KB
show GLOBAL STATUS like 'innodb_page_size'
-
其次,每一頁它的結構里面有頁頭和頁尾等一些結構,真正的存儲數據的只有中間的這一部分,所以我們真正需要獲取一頁當中有效的數據空間,還需要減掉頁頭和葉尾這一部分的空間,大約可以減掉200左右的字節。在這里插入代碼片
-
頁大