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

數(shù)據(jù)庫服務(wù)系統(tǒng)及兼容多種數(shù)據(jù)庫的方法與流程

文檔序號(hào):11590087閱讀:235來源:國知局

本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別是涉及一種數(shù)據(jù)庫服務(wù)系統(tǒng)及兼容多種數(shù)據(jù)庫的方法。



背景技術(shù):

paas(platformasaservice,平臺(tái)即服務(wù)),是在虛擬化技術(shù)的基礎(chǔ)上,提供一系列中間件,其中最為常見也是最重要的一類是數(shù)據(jù)庫服務(wù)系統(tǒng)。數(shù)據(jù)庫的種類繁多,如關(guān)系型數(shù)據(jù)庫mysql、postgresql,非關(guān)系型mongodb,緩存類的數(shù)據(jù)庫redis、memcached等。不同類型數(shù)據(jù)庫的基本管理功能(創(chuàng)建、刪除、調(diào)整配置、啟停等)具有較大的差異性。paas系統(tǒng)在支持不同類型數(shù)據(jù)庫時(shí),需要兼容不同類型數(shù)據(jù)庫的部署和管理的差異性。paas系統(tǒng)上針對(duì)每一個(gè)基本數(shù)據(jù)庫相關(guān)的管理功能都需要經(jīng)過一系列任務(wù)完成,包括虛擬化、存儲(chǔ)、網(wǎng)絡(luò)、數(shù)據(jù)庫等任務(wù)?,F(xiàn)有技術(shù)中,paas系統(tǒng)在支持多種類型的數(shù)據(jù)庫時(shí),每種數(shù)據(jù)庫類型都單獨(dú)對(duì)應(yīng)一套任務(wù),每增加一種新類型的數(shù)據(jù)庫支持時(shí),需要開發(fā)維護(hù)一套新的任務(wù),開發(fā)周期長,開發(fā)效率低下。

可見,現(xiàn)有技術(shù)中的數(shù)據(jù)庫服務(wù)系統(tǒng)及兼容多種數(shù)據(jù)庫的方法至少存在開發(fā)效率低下的問題。



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

本申請(qǐng)?zhí)峁┮环N數(shù)據(jù)庫服務(wù)系統(tǒng)及兼容多種數(shù)據(jù)庫的方法,解決現(xiàn)有技術(shù)中兼容多種數(shù)據(jù)庫時(shí)開發(fā)效率低下的問題。

為了解決上述問題,第一方面,本申請(qǐng)實(shí)施例提供了一種數(shù)據(jù)庫服務(wù)系統(tǒng)包括:

插件層,包括與數(shù)據(jù)庫類型一一對(duì)應(yīng)的至少一個(gè)插件,所述插件用于輸出相應(yīng)類型數(shù)據(jù)庫的數(shù)據(jù)庫操作參數(shù);

多級(jí)任務(wù)系統(tǒng),用于執(zhí)行數(shù)據(jù)庫操作;

插件中間層,位于所述插件層和所述多級(jí)任務(wù)系統(tǒng)之間,用于從所述插件層中的插件獲取數(shù)據(jù)庫操作參數(shù)后,轉(zhuǎn)換為所述多級(jí)任務(wù)系統(tǒng)的任務(wù)調(diào)度參數(shù),由所述多級(jí)任務(wù)系統(tǒng)根據(jù)轉(zhuǎn)換得到的所述任務(wù)調(diào)度參數(shù)調(diào)度與所述數(shù)據(jù)庫操作關(guān)聯(lián)的任務(wù),以執(zhí)行數(shù)據(jù)庫操作。

第二方面,本申請(qǐng)實(shí)施例提供了一種兼容多種數(shù)據(jù)庫的方法,應(yīng)用于本申請(qǐng)實(shí)施例中所述的數(shù)據(jù)庫服務(wù)系統(tǒng),所述方法包括:

根據(jù)接收的數(shù)據(jù)庫操作指令確定待調(diào)度的任務(wù);

通過所述插件中間層獲取所述數(shù)據(jù)庫操作指令對(duì)應(yīng)的任務(wù)調(diào)度參數(shù);

根據(jù)所述任務(wù)調(diào)度參數(shù)調(diào)度所述待調(diào)度的任務(wù),以執(zhí)行所述數(shù)據(jù)庫操作指令。

第三方面,本申請(qǐng)實(shí)施例提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該程序被處理器執(zhí)行時(shí)本申請(qǐng)實(shí)施例公開的所述paas平臺(tái)兼容多種數(shù)據(jù)庫方法的步驟。

本申請(qǐng)實(shí)施例公開的數(shù)據(jù)庫服務(wù)系統(tǒng),通過在插件層中預(yù)置不同類型數(shù)據(jù)庫的操作參數(shù),并由插件中間層將所述數(shù)據(jù)庫的操作參數(shù)轉(zhuǎn)換為任務(wù)調(diào)度參數(shù),以實(shí)現(xiàn)多級(jí)任務(wù)系統(tǒng)中的任務(wù)流以及任務(wù)的調(diào)度,進(jìn)一步實(shí)現(xiàn)數(shù)據(jù)庫服務(wù)系統(tǒng)提供給上層應(yīng)用的數(shù)據(jù)庫服務(wù),解決了現(xiàn)有技術(shù)中數(shù)據(jù)庫服務(wù)系統(tǒng)支持多種數(shù)據(jù)庫的時(shí)需要為新增的數(shù)據(jù)庫類型單獨(dú)開發(fā)一套任務(wù)流和任務(wù)而導(dǎo)致的開發(fā)效率低下的問題。通過本申請(qǐng)公開的數(shù)據(jù)庫服務(wù)系統(tǒng),當(dāng)需要支持新的數(shù)據(jù)庫類型時(shí),只需要在插件層中的增加相應(yīng)類型數(shù)據(jù)庫的插件,以保證多級(jí)任務(wù)系統(tǒng)能夠通過插件中間層獲取針對(duì)該類型數(shù)據(jù)庫的任務(wù)調(diào)度參數(shù),便可支持該類型數(shù)據(jù)庫的服務(wù),有效提高了數(shù)據(jù)庫服務(wù)系統(tǒng)的開發(fā)效率。

附圖說明

