亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

數(shù)據(jù)庫(kù)發(fā)布時(shí)間的預(yù)測(cè)方法和系統(tǒng)與流程

文檔序號(hào):11199326閱讀:483來(lái)源:國(guó)知局
數(shù)據(jù)庫(kù)發(fā)布時(shí)間的預(yù)測(cè)方法和系統(tǒng)與流程

本發(fā)明涉及一種數(shù)據(jù)庫(kù)發(fā)布時(shí)間的預(yù)測(cè)方法和系統(tǒng)。



背景技術(shù):

現(xiàn)有的數(shù)據(jù)庫(kù)發(fā)布系統(tǒng)中沒(méi)有相關(guān)數(shù)據(jù)庫(kù)變更時(shí)間窗口預(yù)測(cè)的方法,使得各部門(mén)的開(kāi)發(fā)無(wú)法精確的了解數(shù)據(jù)庫(kù)相關(guān)的信息而判斷合適的發(fā)布時(shí)間。因此在進(jìn)行數(shù)據(jù)庫(kù)變更時(shí)可能會(huì)引發(fā)生產(chǎn)環(huán)境數(shù)據(jù)庫(kù)長(zhǎng)時(shí)間的阻塞,影響線上業(yè)務(wù)的正常使用。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明要解決的技術(shù)問(wèn)題是為了克服現(xiàn)有技術(shù)中缺乏對(duì)數(shù)據(jù)庫(kù)的發(fā)布時(shí)間進(jìn)行預(yù)測(cè),以避免數(shù)據(jù)庫(kù)的變更可能引發(fā)的生產(chǎn)環(huán)境數(shù)據(jù)庫(kù)長(zhǎng)時(shí)間的阻塞,影響線上業(yè)務(wù)的正常使用的缺陷,提供一種數(shù)據(jù)庫(kù)發(fā)布時(shí)間的預(yù)測(cè)方法和系統(tǒng)。

本發(fā)明是通過(guò)以下技術(shù)方案解決上述技術(shù)問(wèn)題的:

一種數(shù)據(jù)庫(kù)發(fā)布時(shí)間的預(yù)測(cè)方法,其特點(diǎn)在于,建立一映射列表,所述映射列表包括所述數(shù)據(jù)庫(kù)的多個(gè)綜合權(quán)重值,以及與每一綜合權(quán)重值一一對(duì)應(yīng)的所述數(shù)據(jù)庫(kù)的多個(gè)發(fā)布時(shí)間,所述預(yù)測(cè)方法包括:

s1、判斷所述數(shù)據(jù)庫(kù)接收的ddl(datadefinitionlanguage,數(shù)據(jù)定義語(yǔ)言)操作類型;

s2、判斷所述ddl操作類型是否會(huì)引起全表掃描,若是,計(jì)算所述數(shù)據(jù)庫(kù)的表容量權(quán)重值與表熱度權(quán)重值的總和;若否,計(jì)算所述數(shù)據(jù)庫(kù)的表熱度權(quán)重值;

其中,所述表熱度權(quán)重值為所述數(shù)據(jù)庫(kù)在一時(shí)間段內(nèi)被訪問(wèn)的頻率所表征的權(quán)重值,所述表容量權(quán)重值為所述數(shù)據(jù)庫(kù)接收所述ddl操作類型的操作后的容量所表征的權(quán)重值;

s3、將步驟s2的結(jié)果作為所述數(shù)據(jù)庫(kù)的綜合權(quán)重值;

s4、查找所述映射列表中與所述綜合權(quán)重值對(duì)應(yīng)的所述數(shù)據(jù)庫(kù)的發(fā)布時(shí)間。

較佳地,步驟s2中判斷所述ddl操作類型是否會(huì)引起全表掃描包括:

s21、在所述數(shù)據(jù)庫(kù)中建立一數(shù)據(jù)表;

s22、向所述數(shù)據(jù)表中插入或修改一條數(shù)據(jù)記錄,并開(kāi)啟io(input/output輸入輸出)檢測(cè);

s23、判斷所述插入或修改的操作是否產(chǎn)生邏輯讀,若是,則所述ddl操作類型會(huì)引起全表掃描,若否,所述ddl操作類型不會(huì)引起全表掃描。

