欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

作業(yè)調(diào)度方法、裝置及分布式系統(tǒng)與流程

文檔序號:12363105閱讀:283來源:國知局
作業(yè)調(diào)度方法、裝置及分布式系統(tǒng)與流程

本申請屬于數(shù)據(jù)處理技術領域,具體地說,涉及一種作業(yè)調(diào)度方法、裝置及分布式系統(tǒng)。



背景技術:

在傳統(tǒng)的分布式系統(tǒng)中,分布式作業(yè)包括有限數(shù)量的任務(task),并且任務之間有一定的依賴關系,每一任務又劃分為多個任務切片(instance),作業(yè)運行時,由各個任務的任務切片進行數(shù)據(jù)處理。

基于傳統(tǒng)的分布式系統(tǒng),作業(yè)調(diào)度方式通常是由中心節(jié)點(master),進行統(tǒng)一調(diào)度,例如,假設作業(yè)有兩個任務,分別為task1和task2,task1和task2的依賴關系為task2的輸入為task1的輸出,當作業(yè)運行起來之后,中心節(jié)點會尋找一個沒有前驅(qū)任務的任務,假設為task1先運行起來,當task1的全部任務切片運行結束之后,中心節(jié)點再調(diào)度task2運行。

但是,這種作業(yè)調(diào)度方式,中心節(jié)點處理和維護的數(shù)據(jù)量巨大,影響調(diào)度效率,且沒有充分的利用集群資源,導致資源浪費。



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

有鑒于此,本申請所要解決的技術問題是提供了作業(yè)調(diào)度方法、裝置及分布式系統(tǒng),提高了調(diào)度效率,且提高了資源利用率。

為了解決上述技術問題,本申請公開了一種作業(yè)調(diào)度方法,應用于分布式系統(tǒng)中,所述分布式系統(tǒng)至少包括中心節(jié)點、與所述中心節(jié)點連接的多個控制節(jié)點以及每一控制節(jié)點分別連接的多個計算節(jié)點;所述中心節(jié)點為各個控制節(jié)點分配所述作業(yè)的任務;所述控制節(jié)點調(diào)度為其分配的任務的各個任 務切片在與其連接的計算節(jié)點中運行,所述方法包括:

調(diào)度第一任務的第一控制節(jié)點在所述第一任務的至少一個任務切片運行結束時,通知調(diào)度第二任務的第二控制節(jié)點獲取所述第一任務的至少一個任務切片生成的運行數(shù)據(jù);其中,所述第一任務為所述作業(yè)中任一運行的任務;所述第二任務為所述作業(yè)中依賴所述第一任務的任一任務;

所述第二控制節(jié)點獲取所述第一任務的至少一個任務切片生成的運行數(shù)據(jù),并分配給所述第二任務的每一個任務切片;

所述第二控制節(jié)點調(diào)度所述第二任務的至少一個任務切片運行,處理所述運行數(shù)據(jù)。

優(yōu)選地,所述第二控制節(jié)點調(diào)度所述第二任務的至少一個任務切片運行,處理所述運行數(shù)據(jù)包括:

調(diào)度所述第二任務中,需求數(shù)據(jù)版本與所述運行數(shù)據(jù)版本匹配的任務切片運行,處理所述運行數(shù)據(jù)。

優(yōu)選地,在所述第二任務中的第一任務切片的需求數(shù)據(jù)版本與所述運行數(shù)據(jù)不匹配時,所述方法還包括:

所述第二控制節(jié)點請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行;

所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行,并在重新運行結束之后,通知所述第二控制節(jié)點獲取所述重新生成的運行數(shù)據(jù);

所述第二控制節(jié)點獲取所述重新生成的運行數(shù)據(jù),并在所述重新生成的運行數(shù)據(jù)版本與所述第一任務切片的需求數(shù)據(jù)版本匹配時,調(diào)度所述第一任務切片運行;否則請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行,直至重新生成的運行數(shù)據(jù)版本與所述第一任務切片的需求數(shù)據(jù)版本匹配。

優(yōu)選地,所述第二控制節(jié)點調(diào)度所述第二任務的任一任務切片運行,處理所述運行數(shù)據(jù)之后,所述方法還包括:

所述第二控制節(jié)點在所述第二任務中的第二任務切片處理所述運行數(shù) 據(jù)失敗時,請求所述第一控制節(jié)點調(diào)度所述第一任務中,所述運行數(shù)據(jù)版本對應的任務切片重新運行;

所述第一控制節(jié)點調(diào)度所述第一任務中,所述運行數(shù)據(jù)版本對應的任務切片重新運行;并在所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行結束之后,通知所述第二控制節(jié)點獲取重新生成的運行數(shù)據(jù);

所述第二控制節(jié)點獲取所述重新生成的運行數(shù)據(jù),并調(diào)度所述第二任務的所述第二任務切片運行,處理所述重新生成的運行數(shù)據(jù)。

優(yōu)選地,所述第二控制節(jié)點請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行包括:

所述第二控制節(jié)點通過提高需求數(shù)據(jù)版本,請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行。

一種分布式系統(tǒng),包括一中心節(jié)點、與所述中心節(jié)點連接的多個控制節(jié)點以及每一個控制節(jié)點連接的多個計算節(jié)點;

所述中心節(jié)點,用于為各個控制節(jié)點分配作業(yè)的任務;

所述計算節(jié)點,用于運行與其連接的控制節(jié)點分配的任務切片;

所述控制節(jié)點中的第一控制節(jié)點,用于在為其分配的第一任務的至少一個任務切片運行結束時,通知調(diào)度第二任務的第二控制節(jié)點獲取所述第一任務的至少一個任務切片運行生成的運行數(shù)據(jù);其中,所述第一任務為所述作業(yè)中任一運行的任務;所述第二任務為所述作業(yè)中依賴所述第一任務的任一任務;

所述第二控制節(jié)點,用于獲取所述第一任務的至少一個任務切片運行生成的運行數(shù)據(jù),并分配給所述第二任務的每一個任務切片;調(diào)度所述第二任務的至少一個任務切片運行,處理所述運行數(shù)據(jù)。