為了更清楚地說明本申請(qǐng)實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請(qǐng)的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本申請(qǐng)實(shí)施例一的數(shù)據(jù)庫服務(wù)系統(tǒng)的結(jié)構(gòu)示意圖;

圖2是本申請(qǐng)實(shí)施例一的數(shù)據(jù)庫服務(wù)系統(tǒng)的結(jié)構(gòu)示意圖之二;

圖3是本申請(qǐng)實(shí)施例二兼容多種數(shù)據(jù)庫的方法流程圖;

圖4是本申請(qǐng)實(shí)施例三兼容多種數(shù)據(jù)庫的方法流程圖。

具體實(shí)施方式

下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。

實(shí)施例一

本申請(qǐng)公開的一種數(shù)據(jù)庫服務(wù)系統(tǒng),如圖1所示,該系統(tǒng)包括:插件層100、插件中間層110和多級(jí)任務(wù)系統(tǒng)120。

其中,所述插件層100,包括與數(shù)據(jù)庫類型一一對(duì)應(yīng)的至少一個(gè)插件,所述插件用于輸出相應(yīng)類型數(shù)據(jù)庫的數(shù)據(jù)庫操作參數(shù)。

所述多級(jí)任務(wù)系統(tǒng)120,用于執(zhí)行數(shù)據(jù)庫操作。

所述插件中間層110,位于所述插件層100和所述多級(jí)任務(wù)系統(tǒng)120之間,用于從所述插件層中的插件獲取數(shù)據(jù)庫操作參數(shù)后,轉(zhuǎn)換為所述多級(jí)任務(wù)系統(tǒng)的任務(wù)調(diào)度參數(shù),由所述多級(jí)任務(wù)系統(tǒng)根據(jù)轉(zhuǎn)換得到的所述任務(wù)調(diào)度參數(shù)調(diào)度與所述數(shù)據(jù)庫操作關(guān)聯(lián)的任務(wù),以執(zhí)行數(shù)據(jù)庫操作。

具體實(shí)施時(shí),所述插件層100中預(yù)設(shè)有多個(gè)插件1001,每個(gè)插件對(duì)應(yīng)一種數(shù)據(jù)庫類型。所述插件1001用于輸出相應(yīng)類型數(shù)據(jù)庫的操作參數(shù),例如:創(chuàng)建數(shù)據(jù)庫操作的執(zhí)行的函數(shù)名稱列表、數(shù)據(jù)庫操作函數(shù)的參數(shù)、數(shù)據(jù)庫操作函數(shù)執(zhí)行結(jié)果等。

數(shù)據(jù)庫服務(wù)系統(tǒng),如paas系統(tǒng),提供的數(shù)據(jù)庫服務(wù)包括:創(chuàng)建數(shù)據(jù)庫集群、讀取數(shù)據(jù)庫、查詢數(shù)據(jù)庫,刪除數(shù)據(jù)庫等,paas系統(tǒng)通常會(huì)提供給上層應(yīng)用統(tǒng)一的接口,便于上層應(yīng)用調(diào)用相關(guān)數(shù)據(jù)庫服務(wù)。對(duì)于不同類型的數(shù)據(jù)庫,paas系統(tǒng)提供的數(shù)據(jù)庫服務(wù)會(huì)有所不同,paas系統(tǒng)提供的數(shù)據(jù)庫服務(wù)時(shí)執(zhí)行的數(shù)據(jù)庫操作的函數(shù)名稱、函數(shù)參數(shù)以及執(zhí)行結(jié)果等操作參數(shù)全部預(yù)先設(shè)置在相應(yīng)的插件中。

如圖2所示,所述多級(jí)任務(wù)系統(tǒng)120包括四層,分別為:任務(wù)流層、任務(wù)層、子任務(wù)集層以及子任務(wù)層。

在多級(jí)任務(wù)系統(tǒng)120中,將實(shí)現(xiàn)數(shù)據(jù)庫創(chuàng)建或運(yùn)行過程中運(yùn)行的每一個(gè)原子功能定義為一個(gè)子任務(wù)1204。例如“創(chuàng)建集群”子任務(wù)creategroup,“創(chuàng)建虛擬ip”子任務(wù)attachnetwork。所述子任務(wù)1204按照實(shí)現(xiàn)的功能類別分別隸屬于對(duì)應(yīng)子任務(wù)系統(tǒng),其中,所述子任務(wù)系統(tǒng)至少包括:計(jì)算子任務(wù)系統(tǒng)、存儲(chǔ)子任務(wù)系統(tǒng)、網(wǎng)絡(luò)子任務(wù)系統(tǒng)、中間件子任務(wù)系統(tǒng)。例如:實(shí)現(xiàn)網(wǎng)絡(luò)功能的全部子任務(wù)1204隸屬于網(wǎng)絡(luò)子任務(wù)系統(tǒng),如:實(shí)現(xiàn)計(jì)算功能的全部子任務(wù)1204隸屬于計(jì)算子任務(wù)系統(tǒng)。每個(gè)子任務(wù)系統(tǒng)分別對(duì)應(yīng)一個(gè)執(zhí)行組件,用于執(zhí)行隸屬于該子任務(wù)系統(tǒng)中的子任務(wù)1204。具體實(shí)施時(shí),通過將不同的子任務(wù)系統(tǒng)部署到不同的服務(wù)器上,或者并行調(diào)用各子任務(wù)系統(tǒng)的執(zhí)行組件以執(zhí)行子任務(wù)1204,可以提高paas系統(tǒng)的運(yùn)行效率,并降低維護(hù)難度,提高系統(tǒng)穩(wěn)定性。具體實(shí)施時(shí),所述執(zhí)行組件作為對(duì)應(yīng)子任務(wù)系統(tǒng)的程序運(yùn)行主進(jìn)程,多級(jí)任務(wù)系統(tǒng)的任務(wù)或任務(wù)流通過http協(xié)議將任務(wù)調(diào)度指令發(fā)送至相應(yīng)的子任務(wù)系統(tǒng),該子任務(wù)系統(tǒng)的執(zhí)行組件根據(jù)所述任務(wù)調(diào)度指令調(diào)度相應(yīng)的子任務(wù)運(yùn)行,以實(shí)現(xiàn)相應(yīng)功能。