較佳地,所述頻率的計(jì)算方法為:以一時(shí)間間隔計(jì)算user_scans,user_seeks,user_updates操作所述數(shù)據(jù)庫(kù)的次數(shù)之和作為所述數(shù)據(jù)庫(kù)被訪問(wèn)的頻率。

其中,user_scans,user_seeks,user_updates均為數(shù)據(jù)庫(kù)的操作語(yǔ)言,分別指在索引上的遍歷操作,在索引上的查找操作,在索引上的更新操作??梢岳斫?,本方案獲取頻率所執(zhí)行的操作方式不限于上述三種,還可為其它的可以表征頻率的操作。

較佳地,所述容量的計(jì)算方法為:根據(jù)接收所述ddl操作類型的操作后的所述數(shù)據(jù)庫(kù)的行數(shù)和數(shù)據(jù)庫(kù)文件的大小獲得所述數(shù)據(jù)庫(kù)的容量。

較佳地,所述映射列表還包括一熱度權(quán)重映射列表和一容量權(quán)重映射列表,所述熱度權(quán)重映射列表包括所述數(shù)據(jù)庫(kù)被訪問(wèn)的若干頻率和與每一頻率一一對(duì)應(yīng)的表熱度權(quán)重值,所述容量權(quán)重映射列表包括所述數(shù)據(jù)庫(kù)接收所述ddl操作類型的操作后的若干容量和與每一容量一一對(duì)應(yīng)的表容量權(quán)重值。

本發(fā)明還提供一種數(shù)據(jù)庫(kù)發(fā)布時(shí)間的預(yù)測(cè)系統(tǒng),其特點(diǎn)在于,所述系統(tǒng)包括一映射列表,所述映射列表包括所述數(shù)據(jù)庫(kù)的多個(gè)綜合權(quán)重值,以及與每一綜合權(quán)重值一一對(duì)應(yīng)的所述數(shù)據(jù)庫(kù)的多個(gè)發(fā)布時(shí)間,所述系統(tǒng)還包括:

一操作類型判斷模塊,用于判斷所述數(shù)據(jù)庫(kù)接收的ddl操作類型;

一全表掃描判斷模塊,用于判斷所述ddl操作類型是否會(huì)引起全表掃描,若是,計(jì)算所述數(shù)據(jù)庫(kù)的表容量權(quán)重值與表熱度權(quán)重值的總和;若否,計(jì)算所述數(shù)據(jù)庫(kù)的表熱度權(quán)重值;

其中,所述表熱度權(quán)重值為所述數(shù)據(jù)庫(kù)在一時(shí)間段內(nèi)被訪問(wèn)的頻率所表征的權(quán)重值,所述表容量權(quán)重值為所述數(shù)據(jù)庫(kù)接收所述ddl操作類型的操作后的容量所表征的權(quán)重值;

和一查找模塊,用于將所述全表掃描判斷模塊的執(zhí)行結(jié)果作為所述數(shù)據(jù)庫(kù)的綜合權(quán)重值,并在所述映射列表中查找與所述綜合權(quán)重值對(duì)應(yīng)的所述數(shù)據(jù)庫(kù)的發(fā)布時(shí)間。

較佳地,所述全表掃描判斷模塊包括:

一數(shù)據(jù)表建立模塊,用于在所述數(shù)據(jù)庫(kù)中建立一數(shù)據(jù)表;

一數(shù)據(jù)記錄更改模塊,用于向所述數(shù)據(jù)表中插入或修改一條數(shù)據(jù)記錄,并開(kāi)啟io檢測(cè);

和一邏輯讀判斷模塊,用于判斷所述插入或修改的操作是否產(chǎn)生邏輯讀,若是,則所述ddl操作類型會(huì)引起全表掃描,若否,所述ddl操作類型不會(huì)引起全表掃描。

較佳地,所述頻率為:以一時(shí)間間隔計(jì)算user_scans,user_seeks,user_updates操作所述數(shù)據(jù)庫(kù)的次數(shù)之和作為所述數(shù)據(jù)庫(kù)被訪問(wèn)的頻率。