優(yōu)選地,所述第二控制節(jié)點調(diào)度所述第二任務的每一個任務切片運行,處理所述運行數(shù)據(jù)包括:

調(diào)度所述第二任務中,需求數(shù)據(jù)版本與所述運行數(shù)據(jù)版本匹配的任務切片運行,處理所述運行數(shù)據(jù)。

優(yōu)選地,所述第二控制節(jié)點還用于:

在所述第二任務中的第一任務切片的需求數(shù)據(jù)版本與所述運行數(shù)據(jù)不匹配時,請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行;獲取所述第一控制節(jié)點重新生成的運行數(shù)據(jù)版本,并在所述重新生成的運行數(shù)據(jù)版本與所述第一任務切片的需求數(shù)據(jù)版本匹配時,調(diào)度所述第一任務切片運行;否則請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行,直至重新生成的運行數(shù)據(jù)版本與所述第一任務切片的需求數(shù)據(jù)版本匹配;

所述第一控制節(jié)點還用于接收到所述第二控制節(jié)點的請求時,調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行;在所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行結束之后,通知所述第二控制節(jié)點獲取重新生成的運行數(shù)據(jù)。

優(yōu)選地,所述第二控制節(jié)點還用于:在所述第二任務中的第二任務切片處理所述運行數(shù)據(jù)失敗時,請求所述第一控制節(jié)點調(diào)度所述第一任務中,所述運行數(shù)據(jù)版本對應的任務切片重新運行;獲取重新生成的運行數(shù)據(jù)版本,并調(diào)度所述第二任務的任務切片運行,處理所述重新運行的數(shù)據(jù)版本;

所述第一控制節(jié)點,還用于接收到所述第二控制節(jié)點的請求時,調(diào)度所述第一任務中,所述運行數(shù)據(jù)版本對應的任務切片重新運行;在所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行結束之后,通知所述第二控制節(jié)點獲取所述重新生成的運行數(shù)據(jù)。

優(yōu)選地,所述第二控制節(jié)點請求所述第一控制節(jié)點調(diào)度所述第一任務中,所述運行數(shù)據(jù)版本對應的任務切片重新運行具體是:

通過提高需求數(shù)據(jù)版本,請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行。

一種作業(yè)調(diào)度裝置,應用于分布式系統(tǒng)的控制節(jié)點中,所述分布式系統(tǒng)至少包括中心節(jié)點、與中心節(jié)點連接的多個控制節(jié)點以及每一個控制節(jié)點分別連接的多個計算節(jié)點;所述控制節(jié)點獲取所述中心節(jié)點分配的所述作業(yè)的一任務,并調(diào)度所述任務的各個任務切片在與其連接的計算節(jié)點中運行,所述裝置包括:

通知模塊,用于在第一任務的至少一個任務切片運行結束時,通知調(diào)度第二任務的控制節(jié)點獲取所述第一任務的至少一個任務切片運行生成的運行數(shù)據(jù);以便于所述調(diào)度第二任務的控制節(jié)點將獲取的所述運行數(shù)據(jù),分配給所述第二任務的每一個任務切片;調(diào)度所述第二任務的每一個任務切片運行,處理所述運行數(shù)據(jù);

其中,所述第一任務為所述作業(yè)中任一運行的任務;所述第二任務為所述作業(yè)中依賴所述第一任務的任一任務。

一種作業(yè)調(diào)度裝置,應用于分布式系統(tǒng)的控制節(jié)點中,所述分布式系統(tǒng)至少包括中心節(jié)點、與中心節(jié)點連接的多個控制節(jié)點以及每一個控制節(jié)點分別連接的多個計算節(jié)點;所述控制節(jié)點獲取所述中心節(jié)點分配的所述作業(yè)的一任務,并調(diào)度所述任務的各個任務切片在與其連接的計算節(jié)點中運行,所述裝置包括:

獲取模塊,用于接收到調(diào)度第一任務的控制節(jié)點的通知時,獲取所述第一任務的至少一個任務切片運行生成的運行數(shù)據(jù);其中,所述通知為所述調(diào)度第一任務的控制節(jié)點在所述第一任務的至少一個任務切片運行結束之后發(fā)送的;所述第一任務為所述作業(yè)中任一運行的任務;所述第二任務為所述作業(yè)中依賴所述第一任務的任一任務;

分配模塊,用于將獲取的所述第一任務的至少一個任務切片生成的運行數(shù)據(jù),分配給所述第二任務的每一個任務切片;

調(diào)度模塊,用于調(diào)度所述第二任務的至少一個任務切片運行,處理所述運行數(shù)據(jù)。

與現(xiàn)有技術相比,本申請可以獲得包括以下技術效果:

本申請?zhí)峁┑姆植际较到y(tǒng),由中心節(jié)點、控制節(jié)點以及計算節(jié)點組成,中心節(jié)點進行任務分配,控制節(jié)點負責任務調(diào)度,從而降低了中心節(jié)點的調(diào)度壓力,提高了調(diào)度效率。在進行作業(yè)調(diào)度時,在作業(yè)中的第一任務的至少一個任務切片運行結束之后,即可以調(diào)度第二任務的至少一個任務切片運行,對運行數(shù)據(jù)進行處理,無需等待第一任務的全部任務切片運行結束,第二任務的任務切片即可以調(diào)度運行進行數(shù)據(jù)處理,充分利用了集群資源,提 高了資源利用率和任務并發(fā)度,降低了作業(yè)運行時間。

當然,實施本申請的任一產(chǎn)品必不一定需要同時達到以上所述的所有技術效果。

附圖說明

此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用于解釋本申請,并不構成對本申請的不當限定。在附圖中:

圖1是本申請實施例的分布式系統(tǒng)的一種結構示意圖;

圖2是本申請實施例的一種作業(yè)調(diào)度方法一個實施例流程圖;

圖3是本申請實施例的一種作業(yè)調(diào)度方法又一個實施例流程圖;

圖4是本申請實施例的一種作業(yè)調(diào)度方法又一個實施例流程圖;

圖5是本申請實施例的一種作業(yè)調(diào)度方法又一個實施例流程圖;

