[發(fā)明專利]基于MSSQLSERVER表分區(qū)及自動維護方法及系統(tǒng)有效
| 申請?zhí)枺?/td> | 201310750793.4 | 申請日: | 2013-12-30 |
| 公開(公告)號: | CN103699676B | 公開(公告)日: | 2017-02-15 |
| 發(fā)明(設(shè)計)人: | 余有能 | 申請(專利權(quán))人: | 廈門市美亞柏科信息股份有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 深圳市博銳專利事務(wù)所44275 | 代理人: | 張明 |
| 地址: | 361000 福建省廈門*** | 國省代碼: | 福建;35 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 mssqlserver 分區(qū) 自動 維護 方法 系統(tǒng) | ||
1.一種基于MSSQL?SERVER表分區(qū)及自動維護方法,其特征在于:它包括分區(qū)步驟及自動維護步驟;
所述分區(qū)步驟包括,對同類型的表根據(jù)需求設(shè)計數(shù)據(jù)保留策略,同類表基于相同的數(shù)據(jù)保留策略、分區(qū)函數(shù)和分區(qū)架構(gòu)進行表創(chuàng)建;所述表創(chuàng)建包括依次創(chuàng)建表分區(qū)函數(shù)、創(chuàng)建表分區(qū)架構(gòu),定義表分區(qū)結(jié)構(gòu);
所述自動維護步驟包括,判斷數(shù)據(jù)庫中的表是否需要進行表分區(qū)整理,若需要則將不符合數(shù)據(jù)保留策略的數(shù)據(jù)轉(zhuǎn)儲到臨時表中,而后修改表分區(qū)函數(shù)、修改表分區(qū)架構(gòu)并重新定義表分區(qū)結(jié)構(gòu)。
2.如權(quán)利要求1所述的基于MSSQL?SERVER表分區(qū)及自動維護方法,其特征在于:它還包括計劃任務(wù)步驟,所述任務(wù)步驟包括設(shè)定觸發(fā)條件,當(dāng)觸發(fā)條件滿足時執(zhí)行自動維護步驟。
3.如權(quán)利要求2所述的基于MSSQL?SERVER表分區(qū)及自動維護方法,其特征在于:所述計劃任務(wù)步驟具體包括,
S1)、進入操作系統(tǒng)的任務(wù)計劃程序中制定執(zhí)行計劃,包括添加執(zhí)行任務(wù)內(nèi)容及設(shè)定觸發(fā)條件;所述觸發(fā)條件包括任務(wù)觸發(fā)時間點和觸發(fā)時間間隔;所述執(zhí)行任務(wù)內(nèi)容為執(zhí)行自動維護步驟;
S2)、開啟執(zhí)行計劃,當(dāng)滿足觸發(fā)條件時觸發(fā)執(zhí)行任務(wù)內(nèi)容;
S3)、任務(wù)計劃根據(jù)觸發(fā)時間間隔累加任務(wù)觸發(fā)時間。
4.如權(quán)利要求1-3任意一項所述的基于MSSQL?SERVER表分區(qū)及自動維護方法,其特征在于:所述分區(qū)步驟具體包括,根據(jù)業(yè)務(wù)特征與數(shù)據(jù)需求為同一個類型的表制定數(shù)據(jù)保留策略,而后就同類表基于相同的數(shù)據(jù)保留策略、分區(qū)函數(shù)和分區(qū)架構(gòu)進行表創(chuàng)建;所述表創(chuàng)建包括步驟,
A)、于數(shù)據(jù)庫中添加一個包括表名、觸發(fā)分區(qū)整理值及分區(qū)整理狀態(tài)鍵名的表分區(qū)管理表;所述分區(qū)整理狀態(tài)鍵名中存儲有是否需要進行分區(qū)整理的鍵值;
B)、根據(jù)分區(qū)鍵字段、分區(qū)數(shù)量計算各分區(qū)之間邊界值后設(shè)計表分區(qū)策略;
C)、根據(jù)表分區(qū)策略創(chuàng)建表分區(qū)函數(shù)并執(zhí)行;
D)、創(chuàng)建表分區(qū)架構(gòu):首先根據(jù)分區(qū)函數(shù)中邊界值和/或分區(qū)數(shù)量在數(shù)據(jù)庫中創(chuàng)建相同數(shù)量的文件組,然后根據(jù)文件組數(shù)量為每個文件組添加一個數(shù)據(jù)文件,并定義數(shù)據(jù)文件的增加方式、最大值大小;
E)、根據(jù)業(yè)務(wù)定義的表結(jié)構(gòu)定義表分區(qū)架構(gòu)。
5.如權(quán)利要求1-3任意一項所述的基于MSSQL?SERVER表分區(qū)及自動維護方法,其特征在于:所述自動維護步驟具體包括,
F)、從數(shù)據(jù)庫中的表分區(qū)管理表獲取表名、觸發(fā)分區(qū)整理值、分區(qū)整理狀態(tài),依次判斷每個表名對應(yīng)的分區(qū)整理狀態(tài)中鍵值是否需要進行分區(qū)整理,是則繼續(xù)步驟,否則結(jié)束;
G)、根據(jù)業(yè)務(wù)定義的表結(jié)構(gòu)創(chuàng)建一個臨時表;
H)、獲取當(dāng)前表名的表分區(qū)中最小或最早的分區(qū)序號;
I)、分區(qū)交換數(shù)據(jù),將獲取的分區(qū)序號對應(yīng)分區(qū)中的數(shù)據(jù)移動至臨時表中;
J)、修改分區(qū)架構(gòu),將表分區(qū)中獲取的分區(qū)序號下一個的數(shù)據(jù)分區(qū)序號修改為獲取的分區(qū)序號;
K)、修改分區(qū)函數(shù),刪除獲的分區(qū)序號對應(yīng)的分區(qū)范圍,從新添加最大或者最新的分區(qū)范圍;
L)、將表分區(qū)管理表中本項表名對應(yīng)的分區(qū)整理狀態(tài)中鍵值更新為已整理。
6.如權(quán)利要求5所述的基于MSSQL?SERVER表分區(qū)及自動維護方法,其特征在于:所述步驟K與L之間還包括,刪除臨時表或根據(jù)歷史表的命名規(guī)則,重命名臨時表并存儲為歷史轉(zhuǎn)儲表。
7.一種基于MSSQL?SERVER表分區(qū)及自動維護系統(tǒng),其特征在于:它包括分區(qū)模塊及自動維護模塊;
所述分區(qū)模塊,用于對同類型的表根據(jù)需求設(shè)計數(shù)據(jù)保留策略,同類表基于相同的數(shù)據(jù)保留策略、分區(qū)函數(shù)和分區(qū)架構(gòu)進行表創(chuàng)建;所述表創(chuàng)建包括依次創(chuàng)建表分區(qū)函數(shù)、創(chuàng)建表分區(qū)架構(gòu),定義表分區(qū)結(jié)構(gòu);
所述自動維護模塊,用于判斷數(shù)據(jù)庫中的表是否需要進行表分區(qū)整理,若需要則將不符合數(shù)據(jù)保留策略的數(shù)據(jù)轉(zhuǎn)儲到臨時表中,而后修改表分區(qū)函數(shù)、修改表分區(qū)架構(gòu)并重新定義表分區(qū)結(jié)構(gòu)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于廈門市美亞柏科信息股份有限公司,未經(jīng)廈門市美亞柏科信息股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310750793.4/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