子任務(wù)集1203是由一批固定的子任務(wù)1204組成的。具體實(shí)施時(shí),將各子任務(wù)1204按照實(shí)現(xiàn)功能的不同進(jìn)行預(yù)定義,構(gòu)成子任務(wù)集層的子任務(wù)集1203。子任務(wù)集1203由一個(gè)或多個(gè)子任務(wù)1204組成,實(shí)現(xiàn)一個(gè)特定的復(fù)雜功能,例如:實(shí)現(xiàn)網(wǎng)絡(luò)分配功能的子任務(wù)集、實(shí)現(xiàn)存儲(chǔ)功能的子任務(wù)集。子任務(wù)集中的子任務(wù)可以屬于不同的子任務(wù)系統(tǒng)。

每個(gè)任務(wù)對(duì)應(yīng)至少一個(gè)子任務(wù)集,其中,每個(gè)所述子任務(wù)集根據(jù)對(duì)應(yīng)任務(wù)的任務(wù)調(diào)度參數(shù)加載至少一個(gè)子任務(wù),每個(gè)所述子任務(wù)用于實(shí)現(xiàn)數(shù)據(jù)庫的一個(gè)原子功能。任務(wù)層的每個(gè)任務(wù)1202則由一個(gè)或多個(gè)子任務(wù)集1203組成,不同的任務(wù)1202可能包含相同的子任務(wù)集1203,任務(wù)是任務(wù)流復(fù)用的基本單位。任務(wù)1202是由一批固定的子任務(wù)集1203組成。在任務(wù)調(diào)度的過程中,根據(jù)任務(wù)調(diào)度參數(shù)動(dòng)態(tài)加載構(gòu)成該任務(wù)的每一個(gè)子任務(wù)集中的子任務(wù),由任務(wù)調(diào)度參數(shù)決定加載的對(duì)象。例如,子任務(wù)集a負(fù)責(zé)網(wǎng)絡(luò)分配功能,由a1、a2、a3、a4四個(gè)子任務(wù)組成,傳遞給子任務(wù)集a的參數(shù)是分配內(nèi)網(wǎng),則需要加載并執(zhí)行a1、a2、a3三個(gè)子任務(wù);若傳入的參數(shù)為分配外網(wǎng),則需要加載并執(zhí)行a1、a2、a4三個(gè)子任務(wù)。

任務(wù)流層包括至少一個(gè)任務(wù)流1201,每個(gè)任務(wù)流1201對(duì)應(yīng)paas系統(tǒng)提供的一類數(shù)據(jù)庫功能,例如:第一個(gè)任務(wù)流1201對(duì)應(yīng)“創(chuàng)建集群”功能,第二個(gè)任務(wù)流1201對(duì)應(yīng)“刪除集群”功能。

每個(gè)任務(wù)流1201對(duì)應(yīng)的數(shù)據(jù)庫功能適用于所有類型的數(shù)據(jù)庫。每個(gè)所述任務(wù)流1201由下一層級(jí)中依序執(zhí)行的至少一個(gè)任務(wù)1202構(gòu)成,每個(gè)任務(wù)1202對(duì)應(yīng)數(shù)據(jù)庫創(chuàng)建和運(yùn)行過程中執(zhí)行的一個(gè)功能,以實(shí)現(xiàn)數(shù)據(jù)庫的相應(yīng)功能。例如,“創(chuàng)建集群”功能對(duì)應(yīng)的任務(wù)流包含多個(gè)任務(wù)1202分別為:初始化、創(chuàng)建server、部署集群、狀態(tài)檢查等,具體實(shí)施時(shí),每個(gè)任務(wù)流1201中包括的多個(gè)任務(wù)1202將按照預(yù)設(shè)的執(zhí)行順序依次執(zhí)行,以實(shí)現(xiàn)該任務(wù)流提供給上層應(yīng)用的數(shù)據(jù)庫服務(wù)。任務(wù)流包括的任務(wù),以及任務(wù)的執(zhí)行順序根據(jù)不同類型的數(shù)據(jù)庫創(chuàng)建和運(yùn)行時(shí)所執(zhí)行的各功能模塊的順序確定。

在paas系統(tǒng)運(yùn)行過程中,所述插件中間層110,位于所述插件層100和所述多級(jí)任務(wù)系統(tǒng)120之間,用于進(jìn)行數(shù)據(jù)庫操作參數(shù)和任務(wù)調(diào)度參數(shù)的傳遞和轉(zhuǎn)換。具體實(shí)施時(shí),針對(duì)不同類型的數(shù)據(jù)庫,預(yù)先建立數(shù)據(jù)庫操作的操作參數(shù)和多級(jí)任務(wù)系統(tǒng)中預(yù)置的各種任務(wù)的任務(wù)調(diào)度參數(shù)的映射關(guān)系。所述任務(wù)流和任務(wù)通過插件中間層獲取任務(wù)調(diào)度參數(shù)。

本申請(qǐng)實(shí)施例公開的數(shù)據(jù)庫服務(wù)系統(tǒng),通過在插件層中預(yù)置不同類型數(shù)據(jù)庫的操作參數(shù),并由插件中間層將所述數(shù)據(jù)庫的操作參數(shù)轉(zhuǎn)換為任務(wù)調(diào)度參數(shù),以實(shí)現(xiàn)多級(jí)任務(wù)系統(tǒng)中的任務(wù)流以及任務(wù)的調(diào)度,進(jìn)一步實(shí)現(xiàn)數(shù)據(jù)庫服務(wù)系統(tǒng)提供給上層應(yīng)用的數(shù)據(jù)庫服務(wù),解決了現(xiàn)有技術(shù)中數(shù)據(jù)庫服務(wù)系統(tǒng)支持多種數(shù)據(jù)庫的時(shí)需要為新增的數(shù)據(jù)庫類型單獨(dú)開發(fā)一套任務(wù)流和任務(wù)而導(dǎo)致的開發(fā)效率低下的問題。通過本申請(qǐng)公開的數(shù)據(jù)庫服務(wù)系統(tǒng),當(dāng)需要支持新的數(shù)據(jù)庫類型時(shí),只需要在插件層中的增加相應(yīng)類型數(shù)據(jù)庫的插件,以保證多級(jí)任務(wù)系統(tǒng)能夠通過插件中間層獲取針對(duì)該類型數(shù)據(jù)庫的任務(wù)調(diào)度參數(shù),便可支持該類型數(shù)據(jù)庫的服務(wù),有效提高了數(shù)據(jù)庫服務(wù)系統(tǒng)的開發(fā)效率。

