[發(fā)明專利]基于數(shù)據(jù)庫的任務執(zhí)行方法及裝置無效
| 申請?zhí)枺?/td> | 201010173441.3 | 申請日: | 2010-05-05 |
| 公開(公告)號: | CN101853182A | 公開(公告)日: | 2010-10-06 |
| 發(fā)明(設計)人: | 馬天俊 | 申請(專利權(quán))人: | 中興通訊股份有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48 |
| 代理公司: | 北京康信知識產(chǎn)權(quán)代理有限責任公司 11240 | 代理人: | 余剛;吳孟秋 |
| 地址: | 518057 廣*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 數(shù)據(jù)庫 任務 執(zhí)行 方法 裝置 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種基于數(shù)據(jù)庫的任務執(zhí)行方法及裝置。
背景技術(shù)
在應用軟件開發(fā)過程中,常常用到關(guān)系型數(shù)據(jù)庫以便存儲和處理數(shù)據(jù)。在相關(guān)技術(shù)中,通常在數(shù)據(jù)庫的一個數(shù)據(jù)庫連接中串行執(zhí)行各個數(shù)據(jù)處理的任務,這種處理方式執(zhí)行任務效率低,并且當任務處理發(fā)生錯誤時,需要全部重新執(zhí)行,也不能從錯誤發(fā)生處恢復執(zhí)行。
為此,相關(guān)技術(shù)中提出了一種多個數(shù)據(jù)庫任務并行執(zhí)行的方法,其將數(shù)據(jù)處理的任務劃分到不同分組內(nèi),歸屬于不同分組的任務之間并行執(zhí)行,各分組中的任務相互獨立,從而減少了任務之間的依賴性,縮短了執(zhí)行任務所需的時間。
但是,這種方法存在以下不足:該方法中組和組之間實現(xiàn)了并行執(zhí)行,但組內(nèi)子任務仍是串行執(zhí)行,不能實現(xiàn)具有復雜的執(zhí)行依賴關(guān)系的任務的執(zhí)行,例如,若某個任務C的前置任務是并行的兩個任務A和任務B,則該方法不能實現(xiàn)A任務和B任務并行執(zhí)行后,再執(zhí)行C任務的數(shù)據(jù)處理的情況;另外,這種方法預先進行分組,每組執(zhí)行任務的執(zhí)行順序固定,且分組的數(shù)量固定,也就是說,數(shù)據(jù)處理的并發(fā)度是固定的,不能隨硬件資源而動態(tài)調(diào)整。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供一種基于數(shù)據(jù)庫的任務執(zhí)行方法及裝置,以至少解決上述問題。
根據(jù)本發(fā)明的一個方面,提供了一種基于數(shù)據(jù)庫的任務執(zhí)行方法,包括:加入數(shù)據(jù)庫連接;數(shù)據(jù)庫連接從任務組中獲取待執(zhí)行的任務;以及判斷獲取的任務的前置任務是否全部執(zhí)行成功,若是,則數(shù)據(jù)庫連接執(zhí)行獲取的任務,否則,數(shù)據(jù)庫連接繼續(xù)從任務組中獲取待執(zhí)行的任務。
進一步地,數(shù)據(jù)庫連接從任務組中獲取待執(zhí)行的任務包括:數(shù)據(jù)庫連接對任務組的查詢操作類型的記錄行加鎖;數(shù)據(jù)庫連接獲取到滿足預定條件的任務,其中,預定條件包括:獲取的任務的執(zhí)行結(jié)果狀態(tài)為初始化或重新打開;數(shù)據(jù)庫連接將獲取的任務的執(zhí)行結(jié)果狀態(tài)設置為選中;數(shù)據(jù)庫連接對查詢操作類型的記錄行解鎖。
進一步地,判斷獲取的任務的前置任務未全部執(zhí)行成功之后,還包括:數(shù)據(jù)庫連接將獲取的任務的執(zhí)行結(jié)果狀態(tài)置為重新打開。
進一步地,將獲取的任務的執(zhí)行結(jié)果狀態(tài)置為重新打開的同時,還將獲取的任務加入前置任務臨時表,預定條件還包括獲取的任務不在前置任務臨時表中。
進一步地,執(zhí)行獲取的任務包括:數(shù)據(jù)庫連接將獲取的任務的執(zhí)行結(jié)果狀態(tài)置為運行,并執(zhí)行獲取的任務的運行指令。
進一步地,在執(zhí)行獲取的任務的運行指令成功的情況下,還包括:數(shù)據(jù)庫連接對任務組的刪除操作類型的記錄行加鎖;數(shù)據(jù)庫連接將獲取的任務的執(zhí)行結(jié)果狀態(tài)置為成功,并刪除前置任務臨時表中的任務;數(shù)據(jù)庫連接對任務組的刪除操作類型的記錄行解鎖。
進一步地,在執(zhí)行獲取的任務的運行指令失敗的情況下,還包括:數(shù)據(jù)庫連接將獲取的任務的執(zhí)行結(jié)果狀態(tài)置為失敗,并將獲取的任務的后置任務的執(zhí)行結(jié)果狀態(tài)置為依賴性失敗。
進一步地,在數(shù)據(jù)庫連接從當前任務組中獲取待執(zhí)行的任務失敗,或者,執(zhí)行獲取的任務之后,還包括:判斷執(zhí)行成功的任務數(shù)量和執(zhí)行失敗的任務數(shù)量之和是否等于任務組中的任務總數(shù),或者,判斷用戶是否發(fā)出停止指令,若是,則停止執(zhí)行,否則,返回從任務組中獲取待執(zhí)行的任務的步驟。
進一步地,數(shù)據(jù)庫連接從當前任務組中獲取待執(zhí)行的任務失敗包括:數(shù)據(jù)庫連接接收到用于指示加鎖等待超時的通知;或者,數(shù)據(jù)庫連接接收到用于指示任務組中不存在待執(zhí)行的任務的通知。
進一步地,判斷獲取的任務的前置任務是否全部執(zhí)行成功包括:根據(jù)預先設置的任務組中任務之間的依賴關(guān)系確定獲取的任務的前置任務;判斷前置任務是否全部執(zhí)行成功。
根據(jù)本發(fā)明的另一個方面,提供了一種基于數(shù)據(jù)庫的任務執(zhí)行裝置,包括:加入模塊,用于加入數(shù)據(jù)庫連接;獲取模塊,用于從任務組中獲取待執(zhí)行的任務;判斷模塊,用于判斷獲取的任務的前置任務是否全部執(zhí)行成功;調(diào)度模塊,用于在判斷模塊的判斷結(jié)果為是的情況下,調(diào)度執(zhí)行模塊,在判斷模塊的判斷結(jié)果為否的情況下,調(diào)度獲取模塊;執(zhí)行模塊,用于執(zhí)行獲取的任務。
通過本發(fā)明,采用加入的數(shù)據(jù)庫連接從任務組中獲取待執(zhí)行的任務,并判斷該任務的前置任務是否全部執(zhí)行成功,若是,則執(zhí)行所述獲取的任務,否則,繼續(xù)從任務組中獲取待執(zhí)行的任務,解決了相關(guān)技術(shù)中數(shù)據(jù)處理并發(fā)度固定導致處理靈活度低的問題,能夠動態(tài)控制數(shù)據(jù)處理的并發(fā)度。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中:
該專利技術(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/201010173441.3/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:一種可組合成座椅的多功能自行車
- 下一篇:一種低溫型熒光顏料及其制備方法
- 數(shù)據(jù)庫
- 數(shù)據(jù)庫管理系統(tǒng)及數(shù)據(jù)庫
- 數(shù)據(jù)庫構(gòu)筑裝置、數(shù)據(jù)庫檢索裝置、數(shù)據(jù)庫裝置、數(shù)據(jù)庫構(gòu)筑方法、以及數(shù)據(jù)庫檢索方法
- 數(shù)據(jù)庫和數(shù)據(jù)庫處理方法
- 數(shù)據(jù)庫系統(tǒng)、數(shù)據(jù)庫更新方法、數(shù)據(jù)庫以及數(shù)據(jù)庫更新程序
- 容器數(shù)據(jù)庫
- 數(shù)據(jù)庫同步方法及數(shù)據(jù)庫
- 一種MongoDB數(shù)據(jù)庫對象復制延遲監(jiān)控方法和裝置
- 數(shù)據(jù)分布式存儲方法、裝置、電子設備及存儲介質(zhì)
- 數(shù)據(jù)庫語句執(zhí)行方法及裝置
- 以注射方式執(zhí)行死刑的自動執(zhí)行車的執(zhí)行床
- 過程執(zhí)行裝置、過程執(zhí)行方法以及過程執(zhí)行程序
- 用以執(zhí)行跳舞電子游戲的執(zhí)行系統(tǒng)及其執(zhí)行方法
- 策略執(zhí)行系統(tǒng)及其執(zhí)行方法
- 腳本執(zhí)行系統(tǒng)和腳本執(zhí)行方法
- 命令執(zhí)行設備、命令執(zhí)行系統(tǒng)、命令執(zhí)行方法以及命令執(zhí)行程序
- 程序執(zhí)行裝置、程序執(zhí)行系統(tǒng)以及程序執(zhí)行方法
- 處理執(zhí)行設備和由該處理執(zhí)行設備執(zhí)行的方法
- 有序任務的執(zhí)行方法、執(zhí)行裝置和執(zhí)行系統(tǒng)
- 執(zhí)行器(閥門執(zhí)行器)