較佳地,所述容量為:根據(jù)接收所述ddl操作類型的操作后的所述數(shù)據(jù)庫(kù)的行數(shù)和數(shù)據(jù)庫(kù)文件的大小獲得所述數(shù)據(jù)庫(kù)的容量。

較佳地,所述映射列表還包括一熱度權(quán)重映射列表和一容量權(quán)重映射列表,所述熱度權(quán)重映射列表包括所述數(shù)據(jù)庫(kù)被訪問(wèn)的若干頻率和與每一頻率一一對(duì)應(yīng)的表熱度權(quán)重值,所述容量權(quán)重映射列表包括所述數(shù)據(jù)庫(kù)接收所述ddl操作類型的操作后的若干容量和與每一容量一一對(duì)應(yīng)的表容量權(quán)重值。

本發(fā)明的積極進(jìn)步效果在于:本發(fā)明根據(jù)數(shù)據(jù)庫(kù)接收到的操作類型,并對(duì)操作類型進(jìn)行分析,計(jì)算數(shù)據(jù)庫(kù)的權(quán)重,從而獲得數(shù)據(jù)庫(kù)的發(fā)布時(shí)間,能夠?qū)?shù)據(jù)庫(kù)的發(fā)布時(shí)間做出合理的預(yù)測(cè),降低了數(shù)據(jù)庫(kù)發(fā)布對(duì)生成環(huán)境的影響,提高了發(fā)布成功率,避免了在不當(dāng)時(shí)刻發(fā)布數(shù)據(jù)庫(kù)導(dǎo)致的數(shù)據(jù)庫(kù)長(zhǎng)時(shí)間的阻塞或數(shù)據(jù)庫(kù)產(chǎn)生的其它故障。

附圖說(shuō)明

圖1為本發(fā)明實(shí)施例1的數(shù)據(jù)庫(kù)發(fā)布時(shí)間的預(yù)測(cè)方法的流程圖。

圖2為本發(fā)明實(shí)施例2的數(shù)據(jù)庫(kù)發(fā)布時(shí)間的預(yù)測(cè)系統(tǒng)的結(jié)構(gòu)示意圖。

具體實(shí)施方式

下面通過(guò)實(shí)施例的方式進(jìn)一步說(shuō)明本發(fā)明,但并不因此將本發(fā)明限制在所述的實(shí)施例范圍之中。

實(shí)施例1

本實(shí)施例提供一種數(shù)據(jù)庫(kù)發(fā)布時(shí)間的預(yù)測(cè)方法,如圖1所示。

建立一映射列表,所述映射列表包括一綜合權(quán)重發(fā)布時(shí)間映射列表,所述綜合權(quán)重發(fā)布時(shí)間映射列表包括所述數(shù)據(jù)庫(kù)的多個(gè)綜合權(quán)重值,以及與每一綜合權(quán)重值一一對(duì)應(yīng)的所述數(shù)據(jù)庫(kù)的多個(gè)發(fā)布時(shí)間。所述映射列表還包括一熱度權(quán)重映射列表和一容量權(quán)重映射列表,所述熱度權(quán)重映射列表包括所述數(shù)據(jù)庫(kù)被訪問(wèn)的若干頻率和與每一頻率一一對(duì)應(yīng)的表熱度權(quán)重值,所述容量權(quán)重映射列表包括所述數(shù)據(jù)庫(kù)接收所述ddl操作類型的操作后的若干容量和與每一容量一一對(duì)應(yīng)的表容量權(quán)重值。所述映射列表的形式可舉例如表1所示:

表1映射列表

所述預(yù)測(cè)方法包括:

步驟101、判斷所述數(shù)據(jù)庫(kù)接收的ddl操作類型;

其中,數(shù)據(jù)庫(kù)可為schema數(shù)據(jù)庫(kù)。ddl操作類型不限于插入、創(chuàng)建、查詢、刪除等操作類型。

步驟102、判斷所述ddl操作類型是否會(huì)引起全表掃描,若是,計(jì)算所述數(shù)據(jù)庫(kù)的表容量權(quán)重值與表熱度權(quán)重值的總和;若否,計(jì)算所述數(shù)據(jù)庫(kù)的表熱度權(quán)重值;