實(shí)施例二

本實(shí)施例公開的一種兼容多種數(shù)據(jù)庫的方法,如圖3所示,該方法包括:步驟300至步驟320。所述方法應(yīng)用于實(shí)施例一所述的數(shù)據(jù)庫服務(wù)系統(tǒng)。

步驟300,根據(jù)接收的數(shù)據(jù)庫操作指令確定待調(diào)度的任務(wù)。

首先數(shù)據(jù)庫服務(wù)系統(tǒng)接收上層應(yīng)用發(fā)出的數(shù)據(jù)庫操作指令,所述數(shù)據(jù)庫操作指令用于指示數(shù)據(jù)庫服務(wù)系統(tǒng)提供請(qǐng)求的數(shù)據(jù)庫服務(wù)。具體實(shí)施時(shí),所述數(shù)據(jù)庫操作指令可以包括:創(chuàng)建集群、查詢數(shù)據(jù)庫、刪除數(shù)據(jù)庫、寫數(shù)據(jù)庫等指令。數(shù)據(jù)庫操作指令通常包括數(shù)據(jù)庫操作和操作參數(shù)兩部分。以數(shù)據(jù)庫操作指令為“創(chuàng)建集群”為例,數(shù)據(jù)庫操作指令包括的數(shù)據(jù)庫操作為創(chuàng)建集群,創(chuàng)建集群操作的操作參數(shù)包括:數(shù)據(jù)庫類型、配置大小、節(jié)點(diǎn)數(shù)量等。

數(shù)據(jù)庫服務(wù)系統(tǒng)根據(jù)接收到的數(shù)據(jù)庫操作指令,提取其中的數(shù)據(jù)庫類型、數(shù)據(jù)庫操作等信息,并根據(jù)數(shù)據(jù)庫操作選擇多級(jí)任務(wù)系統(tǒng)中與所述數(shù)據(jù)庫操作功能匹配的一個(gè)預(yù)設(shè)的任務(wù)流。多級(jí)任務(wù)系統(tǒng)中預(yù)設(shè)的每個(gè)任務(wù)流與數(shù)據(jù)庫的一類功能對(duì)應(yīng),并且,每個(gè)任務(wù)流對(duì)應(yīng)多個(gè)任務(wù),并預(yù)先設(shè)置了任務(wù)流對(duì)應(yīng)的多個(gè)任務(wù)的執(zhí)行順序。選擇了任務(wù)流之后,即確定了實(shí)現(xiàn)所述數(shù)據(jù)庫操作指令對(duì)應(yīng)的數(shù)據(jù)庫操作所需按順序執(zhí)行的任務(wù)。

步驟310,通過所述插件中間層獲取所述數(shù)據(jù)庫操作指令對(duì)應(yīng)的任務(wù)調(diào)度參數(shù)。

插件中間層預(yù)先建立了數(shù)據(jù)庫操作參數(shù)和任務(wù)調(diào)度參數(shù)的映射關(guān)系,用于將從數(shù)據(jù)庫角度描述的每個(gè)插件輸出的數(shù)據(jù)庫操作參數(shù)轉(zhuǎn)換為從多級(jí)任務(wù)系統(tǒng)的任務(wù)角度描述的任務(wù)調(diào)度參數(shù)。插件中間層還用于將任務(wù)調(diào)度結(jié)果傳輸至插件層中的相應(yīng)插件,以獲取所述插件對(duì)任務(wù)調(diào)度結(jié)果的判斷結(jié)果,并進(jìn)一步確定任務(wù)調(diào)度是否完成,以及下一步任務(wù)調(diào)度所需的任務(wù)調(diào)度參數(shù)。

步驟320,根據(jù)所述任務(wù)調(diào)度參數(shù)調(diào)度所述待調(diào)度的任務(wù),以執(zhí)行所述數(shù)據(jù)庫操作指令。

多級(jí)任務(wù)系統(tǒng)根據(jù)獲取的任務(wù)調(diào)度參數(shù)按照?qǐng)?zhí)行順序依次調(diào)度待調(diào)度任務(wù),以執(zhí)行該待調(diào)度任務(wù),實(shí)現(xiàn)數(shù)據(jù)庫的相應(yīng)功能。多級(jí)任務(wù)系統(tǒng)中的每個(gè)任務(wù)包括多個(gè)子任務(wù)集,每個(gè)子任務(wù)集中又包括多個(gè)子任務(wù),每一個(gè)子任務(wù)用于實(shí)現(xiàn)數(shù)據(jù)庫的一個(gè)原子功能。任務(wù)的調(diào)度過程實(shí)際上是執(zhí)行該任務(wù)包括的子任務(wù)集中各子任務(wù)的過程。在任務(wù)調(diào)度過程中,當(dāng)前任務(wù)根據(jù)任務(wù)調(diào)度參數(shù)加載器包括的子任務(wù)集中的各子任務(wù),并根據(jù)任務(wù)調(diào)度參數(shù)調(diào)度各子任務(wù)。待當(dāng)前任務(wù)的各子任務(wù)執(zhí)行完畢,當(dāng)前任務(wù)將執(zhí)行結(jié)果發(fā)送至插件中間層,有插件中間層將任務(wù)執(zhí)行結(jié)果轉(zhuǎn)換為數(shù)據(jù)庫角度的執(zhí)行結(jié)果,并發(fā)送至相應(yīng)類型的插件,有插件判斷當(dāng)前任務(wù)對(duì)應(yīng)的數(shù)據(jù)庫功能是否執(zhí)行成功,并將執(zhí)行成功與否的結(jié)果通過插件中間層發(fā)送至多級(jí)任務(wù)系統(tǒng),便于多級(jí)任務(wù)系統(tǒng)根據(jù)當(dāng)前數(shù)據(jù)庫功能的執(zhí)行結(jié)果確定下一個(gè)待調(diào)度任務(wù)的任務(wù)調(diào)度參數(shù)。直至所有任務(wù)調(diào)度完成。

