两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

數(shù)據(jù)庫緩存管理方法、數(shù)據(jù)庫、設(shè)備及存儲(chǔ)介質(zhì)與流程

文檔序號(hào):40607643發(fā)布日期:2025-01-07 20:48閱讀:6來源:國知局
數(shù)據(jù)庫緩存管理方法、數(shù)據(jù)庫、設(shè)備及存儲(chǔ)介質(zhì)與流程

本技術(shù)涉及但不限于數(shù)據(jù)庫管理,尤其涉及一種數(shù)據(jù)庫緩存管理方法、數(shù)據(jù)庫、設(shè)備及存儲(chǔ)介質(zhì)。


背景技術(shù):

1、數(shù)據(jù)庫采用文件系統(tǒng)存儲(chǔ)用戶數(shù)據(jù),當(dāng)前主流數(shù)據(jù)庫為了提升讀寫性能,均是把數(shù)據(jù)塊先加載到內(nèi)存中,一個(gè)數(shù)據(jù)塊在內(nèi)存中被稱作頁。數(shù)據(jù)庫在執(zhí)行寫操作時(shí),修改后的數(shù)據(jù)塊稱為臟頁,臟頁只有持久化到數(shù)據(jù)文件中才算真正的寫成功,不會(huì)因?yàn)殄礄C(jī)導(dǎo)致數(shù)據(jù)丟失,臟頁持久化的過程稱為刷臟。

2、相關(guān)技術(shù)中,多數(shù)數(shù)據(jù)庫采用增量刷臟模式,該模式避免了刷臟導(dǎo)致的讀寫峰值,一定程度上降低了后臺(tái)刷臟對(duì)數(shù)據(jù)庫其余業(yè)務(wù)的影響,但是,數(shù)據(jù)庫通常是基于當(dāng)前內(nèi)存中臟頁數(shù)量來確定刷臟的速度,波動(dòng)較大的讀寫速度不利于數(shù)據(jù)庫其余業(yè)務(wù)的穩(wěn)定運(yùn)行。


技術(shù)實(shí)現(xiàn)思路

1、以下是對(duì)本文詳細(xì)描述的主題的概述。本概述并非是為了限制權(quán)利要求的保護(hù)范圍。

2、本技術(shù)實(shí)施例提供了一種數(shù)據(jù)庫緩存管理方法、數(shù)據(jù)庫、設(shè)備及存儲(chǔ)介質(zhì),能夠?qū)?nèi)存空間和讀寫性能進(jìn)行優(yōu)化,避免文件發(fā)生損壞。

3、為實(shí)現(xiàn)上述目的,本技術(shù)實(shí)施例的第一方面提出了一種數(shù)據(jù)庫緩存管理方法,包括:在當(dāng)前的刷臟周期中,獲取緩沖數(shù)據(jù)空間中的第一數(shù)據(jù)塊和第二數(shù)據(jù)塊,其中,所述第一數(shù)據(jù)塊表示未被寫入本地?cái)?shù)據(jù)空間的數(shù)據(jù),所述第二數(shù)據(jù)塊表示已被寫入所述本地?cái)?shù)據(jù)空間的數(shù)據(jù);獲取所述第一數(shù)據(jù)塊的第一數(shù)據(jù)數(shù)量以及所述第二數(shù)據(jù)塊的第二數(shù)據(jù)數(shù)量,基于所述第一數(shù)據(jù)數(shù)量和所述第二數(shù)據(jù)數(shù)量確定第一刷臟參數(shù);獲取多個(gè)歷史周期的歷史刷臟數(shù)量,基于所述歷史刷臟數(shù)量確定第二刷臟參數(shù);獲取各個(gè)所述第一數(shù)據(jù)塊的數(shù)據(jù)序列號(hào),基于所述數(shù)據(jù)序列號(hào)確定第三刷臟參數(shù);根據(jù)所述第一刷臟參數(shù)、第二刷臟參數(shù)和第三刷臟參數(shù)確定目標(biāo)刷臟參數(shù);根據(jù)所述目標(biāo)刷臟數(shù)量確定目標(biāo)數(shù)據(jù)塊,將所述目標(biāo)數(shù)據(jù)塊寫入所述本地?cái)?shù)據(jù)空間。