圖6是本申請實施例的實際應用中任務依賴關系的一種示意圖;

圖7是本申請實施例的一種作業(yè)調(diào)度裝置一個實施例結構示意圖;

圖8是本申請實施例的一種作業(yè)調(diào)度裝置另一個實施例結構示意圖;

圖9是本申請實施例的一種作業(yè)調(diào)度裝置又一個實施例結構示意圖;

圖10是本申請實施例的一種作業(yè)調(diào)度裝置又一個實施例結構示意圖。

具體實施方式

以下將配合附圖及實施例來詳細說明本申請的實施方式,藉此對本申請如何應用技術手段來解決技術問題并達成技術功效的實現(xiàn)過程能充分理解并據(jù)以實施。

在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出接口、網(wǎng)絡接口和內(nèi)存。

內(nèi)存可能包括計算機可讀介質(zhì)中的非永久性存儲器,隨機存取存儲器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲器(ROM)或閃存(flash RAM)。內(nèi)存是計算機可讀介質(zhì)的示例。

計算機可讀介質(zhì)包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現(xiàn)信息存儲。信息可以是計算機可讀指令、數(shù)據(jù)結構、程序的模塊或其他數(shù)據(jù)。計算機的存儲介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機存取存儲器(SRAM)、動態(tài)隨機存取存儲器(DRAM)、其他類型的隨機存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)、快閃記憶體或其他內(nèi)存技術、只讀光盤只讀存儲器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設備或任何其他非傳輸介質(zhì),可用于存儲可以被計算設備訪問的信息。按照本文中的界定,計算機可讀介質(zhì)不包括非暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號和載波。

在現(xiàn)有技術中,進行作業(yè)調(diào)度時,由中心節(jié)點進行統(tǒng)一調(diào)度,中心節(jié)點需要控制作業(yè)中一個任務的全部任務切片運行結束之后,再調(diào)度依賴前一個任務的另一個任務的任務切片運行,中心節(jié)點統(tǒng)一管控的方式導致中心節(jié)點的數(shù)據(jù)信息量巨大,特別是作業(yè)規(guī)模上升的一定程度,中心節(jié)點的信息量爆棚,嚴重影響調(diào)度效率。且作業(yè)的各個任務運行時,需要具有依賴關系的前一個任務的任務切片全部運行結束之后,才能調(diào)度后一個任務的任務切片運行,這就導致集群資源可能存在空余,從而導致資源的浪費。

為了解決這一技術問題,本申請實施例提供了一種分布式系統(tǒng),如圖1所示。

該分布式系統(tǒng)由中心節(jié)點101、與該中心節(jié)點連接的多個控制節(jié)點102以及每一控制節(jié)點102連接的多個計算節(jié)點103構成。

中心節(jié)點102為各個控制節(jié)點分配所述作業(yè)的任務。

控制節(jié)點103調(diào)度為其分配的任務的各個任務切片在與其連接的計算節(jié)點中運行。

計算節(jié)點103運行與其連接的控制節(jié)點分配的任務切片;

當作業(yè)的任務數(shù)量大于控制節(jié)點數(shù)量時,中心節(jié)點可以先分配一部分任 務給各個控制節(jié)點,當存在處理資源空閑的控制節(jié)點時,再分配其他未分配的任務。

每一個控制節(jié)點控制所述作業(yè)的一個任務的運行。

通過本申請實施例,由控制節(jié)點實現(xiàn)對作業(yè)的任務的調(diào)度,無需中心節(jié)點進行統(tǒng)一調(diào)度,降低了中心節(jié)點的調(diào)度壓力,從而可以提高調(diào)度效率。且通過控制節(jié)點的調(diào)度,在作業(yè)中的第一任務的至少一個任務切片運行結束之后,即可以調(diào)度第二任務的任務切片運行,對運行數(shù)據(jù)進行處理,無需等待第一任務的全部任務切片運行結束,第二任務的任務切片即可以調(diào)度運行進行數(shù)據(jù)處理,充分利用了集群資源,避免了資源的浪費。本申請實施例的分布式系統(tǒng),通過控制節(jié)點之間的交互,只要任一個任務中的任一個任務切片運行結束,即可以調(diào)度依賴該任務的下一個任務中任務切片開始運行,無需一直處于等待狀態(tài),使得提高了資源利用率和任務并發(fā)度,降低作業(yè)運行時間。

下面將結合附圖對本申請技術方案進行詳細描述。

圖2為本申請實施例提供的一種作業(yè)調(diào)度方法一個實施例的流程圖,該技術方案具體應用于圖1所示的分布式系統(tǒng)中,該方法可以包括以下幾個步驟:

201:調(diào)度第一任務的第一控制節(jié)點在所述第一任務的至少一個任務切片運行結束時,通知調(diào)度第二任務的第二控制節(jié)點獲取所述第一任務的至少一個任務切片生成的運行數(shù)據(jù)。

其中,所述第一任務為所述作業(yè)中任一運行的任務;所述第二任務為所述作業(yè)中依賴所述第一任務的任一任務。

第一控制節(jié)點是指調(diào)度第一任務的控制節(jié)點,第二控制節(jié)點是指調(diào)度第二任務的控制節(jié)點。第一任務以及第二任務分配給哪一個控制節(jié)點進行調(diào)度是由中心節(jié)點預先分配。

本申請實施例中,任務切片運行具體即是指在控制節(jié)點控制任務切片在計算節(jié)點中運行,為了方便描述,在本申請實施例中,均以任務切片運行進 行描述。

本申請適用于作業(yè)中各個任務具有依賴關系的應用場景,例如DAG(Directed Acyclic Graph,有限無環(huán)圖)模型,前一個任務的輸出數(shù)據(jù),為下一個任務的輸入數(shù)據(jù)。

第一任務可以是作業(yè)中任一個正在運行的任務。

依賴該第一任務的任務可能有多個,第二任務可以是指依賴該第一任務的任一個任務。

需要說明的是,第一任務中的“第一”、第二任務中的“第二”,并不是表示順序關系,其僅是為了描述上區(qū)分不同的任務。