具體實(shí)施時(shí),任務(wù)包括的子任務(wù)集中的子任務(wù)分別隸屬于不同的子任務(wù)系統(tǒng),因此,子任務(wù)在被調(diào)度的過程中,由其隸屬的子任務(wù)系統(tǒng)的執(zhí)行組建執(zhí)行。

本申請(qǐng)實(shí)施例公開的數(shù)據(jù)庫服務(wù)系統(tǒng)兼容多種數(shù)據(jù)庫的方法,通過根據(jù)接收的數(shù)據(jù)庫操作指令確定待調(diào)度的任務(wù),然后,通過所述插件中間層獲取所述數(shù)據(jù)庫操作指令對(duì)應(yīng)的任務(wù)調(diào)度參數(shù),并根據(jù)所述任務(wù)調(diào)度參數(shù)調(diào)度所述待調(diào)度的任務(wù),以執(zhí)行所述數(shù)據(jù)庫操作指令,解決了現(xiàn)有技術(shù)中數(shù)據(jù)庫服務(wù)系統(tǒng)支持多種數(shù)據(jù)庫的時(shí)需要為新增的數(shù)據(jù)庫類型單獨(dú)開發(fā)一套任務(wù)流和任務(wù)而導(dǎo)致的開發(fā)效率低下的問題。通過本申請(qǐng)公開的數(shù)據(jù)庫服務(wù)系統(tǒng)和兼容多種數(shù)據(jù)庫的方法,當(dāng)需要支持新的數(shù)據(jù)庫類型時(shí),只需要在插件層中的增加相應(yīng)類型數(shù)據(jù)庫的插件,多級(jí)任務(wù)系統(tǒng)通過插件中間層獲取針對(duì)該類型數(shù)據(jù)庫的任務(wù)調(diào)度參數(shù),便可支持該類型數(shù)據(jù)庫的服務(wù),有效提高了數(shù)據(jù)庫服務(wù)系統(tǒng)的開發(fā)效率。

實(shí)施例三

本實(shí)施例公開的一種兼容多種數(shù)據(jù)庫的方法,如圖4所示,該方法包括:步驟400至步驟470。所述方法應(yīng)用于實(shí)施例一所述的數(shù)據(jù)庫服務(wù)系統(tǒng),本實(shí)施例中,具體以paas數(shù)據(jù)庫服務(wù)系統(tǒng)為例說明多種數(shù)據(jù)庫的兼容方法。

步驟400,數(shù)據(jù)庫服務(wù)系統(tǒng)接收數(shù)據(jù)庫操作指令。

具體實(shí)施時(shí),paas系統(tǒng)可以通過消息中間件或者隊(duì)列監(jiān)控的方式,實(shí)時(shí)接收數(shù)據(jù)庫服務(wù)的相關(guān)數(shù)據(jù)庫操作指令,例如:“創(chuàng)建數(shù)據(jù)庫集群”的指令、“查詢數(shù)據(jù)庫”的指令、“刪除數(shù)據(jù)庫集群”的指令等。以paas系統(tǒng)收到“創(chuàng)建數(shù)據(jù)庫集群”的指令為例,數(shù)據(jù)庫操作指令的參數(shù)包括:數(shù)據(jù)庫類型、配置大小、節(jié)點(diǎn)數(shù)量等(如mysql數(shù)據(jù)庫、cpu4核、內(nèi)存4g、磁盤200g、主節(jié)點(diǎn)1個(gè)、從節(jié)點(diǎn)2個(gè)、代理節(jié)點(diǎn)1個(gè)等等)。

數(shù)據(jù)庫類型不同,或者數(shù)據(jù)庫操作指令不同時(shí),數(shù)據(jù)庫操作指令的參數(shù)會(huì)略有不同。

步驟410,數(shù)據(jù)庫服務(wù)系統(tǒng)根據(jù)接收的數(shù)據(jù)庫操作指令確定待調(diào)度的任務(wù)。

在接收到數(shù)據(jù)庫操作以指令之后,數(shù)據(jù)庫服務(wù)系統(tǒng)根據(jù)接收的數(shù)據(jù)庫操作指令確定待調(diào)度的任務(wù),包括:根據(jù)接收的數(shù)據(jù)庫操作指令選擇需要執(zhí)行的任務(wù)流;獲取選擇的所述任務(wù)流對(duì)應(yīng)的任務(wù)以及任務(wù)的執(zhí)行順序。

每個(gè)任務(wù)流對(duì)應(yīng)paas系統(tǒng)提供的一類數(shù)據(jù)庫功能任務(wù)流。具體實(shí)施時(shí),paas系統(tǒng)預(yù)先建立多級(jí)任務(wù)系統(tǒng),所述多級(jí)任務(wù)系統(tǒng)包括多個(gè)任務(wù)流,例如:對(duì)應(yīng)“創(chuàng)建集群”功能的任務(wù)流、對(duì)應(yīng)“查詢數(shù)據(jù)庫”功能的任務(wù)流、對(duì)應(yīng)“刪除集群”功能的任務(wù)流等。paas系統(tǒng)預(yù)先建立的任務(wù)流的數(shù)量根據(jù)系統(tǒng)支持的數(shù)據(jù)庫服務(wù)的類型、數(shù)據(jù)庫功能確定。以paas系統(tǒng)接收到“創(chuàng)建集群”的請(qǐng)求為例,根據(jù)數(shù)據(jù)操作指令確定任務(wù)流為“創(chuàng)建集群”,同時(shí),根據(jù)數(shù)據(jù)庫操作指令的操作參數(shù)確定請(qǐng)求的數(shù)據(jù)庫類型對(duì)應(yīng)的插件層中的插件(mysql數(shù)據(jù)庫),然后,由多級(jí)任務(wù)系統(tǒng)開始執(zhí)行“創(chuàng)建集群”任務(wù)流。