4、在一些實(shí)施例中,所述獲取所述第一數(shù)據(jù)塊的第一數(shù)據(jù)數(shù)量以及所述第二數(shù)據(jù)塊的第二數(shù)據(jù)數(shù)量,基于所述第一數(shù)據(jù)數(shù)量和所述第二數(shù)據(jù)數(shù)量確定第一刷臟參數(shù),包括:獲取所述第一數(shù)據(jù)塊的第一數(shù)據(jù)數(shù)量,以及所述第二數(shù)據(jù)塊的第二數(shù)據(jù)數(shù)量,根據(jù)所述第一數(shù)據(jù)數(shù)量和所述第二數(shù)據(jù)數(shù)量確定所述緩沖數(shù)據(jù)空間的待刷臟比例;基于所述待刷臟比例和所述第一數(shù)據(jù)數(shù)量確定第一刷臟參數(shù)。

5、在一些實(shí)施例中,所述基于所述待刷臟比例和所述第一數(shù)據(jù)數(shù)量確定第一刷臟參數(shù),包括:獲取前一個(gè)所述刷臟周期的歷史刷臟速度,基于所述歷史刷臟速度確定第一刷臟限值;當(dāng)所述第一數(shù)據(jù)數(shù)量大于或等于所述第一刷臟限值,或者所述刷臟比例大于或等于預(yù)設(shè)的第二刷臟限值時(shí),獲取第三刷臟限值,根據(jù)所述第三刷臟限值確定第一刷臟參數(shù),其中,所述第三刷臟限值表示數(shù)據(jù)庫在單個(gè)所述刷臟周期內(nèi)進(jìn)行數(shù)據(jù)塊刷臟的最大數(shù)量;當(dāng)所述第一數(shù)據(jù)數(shù)量小于所述第一刷臟限值,并且所述刷臟比例小于所述第二刷臟限值時(shí),根據(jù)預(yù)設(shè)的第二刷臟限值確定第一刷臟參數(shù)。

6、在一些實(shí)施例中,所述獲取多個(gè)歷史周期的歷史刷臟數(shù)量,基于所有所述歷史刷臟數(shù)量確定第二刷臟參數(shù),包括:獲取多個(gè)歷史周期的歷史刷臟數(shù)量,基于所有所述歷史刷臟數(shù)量確定平均刷臟數(shù)量;基于所述歷史刷臟數(shù)量確定第二刷臟參數(shù)。

7、在一些實(shí)施例中,所述獲取各個(gè)所述第一數(shù)據(jù)塊的數(shù)據(jù)序列號(hào),基于所述數(shù)據(jù)序列號(hào)確定第三刷臟參數(shù),包括:獲取各個(gè)所述第一數(shù)據(jù)塊的數(shù)據(jù)序列號(hào),確定所述第一數(shù)據(jù)塊中的第一最小序列號(hào)和第一最大序列號(hào),基于所述第一最小序列號(hào)和所述第一最大序列號(hào)確定序列差值;根據(jù)所述序列差值確定第三刷臟參數(shù)。

8、在一實(shí)施例中,所述根據(jù)所述序列差值確定第三刷臟參數(shù),包括:當(dāng)所述序列差值大于或等于預(yù)設(shè)的差值閾值時(shí),獲取第一差值因子,根據(jù)所述第一差值因子和所述歷史刷臟數(shù)量確定第三刷臟參數(shù);當(dāng)所述序列差值小于所述差值閾值時(shí),獲取第二差值因子,根據(jù)所述第二差值因子和所述歷史刷臟數(shù)量確定所述第三刷臟參數(shù),其中,所述第一差值因子大于所述第二差值因子。

