本發(fā)明涉及計(jì)算機(jī)虛擬機(jī)領(lǐng)域,尤其涉及虛擬對(duì)稱多處理虛擬機(jī)創(chuàng)建方法、數(shù)據(jù)處理方法。
背景技術(shù):
人們對(duì)于大數(shù)據(jù)數(shù)據(jù)庫(kù)的應(yīng)用追求從未停止,現(xiàn)代大數(shù)據(jù)數(shù)據(jù)庫(kù)的應(yīng)用基本上更多是指在原有計(jì)算器或服務(wù)器硬盤(pán)上建立數(shù)據(jù)庫(kù)并運(yùn)行索引程序,其數(shù)據(jù)量一般均大于十萬(wàn)筆以上,所以,我們一般不把運(yùn)行低于十萬(wàn)筆數(shù)據(jù)量或未應(yīng)用大數(shù)據(jù)索引程序的系統(tǒng)稱呼為大數(shù)據(jù)數(shù)據(jù)庫(kù),而只將數(shù)據(jù)量大于十萬(wàn)筆及運(yùn)行索引程序的數(shù)據(jù)庫(kù)稱作為大數(shù)據(jù)數(shù)據(jù)庫(kù)系統(tǒng)。大數(shù)據(jù)數(shù)據(jù)庫(kù)系統(tǒng)的構(gòu)件主要為運(yùn)算處理器、硬盤(pán)、內(nèi)存、操作系統(tǒng)與數(shù)據(jù)庫(kù)軟件所組成,在許多的數(shù)據(jù)庫(kù)應(yīng)用,尤其是在大規(guī)模數(shù)據(jù)搜索的情況下,其最終性能皆由I/O(硬盤(pán)、內(nèi)存吞吐量)所決定,而往往不是被運(yùn)算處理器的計(jì)算能力所限制,而這一現(xiàn)象也使大數(shù)據(jù)數(shù)據(jù)庫(kù)系統(tǒng)針對(duì)I/O的設(shè)計(jì)有更苛刻的要求。很顯然,要滿足超大規(guī)模的數(shù)據(jù)運(yùn)算、搜尋及索引的I/O要求,如果用傳統(tǒng)的硬盤(pán)作為載體,單靠硬盤(pán)的堆棧傳輸,是很難達(dá)成高擴(kuò)展、高速度、低延遲的大數(shù)據(jù)數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)目的。且在現(xiàn)今虛擬化技術(shù)的發(fā)展方向上,均朝著分布式的應(yīng)用程序虛擬化方向研究,如傳統(tǒng)的VMware、Zen-desktop、Hyper-V或KVM及現(xiàn)今container與Docker技術(shù),主要著眼點(diǎn)均為將應(yīng)用程序所需的資源打包,進(jìn)而實(shí)現(xiàn)在單一計(jì)算機(jī)上同時(shí)進(jìn)行多重應(yīng)用程序計(jì)算、最大化單機(jī)計(jì)算量應(yīng)用,加重了I/O負(fù)擔(dān)的同時(shí),在進(jìn)行需要巨量?jī)?nèi)存計(jì)算的情況下,單機(jī)也無(wú)法提供足夠的內(nèi)存進(jìn)行計(jì)算交換,從而影響數(shù)據(jù)處理的速度。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)上述現(xiàn)有技術(shù)中的不足,本發(fā)明提供一種虛擬對(duì)稱多處理虛擬機(jī)創(chuàng)建方法、數(shù)據(jù)處理方法及系統(tǒng),將多個(gè)計(jì)算機(jī)虛擬成一個(gè)大型計(jì)算機(jī),所有計(jì)算機(jī)的硬件資源視為同一系統(tǒng)資源統(tǒng)一調(diào)派,從而可實(shí)現(xiàn)需要大量?jī)?nèi)存與運(yùn)算資源的數(shù)據(jù)處理,并具有運(yùn)算速度快、結(jié)構(gòu)簡(jiǎn)單、成本低、便于管理、靈活性強(qiáng)、資源利用率高和可擴(kuò)展性強(qiáng)的優(yōu)點(diǎn)。
為了實(shí)現(xiàn)上述目的,提供本發(fā)明的一種虛擬對(duì)稱多處理虛擬機(jī)創(chuàng)建方法,包括步驟:
S11:通過(guò)一無(wú)限帶寬網(wǎng)絡(luò)連接多個(gè)計(jì)算機(jī)節(jié)點(diǎn),各所述計(jì)算機(jī)節(jié)點(diǎn)之間相互通信連接,所述計(jì)算機(jī)節(jié)點(diǎn)包括一主機(jī)和多個(gè)子機(jī);
S12:將各所述計(jì)算機(jī)節(jié)點(diǎn)的作業(yè)系統(tǒng)整合為由所述主機(jī)控制的一虛擬作業(yè)系統(tǒng);
S13:將各所述計(jì)算機(jī)節(jié)點(diǎn)的硬件整合為一硬件資源池,并將各所述計(jì)算機(jī)節(jié)點(diǎn)的數(shù)據(jù)庫(kù)整合為一數(shù)據(jù)庫(kù)池;
S14:所述主機(jī)通過(guò)所述虛擬作業(yè)系統(tǒng)對(duì)所述硬件資源池和所述數(shù)據(jù)庫(kù)池直接管理和調(diào)用。
優(yōu)選地,所述硬件資源池包括一內(nèi)存池和一CPU池,所述內(nèi)存池包括各所述計(jì)算機(jī)節(jié)點(diǎn)的內(nèi)存,所述CPU池包括各所述計(jì)算機(jī)節(jié)點(diǎn)的CPU。
優(yōu)選地,所述無(wú)限帶寬網(wǎng)絡(luò)和所述多個(gè)計(jì)算機(jī)節(jié)點(diǎn)形成虛擬對(duì)稱多處理結(jié)構(gòu)。
本發(fā)明的一種虛擬對(duì)稱多處理虛擬機(jī)系統(tǒng),包括:
一數(shù)據(jù)傳輸模塊,數(shù)據(jù)傳輸模塊設(shè)置于一主機(jī),用于接收客戶端的任務(wù)請(qǐng)求和向所述客戶端發(fā)送所述任務(wù)請(qǐng)求的處理結(jié)果;
一硬件資源池,所述硬件資源池包括多個(gè)計(jì)算機(jī)節(jié)點(diǎn)的硬件,所述計(jì)算機(jī)節(jié)點(diǎn)包括所述主機(jī)和多個(gè)子機(jī),所述多個(gè)計(jì)算機(jī)節(jié)點(diǎn)通過(guò)一無(wú)限帶寬網(wǎng)絡(luò)相互通信連接;
一數(shù)據(jù)庫(kù)池,所述數(shù)據(jù)庫(kù)池包括各所述計(jì)算機(jī)節(jié)點(diǎn)的數(shù)據(jù)庫(kù);以及
一虛擬作業(yè)系統(tǒng),設(shè)置于所述主機(jī),用于直接管理和調(diào)用所述硬件資源池與所述數(shù)據(jù)庫(kù)池完成所述任務(wù)請(qǐng)求獲得所述處理結(jié)果,并控制數(shù)據(jù)傳輸模塊發(fā)送所述處理結(jié)果。
優(yōu)選地,所述硬件資源池包括一內(nèi)存池和一CPU池,所述內(nèi)存池包括各所述計(jì)算機(jī)節(jié)點(diǎn)的內(nèi)存,所述CPU池包括各所述計(jì)算機(jī)節(jié)點(diǎn)的CPU。
優(yōu)選地,所述無(wú)限帶寬網(wǎng)絡(luò)和所述多個(gè)計(jì)算機(jī)節(jié)點(diǎn)形成虛擬對(duì)稱多處理結(jié)構(gòu)。
優(yōu)選地,所述虛擬作業(yè)系統(tǒng)采用OpenMP應(yīng)用編程接口和MPI編程接口標(biāo)準(zhǔn)。
本發(fā)明的一種基于本發(fā)明所述的虛擬對(duì)稱多處理虛擬機(jī)系統(tǒng)的數(shù)據(jù)處理方法,包括步驟:
S21:所述主機(jī)接收所述客戶端發(fā)送的任務(wù)請(qǐng)求;
S22:所述虛擬作業(yè)系統(tǒng)根據(jù)所述任務(wù)請(qǐng)求的內(nèi)容對(duì)所述硬件資源池和/或所述數(shù)據(jù)庫(kù)池進(jìn)行調(diào)用并獲得所述任務(wù)請(qǐng)求的處理結(jié)果;
S23:所述主機(jī)將所述任務(wù)請(qǐng)求的處理結(jié)果發(fā)送給所述客戶端。
優(yōu)選地,所述步驟S22進(jìn)一步包括:
S221:所述虛擬作業(yè)系統(tǒng)根據(jù)所述任務(wù)請(qǐng)求的內(nèi)容和當(dāng)前硬件資源池的使用狀態(tài),形成一任務(wù)處理策略;
S222:根據(jù)所述任務(wù)處理策略將所述任務(wù)請(qǐng)求分割為多個(gè)子任務(wù)并派送給對(duì)應(yīng)的所述計(jì)算機(jī)節(jié)點(diǎn);
S223:所述計(jì)算機(jī)節(jié)點(diǎn)根據(jù)所述子任務(wù)調(diào)用所需的所述硬件和/或所述數(shù)據(jù)庫(kù),并向所述虛擬作業(yè)系統(tǒng)發(fā)送調(diào)用結(jié)果;
S224:所述虛擬作業(yè)系統(tǒng)根據(jù)所述調(diào)用結(jié)果獲得所述任務(wù)請(qǐng)求的處理結(jié)果。
本發(fā)明由于采用了以上技術(shù)方案,使其具有以下有益效果:
無(wú)限帶寬網(wǎng)絡(luò)的采用加強(qiáng)了本發(fā)明虛擬對(duì)稱多處理虛擬機(jī)的可擴(kuò)展性。虛擬作業(yè)系統(tǒng)統(tǒng)一管理調(diào)用各計(jì)算機(jī)節(jié)點(diǎn)的資源,實(shí)現(xiàn)集群系統(tǒng)的統(tǒng)一管理和統(tǒng)一調(diào)控,使得用戶對(duì)整個(gè)虛擬對(duì)稱多處理虛擬機(jī)系統(tǒng)的管理調(diào)控更為便捷、靈活,并能有效提高虛擬對(duì)稱多處理虛擬機(jī)系統(tǒng)的整體資源利用率。由于內(nèi)存池的采用,且內(nèi)存池接受虛擬作業(yè)系統(tǒng)統(tǒng)一管理調(diào)用,使得在需要大規(guī)?;蚓蘖康倪\(yùn)算時(shí),虛擬作業(yè)系統(tǒng)可將數(shù)據(jù)直接在內(nèi)存池中進(jìn)行交換,減少運(yùn)用硬盤(pán)的I/O,從而達(dá)到加速數(shù)據(jù)處理的目的。同時(shí),當(dāng)本發(fā)明數(shù)據(jù)庫(kù)池中的任一數(shù)據(jù)庫(kù)需大量的運(yùn)算及內(nèi)存資源時(shí),虛擬作業(yè)系統(tǒng)可做實(shí)時(shí)且動(dòng)態(tài)的調(diào)配,可調(diào)用內(nèi)存池中其他計(jì)算機(jī)節(jié)點(diǎn)的內(nèi)存供當(dāng)前計(jì)算機(jī)節(jié)點(diǎn)的數(shù)據(jù)處理使用,從而防止單一計(jì)算機(jī)節(jié)點(diǎn)受限于硬件資源而無(wú)法進(jìn)行工作或降低工作效率的情況,同時(shí)提高了系統(tǒng)資源的整體利用率。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例的虛擬對(duì)稱多處理虛擬機(jī)創(chuàng)建方法的流程圖;
圖2為本發(fā)明實(shí)施例的虛擬對(duì)稱多處理虛擬機(jī)的結(jié)構(gòu)示意圖;
圖3為本發(fā)明實(shí)施例的虛擬對(duì)稱多處理虛擬機(jī)的原理圖;
圖4為本發(fā)明實(shí)施例的數(shù)據(jù)處理方法的流程圖。
具體實(shí)施方式
下面根據(jù)附圖1-4,給出本發(fā)明的較佳實(shí)施例,并予以詳細(xì)描述,使能更好地理解本發(fā)明的功能、特點(diǎn)。
請(qǐng)參閱圖1~圖3,本發(fā)明的一種虛擬對(duì)稱多處理虛擬機(jī)創(chuàng)建方法,包括步驟:
S11:通過(guò)一無(wú)限帶寬網(wǎng)絡(luò)1(Infinite Band)連接多個(gè)計(jì)算機(jī)節(jié)點(diǎn),各計(jì)算機(jī)節(jié)點(diǎn)之間相互通信連接,計(jì)算機(jī)節(jié)點(diǎn)包括一主機(jī)21和多個(gè)子機(jī)22;計(jì)算機(jī)節(jié)點(diǎn)的個(gè)數(shù)不限,可根據(jù)需要進(jìn)行任意擴(kuò)充和調(diào)整,可高達(dá)百臺(tái)甚至超過(guò)數(shù)千臺(tái)。
S12:將各計(jì)算機(jī)節(jié)點(diǎn)的作業(yè)系統(tǒng)整合為由主機(jī)21控制的一虛擬作業(yè)系統(tǒng)212。例如,現(xiàn)有四臺(tái)計(jì)算機(jī),先于硬件上先建立無(wú)限帶寬網(wǎng)路通訊架構(gòu)(透過(guò)交換機(jī)互連或透過(guò)直連路由方式互連),而后將各計(jì)算機(jī)設(shè)定其IP地址與作業(yè)系統(tǒng)的網(wǎng)絡(luò)、通訊與函式庫(kù)等設(shè)定(包含TCP/IP,Infini-band,SNMP與MPI及OpenMP等函數(shù)庫(kù)及通訊協(xié)議),將此四臺(tái)計(jì)算機(jī)集成為一計(jì)算機(jī)集群,選擇其中任一臺(tái)成為主控計(jì)算機(jī)(主機(jī)21),其余三臺(tái)成為附屬計(jì)算機(jī)(子機(jī)22),在主機(jī)21上布置主控軟件,在布置的同時(shí),主機(jī)21會(huì)將附屬軟件同時(shí)派送至子機(jī)22上,布置后主控軟件即會(huì)生成一虛擬作業(yè)系統(tǒng)212,透過(guò)無(wú)限帶寬網(wǎng)絡(luò)1及SNMP、MPI、OpenMP等協(xié)議進(jìn)行一系列的跨機(jī)工作交付,資源統(tǒng)整應(yīng)用與監(jiān)控等服務(wù)。
S13:將各計(jì)算機(jī)節(jié)點(diǎn)的硬件整合為一硬件資源池23,并將各計(jì)算機(jī)節(jié)點(diǎn)的數(shù)據(jù)庫(kù)整合為一數(shù)據(jù)庫(kù)池24。
其中,硬件資源池23包括一內(nèi)存池和一CPU池,內(nèi)存池包括各計(jì)算機(jī)節(jié)點(diǎn)的內(nèi)存,CPU池包括各計(jì)算機(jī)節(jié)點(diǎn)的CPU。
S14:主機(jī)21通過(guò)虛擬作業(yè)系統(tǒng)212對(duì)硬件資源池23和數(shù)據(jù)庫(kù)池24直接管理和調(diào)用。
其中,無(wú)限帶寬網(wǎng)絡(luò)1和多個(gè)計(jì)算機(jī)節(jié)點(diǎn)形成虛擬對(duì)稱多處理(vSMP,virtual symmetric multiprocessing)結(jié)構(gòu),其是對(duì)稱多處理(SMP,symmetric multiprocessing)的一種方法,它可以將兩個(gè)或兩個(gè)以上的虛擬處理器分配到一個(gè)單一的虛擬機(jī)或分區(qū)。這樣就可以在至少有兩個(gè)邏輯處理器的主機(jī)21上給虛擬機(jī)分配多個(gè)虛擬處理器。虛擬對(duì)稱多處理(vSMP)可用于連接多線程,這是一個(gè)項(xiàng)目同時(shí)管理多個(gè)用戶請(qǐng)求的能力。
本發(fā)明通過(guò)一無(wú)限帶寬網(wǎng)絡(luò)1連接多個(gè)計(jì)算機(jī)節(jié)點(diǎn),并通過(guò)虛擬技術(shù)將多個(gè)計(jì)算機(jī)節(jié)點(diǎn)虛擬成一大型計(jì)算機(jī);其中虛擬技術(shù)包含:通過(guò)操作系統(tǒng)層的虛擬化,將多個(gè)計(jì)算節(jié)點(diǎn)的硬件資源集成為虛擬的大型計(jì)算機(jī)的硬件資源池23,通過(guò)虛擬作業(yè)系統(tǒng)212統(tǒng)一管控,所有硬件資源視為同一系統(tǒng)的資源均一調(diào)派,透過(guò)此架構(gòu),可實(shí)現(xiàn)跨節(jié)點(diǎn)的通訊溝通與任務(wù)派送排程、計(jì)算資源的統(tǒng)籌與應(yīng)用,可將需要大量?jī)?nèi)存與運(yùn)算資源的數(shù)據(jù)庫(kù)運(yùn)行于此虛擬作業(yè)系統(tǒng)212,實(shí)現(xiàn)加速數(shù)據(jù)庫(kù)運(yùn)算的目標(biāo)。
與傳統(tǒng)虛擬化概念化整為零(即:將一臺(tái)實(shí)體計(jì)算機(jī)對(duì)多虛擬作業(yè)系統(tǒng)212)相反,本發(fā)明的虛擬化概念為化零為整,將多臺(tái)計(jì)算機(jī)實(shí)體虛擬為一大型的對(duì)稱多處理器計(jì)算機(jī),并整合每個(gè)系統(tǒng)的計(jì)算器、內(nèi)存以及輸入/輸出能力,同時(shí)生成一個(gè)操作系統(tǒng)和應(yīng)用軟件均統(tǒng)一的虛擬作業(yè)系統(tǒng)212。
本發(fā)明的S12和S13中將各計(jì)算機(jī)節(jié)點(diǎn)的作業(yè)系統(tǒng)整合為由主機(jī)21控制的一虛擬作業(yè)系統(tǒng)212,并將各計(jì)算機(jī)節(jié)點(diǎn)的硬件整合為一硬件資源池23,其中硬件包括運(yùn)算處理單元(如:CPU)、內(nèi)存、硬盤(pán)等,全視為單一虛擬機(jī)的硬件資源。
請(qǐng)參閱圖2、圖3,本發(fā)明的一種虛擬對(duì)稱多處理虛擬機(jī)系統(tǒng),包括:一數(shù)據(jù)傳輸模塊211、一硬件資源池23,一數(shù)據(jù)庫(kù)池24和一虛擬作業(yè)系統(tǒng)212;其中虛擬作業(yè)系統(tǒng)212連接硬件資源池23、數(shù)據(jù)庫(kù)池24和數(shù)據(jù)傳輸模塊211,數(shù)據(jù)傳輸模塊211連接外部客戶端3。
本實(shí)施例中,數(shù)據(jù)傳輸模塊211設(shè)置于一主機(jī)21,用于接收客戶端3的任務(wù)請(qǐng)求和向客戶端3發(fā)送任務(wù)請(qǐng)求的處理結(jié)果。
硬件資源池23包括多個(gè)計(jì)算機(jī)節(jié)點(diǎn)的硬件,計(jì)算機(jī)節(jié)點(diǎn)包括主機(jī)21和多個(gè)子機(jī)22,多個(gè)計(jì)算機(jī)節(jié)點(diǎn)通過(guò)一無(wú)限帶寬網(wǎng)絡(luò)1相互通信連接。本實(shí)施例中,無(wú)限帶寬網(wǎng)絡(luò)1和多個(gè)計(jì)算機(jī)節(jié)點(diǎn)形成虛擬對(duì)稱多處理(vSMP)結(jié)構(gòu)。
與傳統(tǒng)對(duì)稱多處理(SMP)構(gòu)架的計(jì)算機(jī)相比,本發(fā)明的一種虛擬對(duì)稱多處理虛擬機(jī)系統(tǒng)可提供更為卓越的性價(jià)比,可與x86集群相媲美。具有易于安裝和管理,并且具有大容量?jī)?nèi)存,同時(shí)可使用廣泛的基于x86的應(yīng)用程序產(chǎn)品組合。對(duì)于群集客戶,本發(fā)明可以繼續(xù)運(yùn)行相同性能級(jí)別的并行應(yīng)用程序,而避免了多個(gè)操作系統(tǒng)管理、應(yīng)用程序配置、群集文件系統(tǒng)和群集互連管理的復(fù)雜性。
此外,本發(fā)明還顯著簡(jiǎn)化了I/O(輸入/輸出)體系結(jié)構(gòu),降低了成本(特別針對(duì)快速暫時(shí)存儲(chǔ))。集群客戶還獲得了多功能計(jì)算平臺(tái),除并行工作負(fù)載之外,它還可以運(yùn)行大內(nèi)存、多核作業(yè)。編程模型同樣更具靈活性。
由于每個(gè)計(jì)算機(jī)節(jié)點(diǎn)的CPU、內(nèi)存以及I/O,同時(shí)生成一個(gè)操作系統(tǒng)和應(yīng)用軟件均統(tǒng)一的虛擬作業(yè)系統(tǒng)212,使用者可運(yùn)行平時(shí)需使用傳統(tǒng)硬盤(pán)(swapfile)作為計(jì)算交換的程序,并將此類(lèi)應(yīng)用程序搬移至內(nèi)存池中,通過(guò)內(nèi)存的快速的I/O速度,大幅減少計(jì)算所需時(shí)間。如大數(shù)據(jù)資料庫(kù)檢索、資料庫(kù)盤(pán)點(diǎn)均可按此架構(gòu)達(dá)成加速的功效。
其中,硬件資源池23包括一內(nèi)存池和一CPU池,內(nèi)存池包括各計(jì)算機(jī)節(jié)點(diǎn)的內(nèi)存,CPU池包括各計(jì)算機(jī)節(jié)點(diǎn)的CPU。
數(shù)據(jù)庫(kù)池24包括各計(jì)算機(jī)節(jié)點(diǎn)的數(shù)據(jù)庫(kù)。實(shí)現(xiàn)各計(jì)算機(jī)節(jié)點(diǎn)的數(shù)據(jù)庫(kù)的統(tǒng)一管理。
虛擬作業(yè)系統(tǒng)212設(shè)置于主機(jī)21,用于直接管理和調(diào)用硬件資源池23與數(shù)據(jù)庫(kù)池24完成任務(wù)請(qǐng)求獲得處理結(jié)果,并控制數(shù)據(jù)傳輸模塊211發(fā)送處理結(jié)果。本實(shí)施例中,虛擬作業(yè)系統(tǒng)212采用OpenMP應(yīng)用編程接口和MPI編程接口標(biāo)準(zhǔn)。
虛擬作業(yè)系統(tǒng)212統(tǒng)一管理調(diào)用各計(jì)算機(jī)節(jié)點(diǎn)的資源,實(shí)現(xiàn)集群系統(tǒng)的統(tǒng)一管理和統(tǒng)一調(diào)控,使得用戶對(duì)整個(gè)虛擬對(duì)稱多處理虛擬機(jī)系統(tǒng)的管理調(diào)控更為便捷、靈活,并能有效提高虛擬對(duì)稱多處理虛擬機(jī)系統(tǒng)的整體資源利用率。
由此架構(gòu)可克服計(jì)算機(jī)節(jié)點(diǎn)的數(shù)據(jù)庫(kù)應(yīng)用受限于單一物理計(jì)算機(jī)系統(tǒng)資源問(wèn)題。本發(fā)明通過(guò)vSMP架構(gòu)將多個(gè)計(jì)算機(jī)的內(nèi)存集成為一內(nèi)存池,需大量?jī)?nèi)存計(jì)算的數(shù)據(jù)庫(kù)應(yīng)用或其他需大量?jī)?nèi)存運(yùn)算的應(yīng)用等可通過(guò)此架構(gòu)取得所需內(nèi)存,以在內(nèi)存中運(yùn)算取代傳統(tǒng)因內(nèi)存不足而使用于硬盤(pán)中暫存檔運(yùn)算,以此加速計(jì)算速度。
本發(fā)明的一種虛擬對(duì)稱多處理虛擬機(jī)系統(tǒng),在需要將大數(shù)據(jù)數(shù)據(jù)庫(kù)直接建立于虛擬作業(yè)系統(tǒng)212中時(shí),需要大規(guī)?;蚓蘖康倪\(yùn)算,虛擬作業(yè)系統(tǒng)212將數(shù)據(jù)直接在內(nèi)存池中進(jìn)行交換,從而減少運(yùn)用硬盤(pán)的I/O,從而達(dá)到加速數(shù)據(jù)處理的目的。
另外,當(dāng)本發(fā)明的一種虛擬對(duì)稱多處理虛擬機(jī)系統(tǒng)中的數(shù)據(jù)庫(kù)池24中的任一數(shù)據(jù)庫(kù)需大量的運(yùn)算及內(nèi)存資源時(shí),虛擬作業(yè)系統(tǒng)212可做實(shí)時(shí)且動(dòng)態(tài)的調(diào)配,可調(diào)用內(nèi)存池中其他計(jì)算機(jī)節(jié)點(diǎn)的內(nèi)存供當(dāng)前計(jì)算機(jī)節(jié)點(diǎn)的數(shù)據(jù)處理使用,從而防止單一計(jì)算機(jī)節(jié)點(diǎn)受限于硬件資源而無(wú)法進(jìn)行工作的情況。
例如,當(dāng)一數(shù)據(jù)庫(kù)在進(jìn)行大數(shù)據(jù)檢索時(shí),該數(shù)據(jù)庫(kù)運(yùn)算內(nèi)存的空間需求為500GB,而原始分配給該數(shù)據(jù)庫(kù)的內(nèi)存資源為4GB,此時(shí)虛擬作業(yè)系統(tǒng)212會(huì)透過(guò)API接口收得此訊息,并計(jì)算內(nèi)存池的冗馀資源,若此時(shí)內(nèi)存池的資源仍有800GB,虛擬作業(yè)系統(tǒng)212會(huì)將此資源調(diào)配給該數(shù)據(jù)庫(kù)使用,滿足其內(nèi)存需求。此時(shí)若有其他應(yīng)用程序需使用計(jì)算內(nèi)存資源,虛擬作業(yè)系統(tǒng)212會(huì)再次計(jì)算內(nèi)存池資源并將資源排程給對(duì)應(yīng)應(yīng)用程序使用,屆此滿足應(yīng)用程序的內(nèi)存需求并將系統(tǒng)資源利用最大化。
本發(fā)明中,多個(gè)計(jì)算器節(jié)點(diǎn)通過(guò)單一虛擬作業(yè)系統(tǒng)212調(diào)配運(yùn)算資源,使所有計(jì)算器節(jié)點(diǎn)的資源整合成一高耦合、自適應(yīng)、高擴(kuò)展并能智能調(diào)配資源的大型計(jì)算機(jī);又可視為是一個(gè)高性能高耦合的超級(jí)計(jì)算器,透過(guò)無(wú)限帶寬網(wǎng)絡(luò)1,可以組建成為一個(gè)整合的規(guī)模更大的大數(shù)據(jù)數(shù)據(jù)庫(kù)系統(tǒng),可滿足需大量?jī)?nèi)存計(jì)算量的數(shù)據(jù)處理需求,從架構(gòu)上說(shuō),這樣一種架構(gòu)特別適合密集運(yùn)算的應(yīng)用,如:空間運(yùn)算、語(yǔ)義解析、搜索引擎、人工智能等。
請(qǐng)參閱圖2~圖4,本發(fā)明的一種基于本發(fā)明的虛擬對(duì)稱多處理虛擬機(jī)系統(tǒng)的數(shù)據(jù)處理方法,包括步驟:
S21:主機(jī)21接收客戶端3發(fā)送的任務(wù)請(qǐng)求;
S22:虛擬作業(yè)系統(tǒng)212根據(jù)任務(wù)請(qǐng)求的內(nèi)容對(duì)硬件資源池23和/或數(shù)據(jù)庫(kù)池24進(jìn)行調(diào)用并獲得任務(wù)請(qǐng)求的處理結(jié)果;
S23:主機(jī)21將任務(wù)請(qǐng)求的處理結(jié)果發(fā)送給客戶端3。
其中,步驟S22進(jìn)一步包括步驟:
S221:虛擬作業(yè)系統(tǒng)212根據(jù)任務(wù)請(qǐng)求的內(nèi)容和當(dāng)前硬件資源池23的使用狀態(tài),形成一任務(wù)處理策略;
S222:根據(jù)任務(wù)處理策略將任務(wù)請(qǐng)求分割為多個(gè)子任務(wù)并派送給對(duì)應(yīng)的計(jì)算機(jī)節(jié)點(diǎn);
S223:計(jì)算機(jī)節(jié)點(diǎn)根據(jù)子任務(wù)調(diào)用所需的硬件和/或數(shù)據(jù)庫(kù),并向虛擬作業(yè)系統(tǒng)212發(fā)送調(diào)用結(jié)果;
S224:虛擬作業(yè)系統(tǒng)212根據(jù)調(diào)用結(jié)果獲得任務(wù)請(qǐng)求的處理結(jié)果。
當(dāng)本發(fā)明數(shù)據(jù)庫(kù)池24中的任一數(shù)據(jù)庫(kù)需大量的運(yùn)算及內(nèi)存資源時(shí),虛擬作業(yè)系統(tǒng)212可做實(shí)時(shí)且動(dòng)態(tài)的調(diào)配,可調(diào)用內(nèi)存池中其他計(jì)算機(jī)節(jié)點(diǎn)的內(nèi)存供當(dāng)前計(jì)算機(jī)節(jié)點(diǎn)的數(shù)據(jù)處理使用,從而防止單一計(jì)算機(jī)節(jié)點(diǎn)受限于硬件資源而無(wú)法進(jìn)行工作的情況。
以上記載的,僅為本發(fā)明的較佳實(shí)施例,并非用以限定本發(fā)明的范圍,本發(fā)明的上述實(shí)施例還可以做出各種變化。即凡是依據(jù)本發(fā)明申請(qǐng)的權(quán)利要求書(shū)及說(shuō)明書(shū)內(nèi)容所作的簡(jiǎn)單、等效變化與修飾,皆落入本發(fā)明專利的權(quán)利要求保護(hù)范圍。