任務(wù)流由順序執(zhí)行的多個(gè)任務(wù)組成。paas系統(tǒng)中的多級(jí)任務(wù)系統(tǒng)預(yù)先建立了任務(wù)流和任務(wù)的關(guān)聯(lián)關(guān)系,并確定了構(gòu)成任務(wù)流的各任務(wù)的執(zhí)行順序。獲取選擇的所述任務(wù)流對(duì)應(yīng)的任務(wù)以及任務(wù)的執(zhí)行順序,根據(jù)預(yù)設(shè)的任務(wù)流包括的任務(wù)以及任務(wù)的執(zhí)行順序,同時(shí)確定了實(shí)現(xiàn)該數(shù)據(jù)服務(wù)請(qǐng)求所需執(zhí)行的任務(wù),以及各任務(wù)的執(zhí)行順序。以“創(chuàng)建集群”任務(wù)流為例,包括順序執(zhí)行的:初始化、創(chuàng)建server、部署集群、狀態(tài)檢查四個(gè)任務(wù)。

步驟420,通過所述插件中間層獲取所述數(shù)據(jù)庫操作指令對(duì)應(yīng)的任務(wù)調(diào)度參數(shù)。

具體實(shí)施時(shí),通過所述插件中間層獲取所述數(shù)據(jù)庫操作指令對(duì)應(yīng)的任務(wù)調(diào)度參數(shù),包括:根據(jù)所述數(shù)據(jù)庫操作指令確定數(shù)據(jù)庫操作及數(shù)據(jù)庫操作參數(shù);根據(jù)預(yù)設(shè)的數(shù)據(jù)庫操作參數(shù)和任務(wù)調(diào)度參數(shù)的映射關(guān)系,將所述數(shù)據(jù)庫操作參數(shù)轉(zhuǎn)換為所述多級(jí)任務(wù)系統(tǒng)的任務(wù)調(diào)度參數(shù)。插件中間層預(yù)先建立了數(shù)據(jù)庫操作參數(shù)和任務(wù)調(diào)度參數(shù)的映射關(guān)系,用于將從數(shù)據(jù)庫角度描述的每個(gè)插件輸出的數(shù)據(jù)庫操作參數(shù)轉(zhuǎn)換為從多級(jí)任務(wù)系統(tǒng)的任務(wù)角度描述的任務(wù)調(diào)度參數(shù)。所述任務(wù)流和任務(wù)通過插件中間層獲取任務(wù)調(diào)度參數(shù)。

根據(jù)所述任務(wù)調(diào)度參數(shù)調(diào)度所述待調(diào)度的任務(wù),以執(zhí)行所述數(shù)據(jù)庫操作指令,包括:根據(jù)所述任務(wù)調(diào)度參數(shù),按照所述執(zhí)行順序依次調(diào)度所述任務(wù)流對(duì)應(yīng)的任務(wù),即執(zhí)行選擇的任務(wù)流。

具體實(shí)施時(shí),根據(jù)所述任務(wù)調(diào)度參數(shù),按照所述執(zhí)行順序依次調(diào)度所述任務(wù)流對(duì)應(yīng)的任務(wù),包括:確定調(diào)度的所述任務(wù)流中的當(dāng)前任務(wù);基于任務(wù)調(diào)度參數(shù)執(zhí)行所述當(dāng)前任務(wù);根據(jù)所述當(dāng)前任務(wù)的執(zhí)行結(jié)果更新所述任務(wù)流中的任務(wù)調(diào)度參數(shù);重復(fù)執(zhí)行確定所述任務(wù)流中的當(dāng)前任務(wù),并基于任務(wù)調(diào)度參數(shù)執(zhí)行所述當(dāng)前任務(wù),然后更新所述任務(wù)流中的任務(wù)調(diào)度參數(shù)的步驟,直至所述任務(wù)流對(duì)應(yīng)的任務(wù)全部執(zhí)行完畢。執(zhí)行任務(wù)流的過程中,多級(jí)任務(wù)系統(tǒng)的任務(wù)層通過插件中間層和插件層中的插件往復(fù)進(jìn)行數(shù)據(jù)交互,以實(shí)現(xiàn)數(shù)據(jù)庫操作參數(shù)和任務(wù)調(diào)度參數(shù)的轉(zhuǎn)換和獲取,保證多個(gè)任務(wù)的順序執(zhí)行。

步驟430,確定根據(jù)所述數(shù)據(jù)庫操作指令選擇的任務(wù)流中的當(dāng)前任務(wù)。

具體實(shí)施時(shí),可以設(shè)置程序隊(duì)列,將待調(diào)度任務(wù)按照?qǐng)?zhí)行順序從前到后依次放入程序隊(duì)列,然后從程序隊(duì)列的隊(duì)首開始,首先取第一個(gè)任務(wù)作為當(dāng)前任務(wù),當(dāng)前任務(wù)執(zhí)行完成之后,再取第二個(gè)任務(wù)作為當(dāng)前任務(wù),依次完成待調(diào)度任務(wù)的執(zhí)行。

步驟440,基于任務(wù)調(diào)度參數(shù)執(zhí)行所述當(dāng)前任務(wù)。

paas系統(tǒng)的插件中間層,位于所述插件層和所述多級(jí)任務(wù)系統(tǒng)之間,針對(duì)不同類型的數(shù)據(jù)庫,插件中間層預(yù)先建立有數(shù)據(jù)庫操作的操作參數(shù)和多級(jí)任務(wù)系統(tǒng)中預(yù)置的各種任務(wù)的任務(wù)調(diào)度參數(shù)的映射關(guān)系。所述任務(wù)流和任務(wù)通過插件中間層獲取任務(wù)調(diào)度參數(shù)。

確定當(dāng)前任務(wù)之后,基于任務(wù)調(diào)度參數(shù)執(zhí)行所述當(dāng)前任務(wù)。任務(wù)調(diào)度參數(shù)可能包括當(dāng)前任務(wù)對(duì)應(yīng)的子任務(wù)集中各子任務(wù)的執(zhí)行參數(shù),如函數(shù)參數(shù)。當(dāng)前任務(wù)不同,任務(wù)調(diào)度參數(shù)可能不同,任務(wù)調(diào)度參數(shù)由多級(jí)任務(wù)系統(tǒng)的任務(wù)層通過插件中間層和插件層中的插件往復(fù)進(jìn)行數(shù)據(jù)交互獲取到。