其中,所述表熱度權(quán)重值為所述數(shù)據(jù)庫(kù)在一時(shí)間段內(nèi)被訪問(wèn)的頻率所表征的權(quán)重值,所述表容量權(quán)重值為所述數(shù)據(jù)庫(kù)接收所述ddl操作類型的操作后的容量所表征的權(quán)重值;

所述頻率的計(jì)算方法為:以一時(shí)間間隔計(jì)算user_scans,user_seeks,user_updates操作所述數(shù)據(jù)庫(kù)的次數(shù)之和作為所述數(shù)據(jù)庫(kù)被訪問(wèn)的頻率。

所述容量的計(jì)算方法為:根據(jù)接收所述ddl操作類型的操作后的所述數(shù)據(jù)庫(kù)的行數(shù)和數(shù)據(jù)庫(kù)文件的大小獲得所述數(shù)據(jù)庫(kù)的容量。

該時(shí)間間隔可為10秒,頻率可以次/秒計(jì)算。容量可以m(兆)計(jì)算。

步驟102中判斷所述ddl操作類型是否會(huì)引起全表掃描包括:

一、在所述數(shù)據(jù)庫(kù)中建立一數(shù)據(jù)表;

該數(shù)據(jù)表可只有一個(gè)字段,該字段定義為int,notnull,primarykey型,即整型,非空,主鍵。

二、向所述數(shù)據(jù)表中插入或修改一條數(shù)據(jù)記錄,并開(kāi)啟io檢測(cè);

開(kāi)啟io檢測(cè)可通過(guò)語(yǔ)句setstatisticsioon實(shí)現(xiàn)。

三、判斷所述插入或修改的操作是否產(chǎn)生邏輯讀,若是,則所述ddl操作類型會(huì)引起全表掃描,若否,所述ddl操作類型不會(huì)引起全表掃描。

其中,邏輯讀,也即logicreads。若邏輯讀的結(jié)果大于0,則存在全表更新,也即會(huì)引起全表掃描。反之,則不存在全表更新,也即不會(huì)引起全表掃描。

步驟103、將步驟102的結(jié)果作為所述數(shù)據(jù)庫(kù)的綜合權(quán)重值;

步驟104、查找所述映射列表中與所述綜合權(quán)重值對(duì)應(yīng)的所述數(shù)據(jù)庫(kù)的發(fā)布時(shí)間。

該發(fā)布時(shí)間可為具體的時(shí)刻,也可為一時(shí)間段。而針對(duì)不同的操作類型,還可對(duì)數(shù)據(jù)庫(kù)的發(fā)布時(shí)間不做限制,或者采取人工發(fā)布的方式。

此外,還可將數(shù)據(jù)庫(kù)發(fā)布的行為分類是否緊急,針對(duì)緊急的數(shù)據(jù)庫(kù)發(fā)布,則直接按照發(fā)布時(shí)間發(fā)布,并報(bào)告數(shù)據(jù)庫(kù)發(fā)布成功的消息;針對(duì)不緊急的數(shù)據(jù)庫(kù)發(fā)布,則可在發(fā)布時(shí)間內(nèi)在更加合理的時(shí)間段或時(shí)刻進(jìn)行發(fā)布。

比如,本實(shí)施例在實(shí)施時(shí)得到邏輯讀的結(jié)果為0,訪問(wèn)頻率為100次/秒,表熱度權(quán)重值為10。也即數(shù)據(jù)庫(kù)的發(fā)布操作不會(huì)引起全表更新,綜合權(quán)重值為10,發(fā)布時(shí)間為19:00。

可見(jiàn),本實(shí)施例根據(jù)數(shù)據(jù)庫(kù)接收到的操作類型,并對(duì)操作類型進(jìn)行分析,計(jì)算數(shù)據(jù)庫(kù)的權(quán)重,從而獲得數(shù)據(jù)庫(kù)的發(fā)布時(shí)間,能夠?qū)?shù)據(jù)庫(kù)的發(fā)布時(shí)間做出合理的預(yù)測(cè),降低了數(shù)據(jù)庫(kù)發(fā)布對(duì)生成環(huán)境的影響,提高了發(fā)布成功率,避免了在不當(dāng)時(shí)刻發(fā)布數(shù)據(jù)庫(kù)導(dǎo)致的數(shù)據(jù)庫(kù)長(zhǎng)時(shí)間的阻塞或數(shù)據(jù)庫(kù)產(chǎn)生的其它故障。

