公交车上荫蒂添的好舒服的电影-公用玩物(np双xing总受)-公用小荡货芊芊-公与妇仑乱hd-攻把受做哭边走边肉楼梯play-古装一级淫片a免费播放口

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

數(shù)據(jù)庫(kù)如何實(shí)施垂直拆分,原理是啥?

admin
2025年1月1日 20:38 本文熱度 559
當(dāng)數(shù)據(jù)庫(kù)的數(shù)據(jù)量非常大時(shí),水平切分和垂直拆分都降低數(shù)據(jù)量大小,提升數(shù)據(jù)庫(kù)性能,有什么差別?


水平切分是指,以某個(gè)字段為依據(jù)(例如uid),按照一定規(guī)則(例如取模),將一個(gè)庫(kù)(表)上的數(shù)據(jù)拆分到多個(gè)庫(kù)(表)上,以降低單庫(kù)(表)大小,達(dá)到提升性能的目的的數(shù)據(jù)庫(kù)架構(gòu)設(shè)計(jì)方法。


水平切分后,各個(gè)庫(kù)(表)的特點(diǎn)是:

1. 每個(gè)庫(kù)(表)的結(jié)構(gòu)都一樣

2. 每個(gè)庫(kù)(表)的數(shù)據(jù)都不一樣,沒(méi)有交集;

3. 所有庫(kù)(表)的并集是全量數(shù)據(jù);


垂直拆分是指,將一個(gè)屬性較多,一行數(shù)據(jù)較大的表,將不同的屬性拆分到不同的表中,以降低單庫(kù)(表)大小,達(dá)到提升性能的數(shù)據(jù)庫(kù)架構(gòu)設(shè)計(jì)方法。


垂直切分后,各個(gè)庫(kù)(表)的特點(diǎn)是:

1. 每個(gè)庫(kù)(表)的結(jié)構(gòu)都不一樣

2. 一般來(lái)說(shuō),每個(gè)庫(kù)(表)的屬性至少有一列交集,一般是主鍵

3. 所有庫(kù)(表)的并集是全量數(shù)據(jù);


舉個(gè)例子,用戶表:

user(
    uid bigint,
    name varchar(16),
    pass varchar(16),
    age int,
    sex tinyint,
    flag tinyint,
    sign varchar(64),
    intro varchar(256)
…);

垂直拆分之后,可能變成兩個(gè)這樣的表:

user_base(
    uid bigint,
    name varchar(16),
    pass varchar(16),
    age int,
    sex tinyint,
    flag tinyint,
…);

user_ext(
    uid bigint,
    sign varchar(64),
    intro varchar(256)
…);


垂直切分的依據(jù)是什么?
當(dāng)一個(gè)表屬性很多時(shí),垂直拆分依據(jù)主要有幾點(diǎn):
1. 將長(zhǎng)度較短,訪問(wèn)頻率較高的屬性盡量放在一個(gè)表里,這個(gè)表暫且稱為主表
2. 將字段較長(zhǎng),訪問(wèn)頻率較低的屬性盡量放在一個(gè)表里,這個(gè)表暫且稱為擴(kuò)展表
3. 經(jīng)常一起訪問(wèn)的屬性,也可以放在一個(gè)表里;

為什么要這么這么拆分?
1. 數(shù)據(jù)庫(kù)有自己的緩沖池buffer_pool,會(huì)將磁盤(pán)上的數(shù)據(jù)load到緩沖池里;
2. 緩沖池物理上以頁(yè)page為單位,邏輯上以行row為單位,緩存數(shù)據(jù);

3. 在內(nèi)存有限,緩沖池大小固定的情況下,長(zhǎng)度較短的row,能緩存更多數(shù)據(jù)

4. 緩存高頻的列column,能提升緩沖池命中率,減少磁盤(pán)IO;


舉個(gè)例子:

1. 假設(shè)數(shù)據(jù)庫(kù)內(nèi)存buffer為1G,未拆分的user表1行數(shù)據(jù)大小為1k,那么只能緩存100w行數(shù)據(jù)

2. 如果垂直拆分成user_base和user_ext,其中user_base訪問(wèn)頻率高,1行大小為0.1k,就能緩存1000w行數(shù)據(jù)

此時(shí),訪問(wèn)磁盤(pán)的概率會(huì)大大降低,數(shù)據(jù)庫(kù)訪問(wèn)的時(shí)延會(huì)大大降低,吞吐量會(huì)大大增加。

簡(jiǎn)單總結(jié):
1. 海量數(shù)據(jù)高并發(fā)的數(shù)據(jù)庫(kù)場(chǎng)景,垂直拆分能提升數(shù)據(jù)庫(kù)性能;
2. 拆分核心依據(jù)是:將長(zhǎng)度較短,訪問(wèn)頻率較高的屬性盡量放在主表里。

知其然,知其所以然。

思路比結(jié)論更重要。


補(bǔ)充閱讀材料:
《數(shù)據(jù)庫(kù)水平切分+垂直拆分簡(jiǎn)介
https://www.baeldung.com/cs/databases-horizontal-vertical-partitioning

文章很短,3分鐘搞定。


==全文完==


閱讀原文:原文鏈接


該文章在 2025/1/2 12:21:41 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專(zhuān)業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車(chē)隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類(lèi)企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷(xiāo)售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 91精产国品一二三区在线 | 成人免费一区二区三区视频 | 国产精品午夜一级毛片密呀 | 91在线精品麻豆欧美在线 | 国产情趣网站视频在线观看 | 丰满少妇人妻无码专区 | 国产成人av无码永久免费 | 国产精品福利在线播放 | 国产av无码专区亚洲精品 | 高清无码中文三级 | 国产午夜av无码大片久久 | 国产精品乱码在线观看av | 国产黑丝在线播放 | 国产精品二区高清在线 | 国产成人网站免费一区二区 | 国产成人手机高清在线观看网站 | 91精品久久久久无码午夜福利 | 国产原创日韩精品国产 | 精品国产在线 | 国偷自产中文二区三 | 国模少妇无码一区二区三区 | 91麻豆国产综合精品久久不卡 | 国产3级在线观看 | 国产va在线播放频 | 国产精品激情丝袜美女 | 国产aⅴ精品一区 | 国产精品v毛片免费软件 | 国产美女18网 | 国产91精品高跟丝袜在线 | 国模少妇无码一区二区三区 | 丰满多毛的大隂户毛茸茸 | 国产精品云霸高清中字 | 国产精品专区最新 | 国产精品福利在线观看入口 | 91久久人人| 91精品福利资源 | 国产高颜值露脸在 | 国产精品亚洲综合一区在线观看 | 国产精品嫩草影院午夜 | 国产欧美国产精品第一区 | 国产精品免费福利久久麻豆 |