第一任務中的每一任務切片運行結束,生成的運行數(shù)據(jù),第一控制節(jié)點會通知第二控制節(jié)點獲取該運行數(shù)據(jù)。

202:第二控制節(jié)點獲取所述第一任務的至少一個任務切片生成的運行數(shù)據(jù),并分配給所述第二任務的每一個任務切片。

第二控制節(jié)點接收到第一控制節(jié)點的通知之后,獲取第一控制節(jié)點中,第一任務的至少一個任務切片生成的運行數(shù)據(jù),并分配給所述第二任務的每一個任務切片

203:第二控制節(jié)點調(diào)度所述第二任務的至少一個任務切片運行,處理所述運行數(shù)據(jù)。

在第一任務的至少一個任務切片運行結束之后,第二控制節(jié)點獲取其生成的運行數(shù)據(jù),分配給第二任務的任務切片,即可以調(diào)度第二任務的任務切片運行,處理所述運行數(shù)據(jù)。

本申請實施例,在作業(yè)中的第一任務的至少一個任務切片運行結束之后,第一控制節(jié)點會通知第二控制節(jié)點,第二控制節(jié)點即可以調(diào)度第二任務的任務切片運行,對運行數(shù)據(jù)進行處理,無需等待第一任務的全部任務切片運行結束,第二任務的任務切片即可以調(diào)度運行進行數(shù)據(jù)處理,充分利用了集群資源,避免了資源的浪費。且調(diào)度過程由控制節(jié)點控制實現(xiàn),無需中心節(jié)點進行統(tǒng)一調(diào)度,中心節(jié)點只負責任務的分配,從而減輕了中心節(jié)點的調(diào)度壓力,可以提高調(diào)度效率。

其中,由于任務切片對應的計算節(jié)點處理資源不足或者其他影響正常運行的條件,任務切片也不會運行成功。

因此第二控制節(jié)點調(diào)度所述第二任務的至少一個任務切片運行,處理所述運行數(shù)據(jù),可以是調(diào)度所述第二任務中的處理資源滿足預設條件的任務切片,處理所述運行數(shù)據(jù)。

對于處理資源未滿足預設條件的任務切片,可以等待其處理資源滿足預設條件時,再調(diào)度運行。

另外,由于第一任務的任務切片的運行數(shù)據(jù)版本,與第二任務的任務切片的需求數(shù)據(jù)版本不一致時,第二任務的任務切片也無法運行。

其中,數(shù)據(jù)版本與任務切片每運行一次得到的數(shù)據(jù)對應的運行次數(shù)對應,例如第一次運行結束得到的數(shù)據(jù)版本即為0、在重新運行時,第二次運行結束得到數(shù)據(jù)版本為1,依次類推,第三次運行結束得到數(shù)據(jù)版本為2......

作為又一個實施例,如圖3所示,為本申請實施例提供的一種作業(yè)調(diào)度方法又一個實施例的流程圖,該方法可以包括以下幾個步驟:

301:調(diào)度第一任務的第一控制節(jié)點在所述第一任務的至少一個任務切片運行結束時,通知調(diào)度第二任務的第二控制節(jié)點獲取所述第一任務的至少一個任務切片生成的運行數(shù)據(jù)。

其中,所述第一任務為所述作業(yè)中任一運行的任務;所述第二任務為所述作業(yè)中依賴所述第一任務的任一任務。

302:第二控制節(jié)點獲取所述第一任務的至少一個任務切片生成的運行數(shù)據(jù),并分配給所述第二任務的每一個任務切片。

303:第二控制節(jié)點調(diào)度所述第二任務中,需求數(shù)據(jù)版本與所述運行數(shù)據(jù)版本匹配的任務切片運行,處理所述運行數(shù)據(jù)。

也即第一任務的該至少一個任務切片的運行數(shù)據(jù)版本,與第二任務的任務切片的需求數(shù)據(jù)版本匹配時,第二控制節(jié)點才可以調(diào)度所述第二任務的任務切片運行,處理所述運行數(shù)據(jù)。其中,由于處理資源的不足也會影響任務切片的運行,因此具體的是調(diào)度第二任務中,處理資源滿足預設條件,且需 求數(shù)據(jù)版本與所述運行數(shù)據(jù)版本匹配的任務切片運行,處理所述運行數(shù)據(jù)。

另外,如果第一任務的所述至少一個任務切片的運行數(shù)據(jù)版本,與第二任務的某一個任務切片,假設為第一任務切片的需求數(shù)據(jù)版本不匹配時,則本申請實施例中,第二控制節(jié)點還可以請求第一控制節(jié)點,調(diào)度第一任務中,所述運行數(shù)據(jù)版本對應的任務切片重新運行。

第一控制節(jié)點接收到第二控制節(jié)點的請求之后,即調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行,并在重新運行結束之后,通知所述第二控制節(jié)點獲取所述重新生成的運行數(shù)據(jù);

第二控制節(jié)點接收到第一控制節(jié)點的通知之后,獲取重新生成的運行數(shù)據(jù),并在所述重新生成的運行數(shù)據(jù)版本與所述第一任務切片的需求數(shù)據(jù)版本匹配時,調(diào)度所述第二任務的第一任務切片運行;否則請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行,直至重新生成的運行數(shù)據(jù)版本與所述第一任務切片的需求數(shù)據(jù)版本匹配。

因此,作為又一個實施例,如圖4所示,在本申請實施例提供的一種作業(yè)調(diào)度方法又一個實施例的中,該方法可以包括以下幾個步驟:

401:調(diào)度第一任務的第一控制節(jié)點在所述第一任務的至少一個任務切片運行結束時,通知調(diào)度第二任務的第二控制節(jié)點獲取所述第一任務的至少一個任務切片生成的運行數(shù)據(jù)。

其中,所述第一任務為所述作業(yè)中任一運行的任務;所述第二任務為所述作業(yè)中依賴所述第一任務的任一任務。

所述第一任務的第一任務切片是指第一任務中的任一個任務切片、

402:第二控制節(jié)點獲取所述第一任務的至少一個任務切片生成的運行數(shù)據(jù),并分配給所述第二任務的每一個任務切片。