基于任務(wù)調(diào)度參數(shù)執(zhí)行所述當(dāng)前任務(wù),包括:根據(jù)所述任務(wù)調(diào)度參數(shù)確定當(dāng)前調(diào)度的任務(wù)對(duì)應(yīng)的子任務(wù)集;根據(jù)所述任務(wù)調(diào)度參數(shù)加載每個(gè)子任務(wù)集對(duì)應(yīng)的子任務(wù);通過各子任務(wù)隸屬的子任務(wù)系統(tǒng)執(zhí)行相應(yīng)子任務(wù)。

首先,根據(jù)任務(wù)調(diào)度參數(shù)和多級(jí)任務(wù)系統(tǒng)預(yù)定義的任務(wù)和子任務(wù)集的對(duì)應(yīng)關(guān)系確定當(dāng)前調(diào)度的任務(wù)對(duì)應(yīng)的子任務(wù)集。例如:多級(jí)任務(wù)系統(tǒng)中,“初始化”任務(wù)預(yù)定義的子任務(wù)集包括:“創(chuàng)建group”、“創(chuàng)建虛擬ip”、“創(chuàng)建負(fù)載均衡”。如果數(shù)據(jù)庫操作指令中的數(shù)據(jù)庫操作參數(shù)指定的數(shù)據(jù)庫類型為mysql數(shù)據(jù)庫,則多級(jí)任務(wù)系統(tǒng)通過插件中間層得到的任務(wù)調(diào)度參數(shù)是mysql數(shù)據(jù)庫的各功能對(duì)應(yīng)的任務(wù)的任務(wù)調(diào)度參數(shù)。即,多級(jí)任務(wù)系統(tǒng)根據(jù)任務(wù)調(diào)度參數(shù)確定mysql數(shù)據(jù)庫的“初始化”任務(wù)的子任務(wù)集包括“創(chuàng)建group”子任務(wù)集和“創(chuàng)建虛擬ip”子任務(wù)集。

然后,根據(jù)所述任務(wù)調(diào)度參數(shù)加載每個(gè)子任務(wù)集對(duì)應(yīng)的子任務(wù)。多級(jí)任務(wù)系統(tǒng)根據(jù)子任務(wù)的功能,預(yù)先定義了每個(gè)子任務(wù)集包括的子任務(wù),然后,根據(jù)任務(wù)調(diào)度參數(shù)動(dòng)態(tài)加載各子任務(wù)集中的子任務(wù)。例如,“創(chuàng)建虛擬ip”子任務(wù)集由“attachnetwork”、“allocatestaticip”和“allocatedynamicip”三個(gè)子任務(wù)組成,傳遞給子任務(wù)集“創(chuàng)建虛擬ip”的任務(wù)調(diào)度參數(shù)是分配靜態(tài)ip地址,則根據(jù)任務(wù)調(diào)度參數(shù)只需要加載“attachnetwork”和“allocatestaticip”兩個(gè)子任務(wù)。

按照前述方法,可以確定以“創(chuàng)建集群”任務(wù)流包括的任務(wù),每個(gè)任務(wù)包括的子任務(wù),以及任務(wù)的執(zhí)行順序、子任務(wù)的任務(wù)調(diào)度參數(shù)。最后,通過各子任務(wù)隸屬的子任務(wù)系統(tǒng)執(zhí)行相應(yīng)子任務(wù)。

例如:執(zhí)行”初始化“任務(wù)時(shí),多級(jí)任務(wù)系統(tǒng)詢問插件中間層初始化參數(shù),插件中間層從mysql插件中獲取初始化參數(shù):group名稱、vip等,插件中間層根據(jù)預(yù)先定義的映射關(guān)系,將獲取到的數(shù)據(jù)庫操作參數(shù),轉(zhuǎn)換為任務(wù)調(diào)度參數(shù):groupname、虛擬ip-true、elb-false,并將參數(shù)返回給多級(jí)任務(wù)系統(tǒng)。多級(jí)任務(wù)系統(tǒng)得到參數(shù)后,確認(rèn)執(zhí)行的子任務(wù)集是“創(chuàng)建group”、“創(chuàng)建虛擬ip”,并加載子任務(wù)集中的子任務(wù),然后將每個(gè)子任務(wù)分別發(fā)送至該子任務(wù)隸屬的子任務(wù)系統(tǒng)去執(zhí)行,以完成相應(yīng)任務(wù)。例如:將“創(chuàng)建group”子任務(wù)集中的“creategroup”子任務(wù)發(fā)送至“creategroup”子任務(wù)所隸屬的存儲(chǔ)子任務(wù)系統(tǒng)執(zhí)行;將“創(chuàng)建虛擬ip”子任務(wù)集中的“attachnetwork”和“allocatestaticip”兩個(gè)子任務(wù)發(fā)送至“attachnetwork”和“allocatestaticip”所隸屬的網(wǎng)絡(luò)子任務(wù)系統(tǒng)執(zhí)行。

具體實(shí)施時(shí),子任務(wù)系統(tǒng)會(huì)將子任務(wù)的執(zhí)行結(jié)果返回給該子任務(wù)所在的子任務(wù)集。一個(gè)子任務(wù)集中的所有子任務(wù)全部執(zhí)行完成后,子任務(wù)集將子任務(wù)集的執(zhí)行結(jié)果反饋給該子任務(wù)集所在的當(dāng)前任務(wù)。當(dāng)前任務(wù)根據(jù)子任務(wù)集的執(zhí)行結(jié)果判斷所有子任務(wù)集中的子任務(wù)全部執(zhí)行完成后,該子任務(wù)集執(zhí)行完成后;所有子任務(wù)集執(zhí)行完成之后,當(dāng)前任務(wù)執(zhí)行完成。

步驟450,根據(jù)所述當(dāng)前任務(wù)的執(zhí)行結(jié)果更新所述任務(wù)流中的任務(wù)調(diào)度參數(shù)。

插件中間層還用于將任務(wù)調(diào)度結(jié)果傳輸至插件層中的相應(yīng)插件,以獲取所述插件對(duì)任務(wù)調(diào)度結(jié)果的判斷結(jié)果,并進(jìn)一步確定任務(wù)調(diào)度是否完成,以及下一步任務(wù)調(diào)度所需的任務(wù)調(diào)度參數(shù)。本實(shí)施例中,初始化任務(wù)將執(zhí)行結(jié)果通過插件中間層反饋給mysql插件,并獲取后一個(gè)任務(wù),即創(chuàng)建server任務(wù)的任務(wù)調(diào)度參數(shù)。