9、在一些實(shí)施例中,所述根據(jù)所述目標(biāo)刷臟數(shù)量確定目標(biāo)數(shù)據(jù)塊,將所述目標(biāo)數(shù)據(jù)塊寫入所述本地?cái)?shù)據(jù)空間,包括:根據(jù)所述目標(biāo)刷臟數(shù)量確定目標(biāo)數(shù)據(jù)塊,獲取所述目標(biāo)數(shù)據(jù)塊中的第二最小序列號(hào)和第二最大序列號(hào);基于所述數(shù)據(jù)系列號(hào),從所述第二最小序列號(hào)對(duì)應(yīng)的所述目標(biāo)數(shù)據(jù)塊開始,將所述目標(biāo)數(shù)據(jù)塊依次寫入所述本地?cái)?shù)據(jù)空間中;當(dāng)所述第一數(shù)據(jù)數(shù)量大于或等于預(yù)設(shè)的第四刷臟限值,且當(dāng)所述序列差值大于或等于所述差值閾值時(shí),持續(xù)獲取當(dāng)前的刷臟周期的刷臟運(yùn)行時(shí)間;獲取周期刷臟時(shí)間,當(dāng)所述第二最大序列號(hào)對(duì)應(yīng)的目標(biāo)數(shù)據(jù)塊被寫入所述本地?cái)?shù)據(jù)空間,且所述刷臟運(yùn)行時(shí)間小于所述周期刷臟時(shí)間時(shí),重新獲取當(dāng)前的所述緩沖數(shù)據(jù)空間中的所述第一數(shù)據(jù)塊和所述第二數(shù)據(jù)塊,以進(jìn)入下一個(gè)所述刷臟周期。

10、為實(shí)現(xiàn)上述目的,本技術(shù)第二方面提出一種數(shù)據(jù)庫,所述數(shù)據(jù)庫用于執(zhí)行第一方面所述的數(shù)據(jù)庫緩存管理方法。

11、為實(shí)現(xiàn)上述目的,本技術(shù)實(shí)施例的第三方面提出了一種電子設(shè)備,所述電子設(shè)備包括存儲(chǔ)器和處理器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)上述第一方面所述的數(shù)據(jù)庫緩存管理方法。

12、為實(shí)現(xiàn)上述目的,本技術(shù)實(shí)施例的第四方面提出了一種存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)為計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述第一方面所述的數(shù)據(jù)庫緩存管理方法。