403:第二控制節(jié)點判斷所述第二任務的第一任務切片的需求數(shù)據(jù)版本是否與所述第一任務的第一任務切片的運行數(shù)據(jù)版本匹配;如果是,執(zhí)行步驟409,如果否,執(zhí)行步驟404。

其中,第二任務的第一任務切片可以是指第二任務中的任一個任務切 片。

第一任務的第一任務切片可以是指第一任務中已經(jīng)運行結束的任一個任務切片。

404:第二控制節(jié)點請求所述第一控制節(jié)點調(diào)度所述第一任務的第一運任務切片重新運行。

其中,該請求中可以攜帶第二控制節(jié)點的需求數(shù)據(jù)版本。

405:第一控制節(jié)點調(diào)度所述第一任務的第一任務切片重新運行。

第一控制節(jié)點接收到第二控制節(jié)點的請求之后,即調(diào)度所述第一任務的第一任務切片重新運行。

406:第一控制節(jié)點在所述第一任務的第一任務切片重新運行結束之后,通知所述第二控制節(jié)點獲取所述重新生成的運行數(shù)據(jù)。

407:第二控制節(jié)點獲取所述重新生成的運行數(shù)據(jù)。

第二控制節(jié)點接收到第一控制節(jié)點的通知之后,即獲取所述述第一任務的第一任務切片重新生成的運行數(shù)據(jù)。

408:第二控制節(jié)點判斷所述重新生產(chǎn)的運行數(shù)據(jù)版本與所述第二任務的第一任務切片的需求數(shù)據(jù)版本是否匹配,如果是,執(zhí)行步驟409,如果否,返回步驟404繼續(xù)執(zhí)行。

409:第二控制節(jié)點調(diào)度所述第二任務的第一任務切片運行,處理所述第一任務的第一任務切片重新生成的運行數(shù)據(jù)。

如果第二任務的第一任務切片的需求數(shù)據(jù)版本與第一任務的第一任務切片的運行數(shù)據(jù)版本不一致,則可以調(diào)度該第一任務的第一任務切片繼續(xù)重新運行,直至第二任務的第一任務切片的需求數(shù)據(jù)版本與第一任務的第一任務切片的運行數(shù)據(jù)版本匹配。

在調(diào)度第一任務的第一任務切片重新運行時,若第二任務的第一任務切片需求數(shù)據(jù)版本低于該第一任務的第一任務切坡的運行數(shù)據(jù)版本,則由于第一任務無法再生成低版本的數(shù)據(jù),因此將無法調(diào)度第一任務的第一任務切片運行。

因此,作為又一個實施例,該步驟405可以具體是第一控制節(jié)點在所述第二任務的第一任務切片的需求版本,高于所述第一任務的第一任務切片的當前運行數(shù)據(jù)版本時,調(diào)度所述第一任務的所述第一任務切片重新運行。

本申請實施例中,通過需求數(shù)據(jù)版本與運行數(shù)據(jù)版本的判斷,使得提高了任務切片運行的成功率。且在第二任務中任務切片的需求數(shù)據(jù)版本與運行數(shù)據(jù)版本不匹配時,還可以調(diào)度第一任務的任務切片重新運行,直至獲得與需求數(shù)據(jù)版本匹配的運行數(shù)據(jù)版本,提高了數(shù)據(jù)處理成功率。避免了現(xiàn)有技術中,一個任務全部任務切片運行結束之后,才能調(diào)度下一個任務的任務切片運行,一旦任務切片的運行數(shù)據(jù)出錯,后繼任務運行起來之后就會因輸入數(shù)據(jù)錯誤導致失敗的問題。

其中,每一個控制節(jié)點可以為每一個任務切片保存一份數(shù)據(jù)版本表,可以將其獲取到的運行數(shù)據(jù)版本存放在該數(shù)據(jù)版本表中,直至該數(shù)據(jù)運行數(shù)據(jù)版本與數(shù)據(jù)版本表中的需求數(shù)據(jù)版本匹配時,再調(diào)度該任務切片運行。

由于在調(diào)度第二任務的任務切片運行時,第二任務中任一任務切片,處理運行數(shù)據(jù)時,有可能會失敗,比如無法成功讀取運行數(shù)據(jù)。為了保證作業(yè)正常運行,提高任務失敗的自修復能力,在所述第二任務中的任一任務切片處理所述運行數(shù)據(jù)失敗時,還可以調(diào)度所述第一任務中,所述運行數(shù)據(jù)版本對應的任務切片重新運行。

如圖5所示,為本申請實施例提供的一種作業(yè)調(diào)度方法一個實施例的流程圖,該方法可以包括以下幾個步驟:

501:調(diào)度第一任務的第一控制節(jié)點在所述第一任務的至少一個任務切片運行結束時,通知調(diào)度第二任務的第二控制節(jié)點獲取所述第一任務的第二任務切片生成的運行數(shù)據(jù)。

其中,所述第一任務為所述作業(yè)中任一運行的任務;所述第二任務為所述作業(yè)中依賴所述第一任務的任一任務。

所述第一任務的第二任務切片可以是第一任務中任一個任務切片。

502:第二控制節(jié)點獲取所述第一任務的至少一個任務切片生成的運行數(shù)據(jù),并分配給所述第二任務的每一個任務切片。

503:第二控制節(jié)點調(diào)度第二任務的至少一個任務切片運行,處理所述運行數(shù)據(jù)。

其中,該至少一個任務切片可以是第二任務中,需求數(shù)據(jù)版本與該運行數(shù)據(jù)版本匹配,且處理資源滿足預設條件的任務切片。

504:所第二控制節(jié)點判斷第二任務中,是否存在處理第一任務的第二任務切片生成的運行數(shù)據(jù)失敗的第二任務切片,如果是,執(zhí)行步驟505,如果否,則結束流程。

其中,該第二任務的第二任務切片可以是指第二任務中處理所述運行數(shù)據(jù)失敗的任一個任務切片。

第一任務的第二任務切片可以是第一任務中已經(jīng)運行結束的任一個任務切片。