實(shí)施例2

本實(shí)施例提供一種數(shù)據(jù)庫(kù)發(fā)布時(shí)間的預(yù)測(cè)系統(tǒng),如圖2所示。所述系統(tǒng)包括一映射列表1,所述映射列表包括所述數(shù)據(jù)庫(kù)的多個(gè)綜合權(quán)重值,以及與每一綜合權(quán)重值一一對(duì)應(yīng)的所述數(shù)據(jù)庫(kù)的多個(gè)發(fā)布時(shí)間,所述系統(tǒng)還包括:

一操作類型判斷模塊2,用于判斷所述數(shù)據(jù)庫(kù)接收的ddl操作類型;

一全表掃描判斷模塊3,用于判斷所述ddl操作類型是否會(huì)引起全表掃描,若是,計(jì)算所述數(shù)據(jù)庫(kù)的表容量權(quán)重值與表熱度權(quán)重值的總和;若否,計(jì)算所述數(shù)據(jù)庫(kù)的表熱度權(quán)重值;

其中,所述表熱度權(quán)重值為所述數(shù)據(jù)庫(kù)在一時(shí)間段內(nèi)被訪問(wèn)的頻率所表征的權(quán)重值,所述表容量權(quán)重值為所述數(shù)據(jù)庫(kù)接收所述ddl操作類型的操作后的容量所表征的權(quán)重值;

和一查找模塊4,用于將所述全表掃描判斷模塊的執(zhí)行結(jié)果作為所述數(shù)據(jù)庫(kù)的綜合權(quán)重值,并在所述映射列表中查找與所述綜合權(quán)重值對(duì)應(yīng)的所述數(shù)據(jù)庫(kù)的發(fā)布時(shí)間。

其中,所述全表掃描判斷模塊3包括:

一數(shù)據(jù)表建立模塊31,用于在所述數(shù)據(jù)庫(kù)中建立一數(shù)據(jù)表;

一數(shù)據(jù)記錄更改模塊32,用于向所述數(shù)據(jù)表中插入或修改一條數(shù)據(jù)記錄,并開(kāi)啟io檢測(cè);

和一邏輯讀判斷模塊33,用于判斷所述插入或修改的操作是否產(chǎn)生邏輯讀,若是,則所述ddl操作類型會(huì)引起全表掃描,若否,所述ddl操作類型不會(huì)引起全表掃描。

所述頻率為:以一時(shí)間間隔計(jì)算user_scans,user_seeks,user_updates操作所述數(shù)據(jù)庫(kù)的次數(shù)之和作為所述數(shù)據(jù)庫(kù)被訪問(wèn)的頻率。

所述容量為:根據(jù)接收所述ddl操作類型的操作后的所述數(shù)據(jù)庫(kù)的行數(shù)和數(shù)據(jù)庫(kù)文件的大小獲得所述數(shù)據(jù)庫(kù)的容量。

所述映射列表還包括一熱度權(quán)重映射列表和一容量權(quán)重映射列表,所述熱度權(quán)重映射列表包括所述數(shù)據(jù)庫(kù)被訪問(wèn)的若干頻率和與每一頻率一一對(duì)應(yīng)的表熱度權(quán)重值,所述容量權(quán)重映射列表包括所述數(shù)據(jù)庫(kù)接收所述ddl操作類型的操作后的若干容量和與每一容量一一對(duì)應(yīng)的表容量權(quán)重值。

本實(shí)施例能夠達(dá)到與實(shí)施例1相同的技術(shù)效果。

雖然以上描述了本發(fā)明的具體實(shí)施方式,但是本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,這些僅是舉例說(shuō)明,本發(fā)明的保護(hù)范圍是由所附權(quán)利要求書(shū)限定的。本領(lǐng)域的技術(shù)人員在不背離本發(fā)明的原理和實(shí)質(zhì)的前提下,可以對(duì)這些實(shí)施方式做出多種變更或修改,但這些變更和修改均落入本發(fā)明的保護(hù)范圍。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1