13、本技術(shù)實(shí)施例至少包括以下有益效果:在當(dāng)前周期內(nèi),通過對(duì)第一數(shù)據(jù)塊和第二數(shù)據(jù)塊的區(qū)分,以及對(duì)它們的數(shù)量進(jìn)行統(tǒng)計(jì),能夠更精確地評(píng)估哪些數(shù)據(jù)需要優(yōu)先刷臟,從而減少了不必要的數(shù)據(jù)寫入操作,能夠提高刷臟效率;目標(biāo)刷臟數(shù)量表示當(dāng)前周期內(nèi)寫入本地?cái)?shù)據(jù)空間的第一數(shù)據(jù)塊的數(shù)量,目標(biāo)刷臟數(shù)量受到數(shù)據(jù)庫緩沖數(shù)據(jù)空間內(nèi)數(shù)據(jù)的密集程度以及數(shù)據(jù)庫寫入寫出能力的影響,在計(jì)算當(dāng)前周期的目標(biāo)刷臟數(shù)量,首先,緩沖數(shù)據(jù)空間的容量大小是恒定的,第二數(shù)據(jù)塊所占用的空間可以在需要時(shí)被刷除,而第一數(shù)據(jù)塊需要進(jìn)行持久化處理,通過獲取第一數(shù)據(jù)塊的第一數(shù)據(jù)數(shù)量和第二數(shù)據(jù)塊的第二數(shù)據(jù)數(shù)量,即可獲知當(dāng)前周期開始時(shí)緩沖數(shù)據(jù)空間的擁擠程度,當(dāng)?shù)谝粩?shù)據(jù)數(shù)量大于一定閾值時(shí),說明第一數(shù)據(jù)塊占用緩沖數(shù)據(jù)空間內(nèi)的容量較大,緩沖數(shù)據(jù)空間內(nèi)未被寫入本地?cái)?shù)據(jù)空間的文件較多,新的文件無法寫入,緩沖數(shù)據(jù)空間內(nèi)的第一數(shù)據(jù)塊也容易發(fā)生丟失,因此,通過第一數(shù)據(jù)數(shù)量和第二數(shù)據(jù)數(shù)量確定第一刷臟參數(shù),能夠盡快將第一數(shù)據(jù)塊寫入本地?cái)?shù)據(jù)塊中,提升緩沖數(shù)據(jù)空間的寫入能力;然后,當(dāng)目標(biāo)刷臟戶數(shù)量在相鄰的周期內(nèi)波動(dòng)較大時(shí),可能會(huì)導(dǎo)致數(shù)據(jù)庫性能出現(xiàn)瞬時(shí)下降,因此,通過獲取多個(gè)歷史周期的歷史刷臟數(shù)量,歷史刷臟數(shù)量表示對(duì)應(yīng)周期的目標(biāo)刷臟數(shù)量,根據(jù)歷史刷臟數(shù)量確定第二刷臟參數(shù),根據(jù)第二刷臟參數(shù)確定當(dāng)前周期的目標(biāo)刷臟數(shù)量,能夠?qū)ο噜徶芷诘哪繕?biāo)刷臟數(shù)量進(jìn)行平滑,減少對(duì)不同線程對(duì)本地?cái)?shù)據(jù)空間同時(shí)進(jìn)行寫入操作的競爭,提高整體的寫入效率,通過減少相鄰周期內(nèi)目標(biāo)刷臟數(shù)量的波動(dòng),能夠提供更穩(wěn)定的數(shù)據(jù)庫性能;最后,在緩沖數(shù)據(jù)空間內(nèi),第一數(shù)據(jù)塊的數(shù)據(jù)序列號(hào)是基于寫入時(shí)間來確定的,同一個(gè)文件的第一數(shù)據(jù)塊的數(shù)據(jù)序列號(hào)是連續(xù)的,但連續(xù)數(shù)據(jù)序列號(hào)的第一數(shù)據(jù)塊在緩沖數(shù)據(jù)空間的物理空間上是不連續(xù)的,在將第一數(shù)據(jù)塊寫入本地?cái)?shù)據(jù)空間時(shí),為了讀寫效率,在一個(gè)周期內(nèi),通常是對(duì)物理空間相鄰的第一數(shù)據(jù)塊進(jìn)行讀取和寫入,因此通過獲取第一數(shù)據(jù)塊的數(shù)據(jù)序列號(hào),當(dāng)?shù)谝粩?shù)據(jù)塊的數(shù)據(jù)序列號(hào)相差過大時(shí),說明存在存放時(shí)間較長的第一數(shù)據(jù)塊,基于數(shù)據(jù)序列號(hào)確定第三刷臟參數(shù),從而能夠根據(jù)第一數(shù)據(jù)塊數(shù)據(jù)的重要性來優(yōu)先將最需要持久化的第一數(shù)據(jù)塊寫入本地?cái)?shù)據(jù)空間中,避免文件的損壞,也能夠?qū)彌_數(shù)據(jù)空間和本地?cái)?shù)據(jù)空間進(jìn)行優(yōu)化,提升數(shù)據(jù)庫的寫入寫出效率;綜上,本技術(shù)提出的數(shù)據(jù)庫緩存管理方法通過上述方式確定目標(biāo)刷臟數(shù)量,根據(jù)目標(biāo)刷臟數(shù)量確定目標(biāo)數(shù)據(jù)塊,能夠?qū)?nèi)存空間和讀寫性能進(jìn)行優(yōu)化,同時(shí)也能夠避免文件發(fā)生損壞。

14、本技術(shù)的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實(shí)施本技術(shù)而了解。本技術(shù)的目的和其他優(yōu)點(diǎn)可通過在說明書、權(quán)利要求書以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
安达市| 天台县| 当涂县| 司法| 澄迈县| 神木县| 屯昌县| 尉犁县| 肃宁县| 衡南县| 绩溪县| 新昌县| 河北省| 中西区| 永川市| 莱州市| 嘉黎县| 莱芜市| 石柱| 株洲县| 元江| 汤原县| 甘德县| 连南| 张家口市| 日土县| 河间市| 云霄县| 光山县| 义乌市| 抚州市| 托克托县| 海宁市| 固阳县| 霍林郭勒市| 阿拉善左旗| 临颍县| 丹阳市| 大安市| 桃源县| 乌兰县|