步驟460,判斷所有待調(diào)度任務(wù)是否全部執(zhí)行完成,若是,則跳轉(zhuǎn)至步驟470,結(jié)束任務(wù)調(diào)度,否則跳轉(zhuǎn)至步驟430,繼續(xù)執(zhí)行后續(xù)待調(diào)度任務(wù)。

在每一個(gè)任務(wù)執(zhí)行結(jié)束之后,判斷該任務(wù)流的所有任務(wù)是否全部執(zhí)行完成,若是,則結(jié)束本次任務(wù)流,即結(jié)束本次數(shù)據(jù)庫服務(wù)的任務(wù)調(diào)度。如果,當(dāng)前任務(wù)流中仍有待調(diào)度的任務(wù),則確定下一個(gè)待調(diào)度的任務(wù)為當(dāng)前任務(wù),并基于獲取的任務(wù)調(diào)度參數(shù)繼續(xù)執(zhí)行任務(wù)調(diào)度。

如果當(dāng)前任務(wù)流中的任務(wù)未執(zhí)行完,例如,“狀態(tài)檢查”任務(wù)尚未執(zhí)行,則多級(jí)任務(wù)系統(tǒng)可以通過插件中間層向插件層的插件,如本例中的mysql數(shù)據(jù)庫插件,進(jìn)一步獲取“狀態(tài)檢查”任務(wù)的任務(wù)調(diào)度參數(shù)。如果當(dāng)前任務(wù)流中的所有任務(wù)均已執(zhí)行完,例如,本實(shí)施例“狀態(tài)檢查”任務(wù)的所有子任務(wù)均已執(zhí)行完,則任務(wù)流獲取到的任務(wù)調(diào)度參數(shù)將為指示任務(wù)流結(jié)束的參數(shù)。

具體實(shí)施時(shí),在任務(wù)的執(zhí)行結(jié)果返回后,該任務(wù)需要數(shù)據(jù)庫插件判斷執(zhí)行結(jié)果,即多級(jí)任務(wù)系統(tǒng)將執(zhí)行結(jié)果通過插件中間層傳遞給數(shù)據(jù)庫插件,數(shù)據(jù)庫插件判斷結(jié)果后返回“成功”或“失敗”給多級(jí)任務(wù)系統(tǒng),多級(jí)任務(wù)系統(tǒng)根據(jù)結(jié)果判斷下一步是繼續(xù)執(zhí)行任務(wù)或者重試或者返回失敗。

步驟470,結(jié)束任務(wù)調(diào)度。

待選擇的務(wù)流中所有任務(wù)執(zhí)行完成后,任務(wù)流返回執(zhí)行成功或者失敗,然后,結(jié)束本次任務(wù)調(diào)度。

具體實(shí)施時(shí),多級(jí)任務(wù)系統(tǒng)包括的任務(wù)流、任務(wù)流對(duì)應(yīng)的數(shù)據(jù)庫服務(wù)功能、任務(wù)流對(duì)應(yīng)的任務(wù)以及任務(wù)的執(zhí)行順序、任務(wù)包括的子任務(wù)集以及子任務(wù)集中包括的子任務(wù),根據(jù)數(shù)據(jù)庫支持的數(shù)據(jù)庫操作以及各數(shù)據(jù)庫功能的具體實(shí)現(xiàn)功能模塊確定,本申請(qǐng)對(duì)此不做限定。

本申請(qǐng)實(shí)施例公開的兼容多種數(shù)據(jù)庫方法,通過數(shù)據(jù)庫服務(wù)系統(tǒng)接收數(shù)據(jù)庫操作指令,然后根據(jù)接收的數(shù)據(jù)庫操作指令確定待調(diào)度的任務(wù);并通過所述插件中間層獲取所述數(shù)據(jù)庫操作指令對(duì)應(yīng)的任務(wù)調(diào)度參數(shù);然后,按照根據(jù)所述數(shù)據(jù)庫操作指令選擇的任務(wù)流中設(shè)定的任務(wù)執(zhí)行順序和所述任務(wù)調(diào)度參數(shù),依次執(zhí)行待調(diào)度任務(wù),直至選擇的任務(wù)流中的所有任務(wù)執(zhí)行完成,解決了現(xiàn)有技術(shù)中數(shù)據(jù)庫服務(wù)系統(tǒng)支持多種數(shù)據(jù)庫的時(shí)需要為新增的數(shù)據(jù)庫類型單獨(dú)開發(fā)一套任務(wù)流和任務(wù)而導(dǎo)致的開發(fā)效率低下的問題。通過本申請(qǐng)公開的數(shù)據(jù)庫服務(wù)系統(tǒng)和兼容多種數(shù)據(jù)庫的方法,當(dāng)需要支持新的數(shù)據(jù)庫類型時(shí),只需要在插件層中的增加相應(yīng)類型數(shù)據(jù)庫的插件,多級(jí)任務(wù)系統(tǒng)通過插件中間層獲取針對(duì)該類型數(shù)據(jù)庫的任務(wù)調(diào)度參數(shù),便可支持該類型數(shù)據(jù)庫的服務(wù),有效提高了數(shù)據(jù)庫服務(wù)系統(tǒng)的開發(fā)效率。

本申請(qǐng)還公開了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如本申請(qǐng)實(shí)施例二和實(shí)施例三兼容多種數(shù)據(jù)庫的方法的步驟。

本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見即可。對(duì)于裝置實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。

以上對(duì)本申請(qǐng)?zhí)峁┑囊环N數(shù)據(jù)庫服務(wù)系統(tǒng)以及兼容多種數(shù)據(jù)庫的方法進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本申請(qǐng)的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本申請(qǐng)的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請(qǐng)的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對(duì)本申請(qǐng)的限制。

通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到各實(shí)施方式可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件實(shí)現(xiàn)?;谶@樣的理解,上述技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,如rom/ram、磁碟、光盤等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。

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