505:第二控制節(jié)點請求所述第一控制節(jié)點調(diào)度所述第一任務的第二任務切片重新運行。

506:第一控制節(jié)點調(diào)度所述第一任務的第二任務切片重新運行。

507:第一控制節(jié)點在所述第一任務的第二任務切片重新運行結束之后,通知所述第二控制節(jié)點獲取所述重新生成的運行數(shù)據(jù);

508:第二控制節(jié)點獲取所述重新生成的運行數(shù)據(jù),并調(diào)度所述第二任務的所述第二任務切片運行。

其中,由于任務切片每重新運行一次,只能生成高于前一版本的運行數(shù)據(jù),任務切片能夠運行,表明其當前需求數(shù)據(jù)版本與運行數(shù)據(jù)版本匹配。

因此,為了能夠調(diào)度所述第一任務的所述第二任務切片重新運行,第二控制節(jié)點可以通過提高數(shù)據(jù)請求版本,以觸發(fā)第一任務的第二任務切片重新運行。

也即第二控制節(jié)點請求第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行,具體是通過提高需求數(shù)據(jù)版本,請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新 運行。

也即第二控制節(jié)點提高需求數(shù)據(jù)版本,并在發(fā)送至第一控制節(jié)點的請求中攜帶該提高的需求數(shù)據(jù)版本。從而第一控制節(jié)點在請求中的需求數(shù)據(jù)版本高于其當前運行數(shù)據(jù)版本時,觸發(fā)任務切片重新運行。

本申請實施例中,在數(shù)據(jù)處理失敗,可以調(diào)度任務切片重新運行,從而在提高了資源利用率的同時,還提高了作業(yè)失敗自修復能力。

下面結合一個實際應用的例子,對本申請技術方案進行詳細描述。

假設作業(yè)包括兩個具有依賴關系的任務:task1和task2,task2的輸入為task1的輸出。如圖6所示的示意圖,假設task1包括三個任務切片M1、M2以及M3,task2包括兩個任務切片R1以及R2。

中心節(jié)點將task1分配給第一控制節(jié)點taskmaster1調(diào)度,將task2分配給第二控制節(jié)點taskmaster2調(diào)度。

taskmaster1以及taskmaster2可以為控制節(jié)點中任意的兩個控制節(jié)點。

task1的每一個任務切片的運行數(shù)據(jù),taskmaster1均可以提供給taskmaster2。

taskmaster2會將運行數(shù)據(jù)分配給每一個計算節(jié)點中的任務切片;taskmaster2的也可以向taskmaster1,請求獲取每一個任務切片請求對應版本的數(shù)據(jù)。

假設task1的輸入數(shù)據(jù)已經(jīng)準備好,可以正常運行。中心節(jié)點觸發(fā)taskmaster1調(diào)度task1運行。

taskmaster2為每一個task2可以維護一個數(shù)據(jù)版本列表,其中包括運行數(shù)據(jù)版本和需求數(shù)據(jù)版本,只有運行數(shù)據(jù)版本和需求數(shù)據(jù)版本一致,且處理資源滿足預設條件時,task2的任務切片才可以調(diào)度運行。每一個任務切片的初始需求數(shù)據(jù)版本一樣。

taskmaster1在task1的任一個任務切片運行結束之后,即通知taskmaster2獲取生成的運行數(shù)據(jù)。

taskmaster2將獲取的運行數(shù)據(jù)分配給第二任務的每一個任務。

如果task2的某一個任務切片,假設R1的需求數(shù)據(jù)版本與task1的某一個任務切片,假設M1的運行數(shù)據(jù)版本不匹配,則task2的R1處于等待處理M1的運行數(shù)據(jù)的狀態(tài)。

同時taskmaster2可以向taskmaster1的請求獲取其需求版本的數(shù)據(jù),taskmaster1可以在taskmaster2請求的需求版本數(shù)據(jù)高于該運行數(shù)據(jù)版本時,調(diào)度task1的該任務切片M1重新運行。

重新運行結束之后,taskmaster1可以通知taskmaster2獲取M1重新運行生成的數(shù)據(jù),taskmaster2接收到taskmaster1的通知之后,獲取M1重新運行生成的數(shù)據(jù),并將M1重新運行生成的數(shù)據(jù)分配給R1。

在R1的需求數(shù)據(jù)版本與M1的運行數(shù)據(jù)版本匹配時,R1即開始運行,處理M1的運行數(shù)據(jù)。

如果需求版本的數(shù)據(jù)低于運行數(shù)據(jù)的版本,任務切片M1將不能被調(diào)度運行。

如果task2的某一個任務切片,假設R2的處理資源未滿足預設條件,則R2繼續(xù)等待,直至其計算節(jié)點的處理資源滿足預設條件時,且其需求數(shù)據(jù)版本與接收到的task1的任務切片,假設與M2的運行數(shù)據(jù)匹配,則即可以運行,處理M2的運行數(shù)據(jù)。

在task2的任務切片運行,處理task1的任務切片的運行數(shù)據(jù)時,有可能讀取運行數(shù)據(jù)失敗,導致數(shù)據(jù)處理失敗,假設R1讀取M1的運行數(shù)據(jù)失敗,則taskmaster2可以請求taskmaster1調(diào)度M1重新運行。

由于M1每運行一次只能生成高版本的數(shù)據(jù),因此可以通過提高需求數(shù)據(jù)版本的方式,請求taskmaster1調(diào)度M1重新運行,taskmaster1在taskmaster2的需求數(shù)據(jù)版本高于其運行數(shù)據(jù)版本時,則可以觸發(fā)M1重新運行。

如圖1中所示,本申請實施例還提供了一種分布式系統(tǒng),該分布式系統(tǒng)包括一中心節(jié)點101、與所述中心節(jié)點101連接的多個控制節(jié)點102以及每一個控制節(jié)點連接的多個計算節(jié)點103;

所述中心節(jié)點101,用于為各個控制節(jié)點分配所述作業(yè)的任務,每一控制節(jié)點調(diào)度所述作業(yè)的其中一個任務。

所述計算節(jié)點103,用于運行與其連接的控制節(jié)點分配的任務切片;

