您好,登錄后才能下訂單哦!
在處理大數(shù)據(jù)量的表時,會消耗數(shù)據(jù)庫的大量性能,所以,在設計數(shù)據(jù)庫表時,要考慮到此種現(xiàn)象,將數(shù)據(jù)庫設計的合理合法,來提高數(shù)據(jù)庫性能減小數(shù)據(jù)庫壓力。
當表記錄太多,如產(chǎn)品、的訂單、大量客戶等,是數(shù)據(jù)庫訪問壓力的主要來源,此時,從數(shù)據(jù)庫拆分表的角度來減輕壓力,可以采用如下兩種方法:
1、對表進行水平分割
水平分割:以該表主鍵PK的某個值為界限,將該表的記錄水平拆分為兩個表
2、對表進行垂直分割
垂直分割:表字段太多,按照表字段拆分,將一個表垂直分解為兩個表
例:有產(chǎn)品表,數(shù)據(jù)量為10w,數(shù)據(jù)量穩(wěn)定;
訂單表,數(shù)據(jù)量為200w,數(shù)據(jù)量有增長趨勢;
用戶表,數(shù)據(jù)量為100w,數(shù)據(jù)量有增長趨勢
方案一:垂直分割,解決了表與表之間的io競爭,未解決單表種數(shù)量增長出現(xiàn)的壓力
進一步解決方案:
——將產(chǎn)品表和用戶表放在一個server上;
——訂單表單獨放到一個server上
方案二:水平分割,解決了單表種數(shù)據(jù)量的壓力,未解決表與表之間io的競爭
進一步解決方案:
——用戶表通過性別拆分為男用戶和女用戶
——訂單表拆分成已完成訂單和未完成訂單
——產(chǎn)品表,未完成訂單放在一個server上
——已完成訂單和男用戶放在一個server上
——女用戶放在一個server上(女用戶愛購物)
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。