日韩欧美国产精品免费一二-日韩欧美国产精品亚洲二区-日韩欧美国产精品专区-日韩欧美国产另-日韩欧美国产免费看-日韩欧美国产免费看清风阁

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

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

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


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


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

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

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

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


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


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

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

2. 一般來說,每個庫(表)的屬性至少有一列交集,一般是主鍵

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


舉個例子,用戶表:

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

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

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)一個表屬性很多時,垂直拆分依據(jù)主要有幾點(diǎn):
1. 將長度較短,訪問頻率較高的屬性盡量放在一個表里,這個表暫且稱為主表
2. 將字段較長,訪問頻率較低的屬性盡量放在一個表里,這個表暫且稱為擴(kuò)展表
3. 經(jīng)常一起訪問的屬性,也可以放在一個表里;

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

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

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


舉個例子:

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

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

此時,訪問磁盤的概率會大大降低,數(shù)據(jù)庫訪問的時延會大大降低,吞吐量會大大增加。

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

知其然,知其所以然。

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


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

文章很短,3分鐘搞定。


==全文完==


閱讀原文:原文鏈接


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

主站蜘蛛池模板: 国产亚洲精品福利在线无卡一 | 中文字幕亚洲综合小综合在线 | 国产日本韩国视频 | 国产拍拍拍在线观看视频免费 | 最新电视剧免费观看 | 最近中文字幕2025 | 亚洲国产日韩欧美一区二区三区 | 亚洲欧美中文高清在线 | 免费福利tv | 欧美囗交xx×bbb视频 | 自偷自拍亚洲综合精品 | 亚洲第一国产午夜福利电影 | 日韩午夜理论免费tv影院 | 99精品国产自在现线观看 | 免费观看电影真不卡 | 91欧美亚洲 | 欧美性狂猛xxxxx深喉 | 亚洲变态 | 亚洲第一夜页 | 处女的诱惑在线观 | 欧美一区日韩一区中文字幕页 | 午夜福利精品在线播放 | 国产妇女性爽视频免费 | 国产精品午夜爽爽爽免费 | 国产人妖的免 | 韩国床戏激情戏裸戏 | 拍国产真| 青青草97国产精品免费观看 | 黑人巨茎精品 | 国产日韩精品一区二区在线观看 | 51精品国产人成在线观看 | 国产女主播精品大秀系列 | 精品国产午夜 | 成人午夜免费观看 | 国产欧美日韩96 | 精品国自产拍网站 | 日本在线高清不卡免费播放 | 亚洲成a人片在线观看网站 亚洲第一综合天堂另类专 91成人小视频 | 国产精品臀控福利在线观看 | 国产美女精品视 | 中文字幕第一页亚洲 |