控制節(jié)點103中的第一控制節(jié)點,用于在為其分配的第一任務的至少一個任務切片運行結束時,通知調(diào)度第二任務的第二控制節(jié)點獲取所述第一任務的至少一個任務切片運行生成的運行數(shù)據(jù);其中,所述第一任務為所述作業(yè)中任一運行的任務;所述第二任務為所述作業(yè)中依賴所述第一任務的任一任務;

控制節(jié)點103中的第二控制節(jié)點,用于獲取第一控制節(jié)點中所述第一任務的至少一個任務切片運行生成的運行數(shù)據(jù),并分配給所述第二任務的每一個任務切片;調(diào)度所述第二任務的至少一個任務切片運行,處理所述運行數(shù)據(jù)。

第一控制節(jié)點以及第二控制節(jié)點不同,可以是多個控制節(jié)點中的任意兩個控制節(jié)點,由中心節(jié)點分配,分別調(diào)度第一任務和第二任務。

通過本申請實施例的分布式系統(tǒng),通過控制節(jié)點,實現(xiàn)了作業(yè)中任務的調(diào)度,無需中心節(jié)點進行統(tǒng)一調(diào)度,中心節(jié)點只負責任務的分配,從而減輕了中心節(jié)點的調(diào)度壓力,可以提高調(diào)度效率。在進行作業(yè)調(diào)度時,在作業(yè)中的第一任務的至少一個任務切片運行結束之后,第一控制節(jié)點會通知第二控制節(jié)點,第二控制節(jié)點即可以調(diào)度第二任務的任務切片運行,對運行數(shù)據(jù)進行處理,無需等待第一任務的全部任務切片運行結束,第二任務的任務切片即可以調(diào)度運行進行數(shù)據(jù)處理,充分利用了集群資源,避免了資源的浪費。

作為又一個實施例,所述第二控制節(jié)點調(diào)度所述第二任務的每一個任務切片運行,處理所述運行數(shù)據(jù)可以具體是:

調(diào)度所述第二任務中,需求數(shù)據(jù)版本與所述運行數(shù)據(jù)版本匹配的任務切片運行,處理所述運行數(shù)據(jù)。

如果第一任務的所述至少一個任務切片的運行數(shù)據(jù)版本,與第二任務的任一個任務切片的需求數(shù)據(jù)版本不匹配時,則本申請實施例中,第二控制節(jié) 點還可以請求第一控制節(jié)點,調(diào)度第一任務中,所述運行數(shù)據(jù)版本對應的任務切片重新運行。因此,作為又一個實施例,所述第二控制節(jié)點還用于:

在所述第二任務中的第一任務切片的需求數(shù)據(jù)版本與所述運行數(shù)據(jù)不匹配時,請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行;獲取所述第一控制節(jié)點重新生成的運行數(shù)據(jù),在所述重新生成的運行數(shù)據(jù)版本與所述第一任務切片的需求數(shù)據(jù)版本匹配時,調(diào)度所述第一任務切片運行;否則請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行,直至重新生成的運行數(shù)據(jù)版本與所述第一任務切片的需求數(shù)據(jù)版本匹配。

所述第一控制節(jié)點還用于:

接收到所述第二控制節(jié)點的請求時,調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行;在所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行結束之后,通知所述第二控制節(jié)點獲取所述重新生成的運行數(shù)據(jù)。

通過需求數(shù)據(jù)版本與運行數(shù)據(jù)版本的判斷,使得進一步提高了任務切片運行的成功率。且在第二任務中任務切片的需求數(shù)據(jù)版本與運行數(shù)據(jù)版本不匹配時,還可以調(diào)度第一任務的任務切片重新運行,直至獲得與需求數(shù)據(jù)版本匹配的運行數(shù)據(jù)版本,進一步的提高數(shù)據(jù)處理成功率。避免了現(xiàn)有技術中,一個任務全部任務切片運行結束之后,才能調(diào)度下一個任務的任務切片運行,一旦任務切片的運行數(shù)據(jù)出錯,后繼任務運行起來之后就會因輸入數(shù)據(jù)錯誤導致失敗的問題。

由于在調(diào)度第二任務的任務切片運行時,第二任務中任一任務切片,處理運行數(shù)據(jù)時,有可能會失敗,比如無法成功讀取運行數(shù)據(jù),因此,作為又一個實施例,所述第二控制節(jié)點還用于:

在所述第二任務中的第二任務切片處理所述運行數(shù)據(jù)失敗時,請求所述第一控制節(jié)點調(diào)度所述第一任務中,所述運行數(shù)據(jù)版本對應的任務切片重新運行;獲取重新生成的運行數(shù)據(jù)版本,并調(diào)度所述第二任務的任務切片運行, 處理所述重新運行生成的數(shù)據(jù)版本;

所述第一控制節(jié)點還用于:

接收到所述第二控制節(jié)點的請求時,調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行;在所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行結束之后,通知所述第二控制節(jié)點獲取所述重新生成的運行數(shù)據(jù)。

另外,第二控制節(jié)點請求第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行,可以是通過提高需求數(shù)據(jù)版本,請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行。

也即第二控制節(jié)點提高需求數(shù)據(jù)版本,并在發(fā)送至第一控制節(jié)點的請求中攜帶該提高的需求數(shù)據(jù)版本。從而第一控制節(jié)點在請求中的需求數(shù)據(jù)版本高于其當前運行數(shù)據(jù)版本時,觸發(fā)任務切片重新運行。

在數(shù)據(jù)處理失敗,通過調(diào)度任務切片重新運行,提高了資源利用率的同時,還提高了作業(yè)失敗自修復能力。

本申請實施例還提供了一種作業(yè)調(diào)度裝置,如圖7所示,為該作業(yè)調(diào)度裝置的結構示意圖,該裝置具體應用于圖1所示的分布式系統(tǒng)中的控制節(jié)點中。

該裝置可以包括:

通知模塊701,用于在調(diào)度的第一任務的至少一個任務切片運行結束時,通知調(diào)度第二任務的控制節(jié)點獲取所述第一任務的至少一個任務切片運行生成的運行數(shù)據(jù);以便于所述調(diào)度第二任務的控制節(jié)點將獲取的所述運行數(shù)據(jù),分配給所述第二任務的每一個任務切片;調(diào)度所述第二任務的每一個任務切片運行,處理所述運行數(shù)據(jù);

其中,所述第一任務為所述作業(yè)中任一運行的任務;所述第二任務為所述作業(yè)中依賴所述第一任務的任一任務。

圖8示出了本申請實施例提供的一種作業(yè)調(diào)度裝置另一個實施例的結構示意圖,該裝置具體應用于圖1所示的分布式系統(tǒng)中的控制節(jié)點中,

該裝置可以包括:

獲取模塊801,用于接收到調(diào)度第一任務的控制節(jié)點的通知時,獲取所述第一任務的至少一個任務切片運行生成的運行數(shù)據(jù);其中,所述通知為所述調(diào)度第一任務的控制節(jié)點在所述第一任務的至少一個任務切片運行結束之后發(fā)送的;所述第一任務為所述作業(yè)中任一運行的任務;所述第二任務為所述作業(yè)中依賴所述第一任務的任一任務;

分配模塊802,用于將獲取的所述第一任務的至少一個任務切片生成的運行數(shù)據(jù),分配給所述第二任務的每一個任務切片;

調(diào)度模塊803,用于調(diào)度所述第二任務的至少一個任務切片運行,處理所述運行數(shù)據(jù)。

其中,所述調(diào)度模塊803具體是用于調(diào)度所述第二任務中,需求數(shù)據(jù)版本與所述運行數(shù)據(jù)版本匹配的任務切片運行,處理所述運行數(shù)據(jù)。

如圖9所示,作為又一個實施例,在圖8所示的作業(yè)調(diào)度裝置中,該裝置還可以包括:

第一請求模塊901,用于在所述第二任務中的第一任務切片的需求數(shù)據(jù)版本與所述運行數(shù)據(jù)不匹配時,請求所述調(diào)度第一任務的控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行;

則所述獲取模塊801還用于獲取所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新生成的運行數(shù)據(jù)版本;

則所述分配模塊802,還用于將獲取的重新生成的運行數(shù)據(jù)版本發(fā)送至所述第二任務的第一任務切片。

則所述調(diào)度模塊803還用于在所述重新生成的運行數(shù)據(jù)版本與所述第一任務切片的需求數(shù)據(jù)版本匹配時,調(diào)度所述第一任務切片運行;否則請求所述第一控制節(jié)點調(diào)度所述第一任務中所述運行數(shù)據(jù)版本對應的任務切片重新運行,直至重新生成的運行數(shù)據(jù)版本與所述第一任務切片的需求數(shù)據(jù)版 本匹配。

如圖10所示,作為又一個實施例,在圖8所示的作業(yè)調(diào)度裝置中,該裝置還可以包括:

第二請求模塊1001,用于在所述第二任務中的第二任務切片處理所述運行數(shù)據(jù)失敗時,請求所述第一控制節(jié)點調(diào)度所述第一任務中,所述運行數(shù)據(jù)版本對應的任務切片重新運行;

所述獲取模塊801,還用于獲取所述第一任務中,所述運行數(shù)據(jù)版本對應的任務切片重新生成的運行數(shù)據(jù)版本。

所述分配模塊802,還用于將重新生成的運行數(shù)據(jù)版本分配至所述第二任務的第二任務切片。

所述調(diào)度模塊803還用于調(diào)度所述第二任務的第二任務切片運行,處理所述重新運行的數(shù)據(jù)版本。

如在說明書及權利要求當中使用了某些詞匯來指稱特定組件。本領域技術人員應可理解,硬件制造商可能會用不同名詞來稱呼同一個組件。本說明書及權利要求并不以名稱的差異來作為區(qū)分組件的方式,而是以組件在功能上的差異來作為區(qū)分的準則。如在通篇說明書及權利要求當中所提及的“包含”為一開放式用語,故應解釋成“包含但不限定于”?!按笾隆笔侵冈诳山邮盏恼`差范圍內(nèi),本領域技術人員能夠在一定誤差范圍內(nèi)解決所述技術問題,基本達到所述技術效果。此外,“耦接”一詞在此包含任何直接及間接的電性耦接手段。因此,若文中描述一第一裝置耦接于一第二裝置,則代表所述第一裝置可直接電性耦接于所述第二裝置,或通過其他裝置或耦接手段間接地電性耦接至所述第二裝置。說明書后續(xù)描述為實施本申請的較佳實施方式,然所述描述乃以說明本申請的一般原則為目的,并非用以限定本申請的范圍。本申請的保護范圍當視所附權利要求所界定者為準。

還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的商品或者系統(tǒng)不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種商品或者系統(tǒng)所固有的要素。在沒有更多限制的情況下,由語句“包括一個......”限定的 要素,并不排除在包括所述要素的商品或者系統(tǒng)中還存在另外的相同要素。

上述說明示出并描述了本申請的若干優(yōu)選實施例,但如前所述,應當理解本申請并非局限于本文所披露的形式,不應看作是對其他實施例的排除,而可用于各種其他組合、修改和環(huán)境,并能夠在本文所述申請構想范圍內(nèi),通過上述教導或相關領域的技術或知識進行改動。而本領域人員所進行的改動和變化不脫離本申請的精神和范圍,則都應在本申請所附權利要求的保護范圍內(nèi)。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
江陵县| 广东省| 福建省| 石柱| 桑植县| 赤峰市| 达孜县| 乌兰县| 龙南县| 桐庐县| 盐山县| 九寨沟县| 中山市| 宁南县| 崇左市| 德惠市| 阳原县| 南召县| 库伦旗| 敖汉旗| 肃南| 阿图什市| 泗洪县| 安福县| 登封市| 电白县| 南靖县| 明溪县| 太湖县| 巨鹿县| 嵩明县| 阳西县| 墨玉县| 赤城县| 泰顺县| 象州县| 二连浩特市| 高台县| 乌鲁木齐市| 衡南县| 威海市|