• / 20
  • 下載費用:30 金幣  

分布式數據處理系統.pdf

摘要
申請專利號:

CN200980134799.0

申請日:

2009.08.24

公開號:

CN102144220B

公開日:

2015.01.07

當前法律狀態:

授權

有效性:

有權

法律詳情: 授權|||實質審查的生效IPC(主分類):G06F 9/50申請日:20090824|||公開
IPC分類號: G06F9/50; H04L29/08 主分類號: G06F9/50
申請人: 英國電訊有限公司
發明人: 米歇爾·馬祖克; 保羅·佛朗西斯·麥基; 邁克爾·安德烈亞·費希爾
地址: 英國倫敦
優先權: 2008.09.08 EP 08252968.6; 2008.09.09 GB 0816476.6
專利代理機構: 北京三友知識產權代理有限公司 11127 代理人: 李輝;呂俊剛
PDF完整版下載: PDF下載
法律狀態
申請(專利)號:

CN200980134799.0

授權公告號:

102144220B||||||

法律狀態公告日:

2015.01.07|||2011.09.28|||2011.08.03

法律狀態類型:

授權|||實質審查的生效|||公開

摘要

本發明公開了一種分布式數據處理系統。分布式數據處理系統,尤其是數據中心存在的問題是對于那些數據中心的低水平利用。這部分地由于數據中心提供商關心不能因為數據中心提供給客戶的業務的質量下降到業務水平協議中協定的業務水平以下而被那些客戶索取罰金。公開了多個實施方式,通過對執行所請求的作業包對已經在數據中心中運行的作業的可能影響進行評估來使數據中心控制該數據中心所承擔的工作量,這些實施方式解決了上述問題。接著,通過在可支付給客戶的罰金的預期增加與作為運行所請求的作業包的回報的預期收入之間進行權衡來做出是否提供所請求的作業包的決定。

權利要求書

1: 一種計算機網絡, 該計算機網絡包括 : 客戶端計算機 ; 業務提供系統, 該業務提供系 統包括作業準許控制器和一個或更多個服務器計算機 ; 以及通信鏈路, 這些通信鏈路連接 所述客戶端計算機和業務提供系統 ; 所述客戶端計算機被設置為進行以下操作 : i) 產生代表請求所述一個或更多個服務器計算機執行一數據處理作業的多個例程的 作業包請求消息 ; ii) 向所述一個或更多個服務器計算機發送所述作業包請求消息 ; 所述作業準許控制器被設置為進行以下操作 : i) 接收所述作業包請求消息 ; ii) 估計準許所述作業包是否將使所述業務提供系統過載 ; iii) 根據所述估計, 確定所述業務提供系統是否提供所述作業包 ; iv) 向所述客戶端計算機指示所述確定 ; 所述客戶端計算機還被設置為進行以下操作 : v) 當得到指示所述作業包被準許的所述指示時, 向所述業務提供系統發送屬于所述作 業包的作業請求 ; 所述一個或更多個服務器計算機被設置為進行以下操作 : 接收所述作業包中的作業請 求, 并執行該作業請求中所請求的作業。
2: 根據權利要求 1 所述的計算機網絡, 其中, 所述作業包請求消息包括指示所述作業 包中的作業的預測平均到達速度的度量。
3: 根據權利要求 1 所述的計算機網絡, 其中, 所述作業準許控制器還被設置為進行以 下操作 : 監測指示給定類型的作業的當前平均到達速度以及給定類型的作業的當前平均業 務時間的度量 ; 以及根據所述度量來得到所述給定類型的作業施加在所述業務提供系統上 的當前工作量的估計。
4: 根據權利要求 3 所述的計算機網絡, 其中, 所述估計涉及以下步驟 : 所述作業準許控 制器在確定是否執行所請求的作業包時計算將以比閾值性能水平差的質量執行所述類型 的作業的概率。
5: 根據權利要求 4 所述的計算機網絡, 其中, 所述一個或更多個服務器計算機還被設 置為進行以下操作 : 監測給定類型的作業的到達間隔時間的變化和給定類型的作業的業務 時間的變化, 這些變化在計算將以比閾值性能水平差的質量執行所請求的作業包的概率時 也被考慮。
6: 根據權利要求 1 所述的計算機網絡, 其中, 所述一個或更多個服務器計算機執行多 種不同的作業類型, 并且所述確定涉及以下步驟 : 假設所請求的作業包被準許, 針對作業類 型計算服務器計算機的分配, 并且其后, 計算以比閾值性能水平差的質量執行所請求的作 業包的概率。
7: 根據權利要求 4 或權利要求 5 所述的計算機網絡, 其中, 所述作業準許控制器與存儲 器進行通信, 該存儲器存儲與以比閾值性能水平差的質量執行所請求的作業包相關聯的罰 金, 以及與以比所述閾值性能水平好的質量執行所請求的作業包相關聯的獎金, 所述作業 準許控制器根據在給定所述存儲的懲罰和獎勵以及所述質量超過所述閾值的概率和 / 或 所述質量下降到所述閾值以下的概率時由所述作業包得到的預期收入來確定是否執行所 2 述作業包。
8: 根據權利要求 6 所述的計算機網絡, 其中, 所述作業準許控制器與存儲器進行通信, 該存儲器針對各種作業類型存儲閾值性能水平、 與以比所述閾值性能水平差的質量執行所 請求的作業包相關聯的罰金、 以及與以比所述閾值性能水平好的質量執行所請求的作業包 相關聯的獎金, 所述作業準許控制器根據在給定所述存儲的懲罰和獎勵以及所述質量超過 所述閾值的概率和 / 或所述質量下降到所述閾值以下的概率時由所述作業包得到的預期 收入并根據所述一個或更多個服務器計算機已經開始執行的作業包的預期收入來確定是 否執行所述作業包。
9: 根據權利要求 1 所述的計算機網絡, 其中, 所述業務提供系統被設置為進行以下操 作: 通過查明所述作業請求是否屬于經準許的作業包來對所述作業請求進行響應 ; 以及在 發現所述業務請求屬于經準許的作業包時, 滿足所述作業請求。
10: 根據權利要求 1 所述的計算機網絡, 其中, 所述作業準許控制器通過以下步驟來指 示所述確定的結果 : a) 產生指示所述業務提供系統是否提供所述作業包的作業包準許指示消息 ; 以及 iv) 向所述作業包請求消息的發送者發送所述作業包準許消息 ; 所述客戶端計算機通過讀取所述作業包準許消息來得知所述確定。
11: 根據權利要求 10 所述的計算機網絡, 其中, 所述作業包準許指示消息包括作業包 標識符。
12: 一種數據處理系統, 該數據處理系統被設置為進行以下操作 : i) 接收表示請求所述數據處理系統執行一數據處理業務的多個例程的作業包請求消 息; ii) 確定所述數據處理系統是否提供所述作業包 ; 以及 iii) 向所述作業包請求消息的發送者指示所述確定的結果。
13: 一種操作數據處理系統的方法, 該方法包括以下步驟 : i) 接收表示請求所述數據處理系統執行一數據處理業務的多個例程的作業包請求消 息; ii) 確定所述數據處理系統是否提供所述作業包 ; 以及 iii) 向所述作業包請求消息的發送者指示所述確定的結果。
14: 一種可執行的計算機程序, 該計算機程序執行權利要求 13 所述的方法。
15: 一種計算機可讀介質, 該計算機可讀介質上存儲有權利要求 14 所述的計算機程 序。

說明書


分布式數據處理系統

    【技術領域】
     本發明涉及分布式數據處理系統, 并涉及操作分布式數據處理系統的方法。背景技術 數據處理業務的提供商通常運營數據中心, 這些數據中心經由萬維網來從客戶端 計算機接收作業請求, 并響應于那些作業請求來執行一些數據處理, 這些數據中心通常將 處理結果返回到進行請求的客戶端計算機。
     這種數據中心代表很多企業 ( 例如, 使用數據中心以依次向他們的客戶提供在線 購物業務的零售商 ) 來提供數據處理服務。數據中心運營商與這種企業之間的協議通常包 括預期的業務水平, 并規定數據中心運營商在數據中心未能提供經協定的業務水平的情況 下向企業支付罰金。
     由于請求從企業的客戶到達的速度以不可預測的方式顯著變化, 所以這是一個特 殊的問題。 該問題的常規解決方案是使數據中心過工程化 (over-engineer), 這導致數據中 心在大部分時間未被充分利用。
     歐 洲 專 利 申 請 1612674 公 開 了 根 據 使 用 信 息 處 理 系 統 正 被 請 求 提 供 的 多 個 可用的應用程序中的哪個應用程序, 可以拒絕或接受對信息處理系統的訪問請求 —— 具體地說, 是否準許訪問請求的決定可以取決于所關注的被請求的應用程序是否過載 (overloaded)。拒絕還是接受請求的決定可以進一步取決于是哪個客戶端在做出請求。
     發明內容 根據本發明, 提供了一種計算機網絡, 該計算機網絡包括 : 客戶端計算機 ; 業務提 供系統, 該業務提供系統包括作業準許控制器和一個或更多個服務器計算機 ; 以及通信鏈 路, 這些通信鏈路連接所述客戶端計算機與業務提供系統 ;
     所述客戶端計算機被設置為進行以下操作 :
     i) 產生代表請求所述一個或更多個服務器計算機執行一數據處理作業的多個例 程的作業包 (job bundle) 請求消息 ;
     ii) 向所述一個或更多個服務器計算機發送所述作業包請求消息 ;
     所述作業準許控制器被設置為進行以下操作 :
     i) 接收所述作業包請求消息 ;
     ii) 確定所述業務提供系統是否提供所述作業包 ;
     iii) 向所述客戶端計算機指示所述確定 ;
     所述客戶端計算機還被設置為進行以下操作 :
     iv) 當得到指示所述作業包被接受的所述指示時, 向所述業務提供系統發送屬于 所述作業包的作業請求 ;
     所述一個或更多個服務器計算機被設置為進行以下操作 : 接收所述作業包中的作 業請求, 并且執行所述作業請求中所請求的作業。
     通過將執行數據處理作業的多個請求聚合成執行一批數據處理作業的單個請求, 以及通過執行包準許測試來對所述單個請求進行響應, 減少了與準許控制相關聯的計算 量。保持了準許控制的顯著益處——即, 對于一個或更多個服務器計算機所承擔的工作量 的經增加的可預測性, 進而, 以更高的利用水平來運行一個或更多個服務器計算機而不導 致對已經在運行的作業產生不利影響的不可接受的風險的能力。
     與應用于單獨的作業的準許控制相比的優點在于用戶知道一旦接受了作業包, 就 執行該作業包中的各個作業。在準許控制被應用于單獨的作業的情況下, 用戶無法知道哪 些作業將被執行以及哪些作業將不被執行。
     應當注意, 多個作業彼此獨立 ( 它們是獨立的任務 ), 換言之, 一個數據處理作業 的輸出不用作向另一個數據處理作業的輸入。 附圖說明 現在將參照附圖僅以示例的方式來描述本發明的具體實施方式, 附圖中 :
     圖 1 示出第一實施方式中使用的計算機網絡 ;
     圖 2 示出由控制器計算機針對各種作業類型而存儲的作業類型表 ;
     圖 3 示出從企業網絡向數據中心發送的作業包請求消息中包含的信息 ;
     圖 4 示出從企業網絡向數據中心發送的后續作業提交消息 ;
     圖 5 示出由控制器計算機針對各個經準許的作業包而維護的作業包匯總表 ;
     圖 6 示出由控制器計算機針對各個經準許的作業包而維護的作業包性能表 ;
     圖 7 是示出數據中心的操作的功能框圖的圖示 ;
     圖 8 是例示在第一實施方式中, 響應于來自企業網絡的作業包請求消息的到達, 由數據中心的控制器計算機執行的處理的流程圖 ;
     圖 9 是例示響應于來自企業網絡的作業提交消息的接收, 由控制器計算機執行的 處理的流程圖 ;
     圖 10 是例示響應于來自作業處理器的作業完成消息的接收, 由控制器計算機執 行的處理的流程圖 ; 以及
     圖 11 是例示在第二實施方式中, 響應于來自企業網絡的作業包請求消息的到達, 由數據中心的控制器計算機執行的處理的流程圖。
     具體實施方式
     圖 1 示出包括經由互聯網 20 連接到數據中心 30 的企業網絡 10 的計算機網絡。
     企業網絡 10 包括經由局域網 14 連接到代理計算機 16 的大量個人計算機 12( 僅 示出四個 )。各個人計算機包括常規硬件, 具體地說, 各個人計算機包括 : 硬盤, 其用于存儲 程序 ; 處理器, 該處理器的動作被這些程序控制 ; 隨機存取存儲器, 處理器從該隨機存取存 儲器獲取控制該處理器的動作的程序 ; 顯示器和用于控制該顯示器的顯卡 ; 網絡接口卡, 其使得計算機能夠向網絡發送消息 ( 并且從網絡接收消息 ) ; 以及一個或更多個通信總線, 其提供所提到的各個硬件之間的電子數字通信。 硬盤上還存在操作系統程序和其它實用程 序。
     為了該例示性的示例實施方式的目的, 假設擁有企業網絡 10 的企業是以信貸(credit) 的方式為其零售客戶提供電信業務的零售電信業務公司。因此, 該公司在為那些 客戶提供電信業務之前對預期的客戶執行信用檢查。
     因而, 各個人計算機都配置有從 CD-ROM 或 DVD-ROM 50 安裝到計算機硬盤上的信 用檢查客戶端程序。可以執行該信用檢查客戶端程序, 以經由利用計算機的顯示器提供的 圖形用戶界面來從客戶業務代理商提取潛在客戶的詳細資料, 以及以消息的形式將那些詳 細資料轉發到代理計算機 16。
     代 理 計 算 機 也 具 有 常 規 硬 件 和 軟 件。 此 外, 信 用 檢 查 代 理 程 序 從 CD-ROM 或 DVD-ROM 54 安裝到計算機的硬盤上。該信用檢查代理程序控制代理計算機 16 從個人計算 機 12 接收信用檢查請求, 并且通過互聯網 20 將這些信用檢查請求轉發到數據中心 30。當 接收到對于信用檢查的響應時, 代理計算機 16 將該響應傳送到發出相應的信用檢查請求 的任何一個個人計算機 12。在該程序的控制下, 代理計算機還保存企業在一天中的每個小 時內做出的信用檢查請求的數量的記錄。由此, 代理計算機計算并且存儲一天中的每個小 時內可能的信用檢查的數量的估計值。在信用檢查代理程序的控制下, 代理計算機 16 每小 時都做出向數據中心 30 提交的信用檢查的估計數量的請求。如果該請求被接受, 則代理計 算機 16 向數據中心 30 轉發代理計算機 16 在隨后的小時中接收到的信用檢查。 數據中心 30 包括經由局域網 34 連接到控制器計算機 32 的大量服務器計算機 36。 諸如 RAID 陣列 38 的大型持久性存儲器也連接到該局域網。本領域技術人員將知道服務器 計算機 36 通常采用被插入到為服務器計算機提供共享存儲器和電力設備的機架中的刀片 (blade) 或板的形式。各個服務器計算機包括 : 一個或更多個處理器, 其動作由程序 ( 經常 從資源庫 38 加載 ) 控制 ; 隨機存取存儲器, 處理器從該隨機存取存儲器獲取控制該處理器 的動作的程序 ; 網絡接口卡, 其使得計算機能夠向網絡發送消息以及從網絡接收消息 ; 以 及一個或更多個通信總線, 其提供所提到的各個硬件之間的電子數字通信。
     服務器計算機能夠執行多種不同的作業類型。合適的應用程序從 CD-ROM 或 DVD-ROM 56 加載到控制器計算機 32 上, 接著, 控制器計算機 32 在資源庫 38 中存儲那些程 序。 數據中心管理軟件也 ( 從 CD-ROM 或 DVD-ROM 58) 加載到控制器計算機 32 上, 該數據中 心管理軟件使得數據中心管理員能夠管理哪些應用程序可以在哪些服務器上使用。 在本示 例中, 服務器計算機 36 的數據中心管理軟件自動將服務器計算機 36 設置成池 (pool)—— 任意給定池中的各個服務器運行應用程序以提供給定的作業類型。 數據中心管理軟件提供 使其它程序能夠將服務器計算機 36 重新分配到不同池的接口。
     作業包管理程序也 ( 從 CD-ROM 或 DVD-ROM 60) 加載到控制器計算機 32, 該作業包 管理程序響應于運行作業包的請求, 并且隨后監測并記錄數據中心在運行任何所接受的作 業包時的性能。
     數據中心向企業網絡提供多個不同的應用程序。各應用程序提供一種作業類型。 圖 2 示出具有與數據中心提供的 N 個作業類型相對應的 N 行的作業類型表。該作業類型表 的最左列是作業類型標識符。該示例專注的作業類型 ( 信用檢查 ) 是作業類型 1。當然存 在大量可能的作業類型, 其它可能性包括例如目錄查詢業務、 郵編 / 地址業務或貨幣兌換 業務。
     對于作業類型表中列出的各個所提供的作業類型, 數據中心提供業務水平協議。 在當前實際使用的業務水平協議主要涉及業務 ( 即, 作業類型 ) 的可用性時, 在本示例中,
     數據中心執行各種類型的作業時的性能被監測并且該性能形成業務水平協議的一部分。 由 控制器計算機 32 針對各個所提交的作業所監測的性能參數是控制器計算機 32 接收作業提 交消息和多個服務器計算機 36 中的一個開始執行該作業之間的等待時間。如將在下面更 詳細地描述的, 在本示例中, 企業網絡 10 將多個作業請求打包成一個作業包請求。本示例 中使用的性能參數相應地是作業包中所包括的所有作業的等待時間的平均值。 通過數據中 心 30 提供性能參數的不會被違反的閾值水平, 并且該閾值水平形成數據中心 30 與其客戶 之間的業務水平協議的一部分。 因而, 在本示例中, 在作業類型表的第四列中記錄不應當被 超過的平均等待時間。作為業務水平協議的一部分, 數據中心 30 同意將一筆錢 ( 罰金 ) 提 供給提交了針對給定作業類型的請求包、 使該請求包被數據中心接受、 并隨后發現平均等 待時間超過了作業類型表的第四列中記錄的水平的客戶。 該罰金的量存儲在作業類型表的 第三列中。 客戶針對所執行的各種作業類型的各作業可支付的費用被記錄在作業類型表的 第二列中。
     在任意給定時間有效的各種作業類型 ( 即, 被準許但卻尚未完成的 ) 包的數量的 計數也被記錄在作業類型表中 ( 第五列 )。將在下面更詳細地說明該計數的目的。
     圖 3 示出由企業網絡 10 中的代理計算機 16 向數據中心 30 中的控制器計算機 32 發送的作業包請求消息。 該作業包請求指定了將構成該作業包的作業的類型 ( 第一行 )、 要 包括在該作業包中的那種類型的作業的例程的數量 ( 第三行 )、 以及企業網絡估計作業包 內的作業提交將到達數據中心 30 的平均速度。 圖 4 示出由代理計算機 16 針對經準許的作業包中的各個作業所發送的作業提交 消息的格式。該作業提交消息包括 : 由控制器計算機 32 分配給作業包的作業包標識符 ( 第 一行 ) ; 由代理計算機 16 分配給作業的作業標識符 ( 第二行 ) ; 作業類型的標識 ( 第三行 ) ; 以及為了執行作業, 在數據中心 30 上運行的相關應用程序所需要的參數 ( 第四行 )。作為 示例, 在信用檢查應用程序中, 作業參數可以是個人全名和地址。
     圖 5 示出由控制器計算機 32 針對被控制器計算機 32 準許的各作業包所維護的作 業包表。各作業包表包括唯一的作業包標識符 ( 第一行 )、 作業包中的作業的類型 ( 第二 行 )、 針對該作業包的作業提交速度 ( 第三行 - 其將與作業包請求 ( 圖 3) 的第二行中的數字 相匹配 )、 作業包中作業的數量 ( 第四行 - 其將與作業包請求的第三行中的數字相匹配 )、 針對該作業包測得的平均等待時間 ( 第五行 )、 針對該作業包測得的平均業務時間 ( 第六 行 )、 針對該作業包測得的等待時間的變化 ( 第七行 )、 針對該作業包測得的業務時間的變 化 ( 第八行 )、 作業包狀態 ( 即, 當前是否正在處理作業包或者作業包內的所有作業現在是 否已經得到處理 )( 第九行 ) 以及實際收入 ( 第十行 ), 實際收入是企業為執行該作業包對 數據中心 30 的欠款。
     圖 6 示出控制器計算機針對各個經準許的作業包所維護的作業包性能日志。該作 業包性能日志表中的各記錄的條目包括作業 ID( 從作業提交消息的第二行復制的 )、 作業 到達時間 ( 到達控制器計算機 32)、 作業開始時間和作業完成時間 ( 由服務器 36 向控制器 計算機 32 報告各作業開始時間和作業完成時間 )、 作業等待時間 ( 從作業到達時間到作業 開始時間的延遲 ) 以及作業業務時間 ( 作業完成時間與作業開始時間之間的差異 )。
     圖 7 示出圖 1 的計算機網絡, 但是示出了在該計算機網絡上運行的軟件的功能組 件。由控制器計算機 32 接收作業包請求 ( 圖 3) 和作業提交 ( 圖 4), 該控制器計算機 32 將
     請求設置在輸入隊列 70 中, 通過消息處理組件 71 使請求從該輸入隊列 70 出列, 并且對該 請求進行處理。將進入的消息傳送到分配器 72, 該分配器 72 將作業包請求 ( 圖 2) 轉發到 對準許控制模塊 76 進行饋送的第二隊列 74。服務器 36 被組織為多個池 100, 各個池專用 于運行特定類型的作業 ( 在圖 7 所示的示例中, 池 100 專用于運行類型 1 的作業, 而池 102 專用于運行類型 m 的作業 )。分配器 72 將進入的作業提交 ( 圖 4) 轉發到專用于處理在作 業包請求 ( 圖 3) 中發現的類型的作業提交的作業處理器 80、 90。各作業處理器包括按照 預定順序向第三隊列 86、 96 呈現進入的作業提交的調度器 84、 94。在本示例中, 調度器簡 單地按照與作業提交從分配器 72 到達的相同的順序轉發這些作業提交 ( 圖 4)。分配器 72 還負責向代理計算機 16 轉發回運行作業的結果。
     現在將參照圖 8 描述由準許控制模塊 76 和資源分配模塊 78 在使作業包請求 ( 圖 3) 從隊列 74 出列時所執行的處理。
     在從隊列 74 取得 ( 步驟 110) 作業包請求消息 ( 圖 3) 時, 資源分配器 78 計算 ( 步 驟 112) 在作業包請求被數據中心 30 接受的情況下怎樣將服務器 36 分配至專用于不同的 作業類型的池 100、 102。
     與各作業類型的所提供的工作量 ( 利用代表作業類型的經濟重要性的因子進行 了加權 ) 成比例地計算假定的服務器分配。 可以通過將作業包中的作業的到達速度 ( 圖 5, 第三行 ) 乘以針對該作業包測得的平均業務時間 ( 圖 5, 第六行 ) 來計算各個正在進行中的 作業包的所提供的工作量。接著, 通過將一作業類型的各個正在進行中的作業包的所提供 的作業量相加可以得到針對該作業類型的所提供的工作量。例如, 可以通過將違反該作業 類型的業務水平的罰金 ( 圖 2, 第三列 ) 除以該作業類型的每作業的費用 ( 圖 2, 第二列 ) 來計算權重因子。 接著, 假定的服務器分配用于計算各種類型的作業的可能的平均等待時間 (βi)。 本領域技術人員將能夠提供用于根據從作業包匯總表 ( 圖 5) 和作業包性能日志表 ( 圖 6) 中得到的信息來計算可能的平均等待時間的估計值的方法。 計算完各種作業類型的可能的 平均等待時間的估計值之后, 可以利用下式來計算平均等待時間超過針對各種作業類型所 提供的業務水平的概率。
     P(Wi > x) = 1-Φ(x-βi/sqrt(βi/ki))
     其中, ki 是各作業包中的作業的數量, 并且 Φ(.) 是標準正態分布的累積分布函數 ( 均值為 0, 方差為 1)。
     利用給定作業類型的等待時間超過針對該作業類型所提供的等待時間的所計算 概率, 通過從針對作業包中的作業進行收費所得的收入中抵消數據中心 30 必須支付針對 違反與系統中的各種作業類型相關的業務水平的罰金的概率的增大來計算 ( 步驟 114) 數 據中心的收入的預期變化。
     接著執行測試 ( 步驟 116), 以判斷收入的變化是否為正。 如果收入的變化不為正, 則拒絕該作業包請求, 接著準許控制經由分配器 72 和隊列 73 向代理計算機 16 發送作業包 未準許消息。接著, 代理計算機 16 可以向代理計算機 16 的稍后可能重試該相同請求或者 將該請求傳送到其它數據中心的管理員報告該情況。
     如果測試 ( 步驟 116) 發現收入變化為正, 則從 CD-ROM 或 DVD-ROM 58( 圖 1) 安裝 的數據中心管理軟件被用于如之前利用上述經濟加權的所提供的工作量分配所計算 ( 步
     驟 112) 的那樣來在各種作業類型之間重新分配 ( 步驟 120) 服務器。在本示例中, 使服務 器 36 上已經在運行的作業在進行重新分配之前完成。
     接著由控制器計算機 32 產生 ( 步驟 122) 唯一的作業包 ID。接著, 將作業包 ID 添加 ( 步驟 124) 到所接受的作業包 ID 列表。最后, 在代理計算機 16 上設置 ( 步驟 S126) HTTP cookie, 該 cookie 包括作業包 ID。
     圖 9 中示出計算機網絡在產生和處理作業提交消息 ( 圖 4) 時的操作。代理計算 機產生 ( 步驟 130) 作業提交消息, 并且在 SOAP 消息的報頭中包含代理計算機在作業所屬 的作業包被接受時從控制器計算機 32 接收到的 HTTP cookie。 與該實施方式中的計算機之 間的其它通信類似, 根據 SOAP 協議對該消息進行格式化, 并將該消息包含在 HTTP 消息中。 在本示例中, 作業參數可以設置在 SOAP 消息的主體中, 因而可以被加密, 使得僅服務器 36 能夠讀取 SOAP 主體的內容。本領域技術人員將認識到 cookie 提供了 HTTP 會話的狀態, 并 且還作為作業包標識符。接著, 代理計算機 16 向控制器計算機 32 發送 ( 步驟 131) 作業提 交消息。當接收到該作業提交消息時, 分配器檢查 ( 步驟 132) 包含在該作業提交消息中的 作業包 ID 是否被包含在所接受的作業包列表中。如果該作業包 ID 不被包含在該作業包列 表中, 則處理結束 ( 步驟 134)。
     另一方面, 如果在所接受的作業包列表中發現該作業包 ID, 則在作業包性能日志 表 ( 圖 6) 中記錄 ( 步驟 136) 作業提交時間。接著, 將作業提交消息傳送到相關的作業處 理器 80、 90, 在該作業處理器 80、 90 處, 將該作業提交消息設置在作業隊列 86、 96 中, 并且當 該作業提交消息到達作業隊列 86、 96 的前面時, 將該作業提交消息轉發 ( 步驟 138) 給相關 的服務器池 100、 102。 本領域技術人員將認識到由控制器計算機 32 根據作業包匯總表 ( 圖 5) 和作業包性能日志表 ( 圖 6) 中記錄的測量值來針對各種作業類型估計該隊列延遲。在 向合適的池 100、 102 中的服務器提交作業之后, 處理結束 ( 步驟 140)。
     圖 10 示出在控制器計算機 32 從服務器 36 接收 ( 步驟 150) 作業完成消息時所進 行的處理。
     首先, 控制器計算機 32 在作業包性能日志表 ( 圖 6) 中記錄作業完成時間。此后, 將作業結果傳送到分配器 72, 該分配器 72 經由隊列 73 將該作業結果轉發 ( 步驟 154) 到代 理計算機 16。
     接著, 通過判斷該作業包的作業計數現在是否等于原始的作業包請求消息 ( 圖 3) 中指定的作業的數量來執行作業包完成測試 ( 步驟 156)。 如果來自作業包的更多作業剩余 (remain), 則處理結束 ( 步驟 158)。
     另一方面, 如果現在完成了作業包, 則計算作業包中的作業的平均等待時間, 并且 在作業包匯總表 ( 圖 5) 中記錄 ( 步驟 160) 該作業包中的作業的平均等待時間。此后, 通 過將該作業包中的作業的數量乘以每作業的費用 ( 圖 2, 第二列 ) 并且減去當該作業包的平 均等待時間 ( 步驟 160 中得到的 ) 超過所提供的業務水平 ( 圖 2, 第四列 ) 時的罰金來計算 ( 步驟 162) 數據中心所得的收入。
     接著, 將該作業包標記為已完成, 并且服務器分配模塊被呼叫以在各種作業類型 之間重新分配 ( 步驟 164) 服務器。
     上述實施方式需要對控制器計算機 32 所維護的等待時間、 業務時間以及這些值 的變化進行詳細測量。在第二實施方式中, 不需要這樣的測量。盡管這樣對系統性能具有負面影響, 但是影響并不大, 所以, 通過第二實施方式提供的相對較低的計算需求在一些情 況下是令人滿意的。
     在第二實施方式中, 準許控制是不太動態的, 因為并非每次作業包請求到達時就 重新計算準許控制判定中使用的閾值。 相反, 僅當給定作業類型的作業包到達的速度 (δi) 或者給定作業類型的業務時間 (bi) 有明顯變化時, 才需要重新計算準許控制判定中使用的 閾值。
     第二實施方式涉及服務器分配, 該服務器分配按照與各種作業類型的預期提供工 作量 (Φi) 成比例的方式在各種作業種類之間分配服務器。控制器計算機 32 通過將作業 類型 i 的作業包到達速度 (δi) 乘以作業類型 i 的平均作業到達速度 (γi) 和作業類型 i 的作業包中的作業數量 (ki) 來計算 ( 步驟 170) 各種作業類型的預期提供工作量 ( 在第二 實施方式中, 假設給定類型的所有作業包具有相同的平均作業到達速度, 并且給定類型的 所有作業包中的作業數量相同 )。 接著, 控制器計算機 32 呼叫數據中心管理軟件中的模塊, 以根據前一步驟 (170) 中計算的服務器分配來為各種作業類型重新分配 ( 步驟 171) 服務 器。
     本領域技術人員熟悉愛爾蘭 B(Erlang-B) 公式, 該愛爾蘭 B 公式提供了呼叫被配 置有給定數量的干線并處理給定業務量強度的電話網絡拒絕的概率。 本發明人已經認識到 該愛爾蘭 B 公式可以用于得到當多個服務器被分配給給定作業種類的作業時該給定作業 類型的作業包請求被拒絕的概率。對于各種作業類型, 使步驟 170 中計算得到的服務器分 配 Mi 等同于干線數量, 并且使值 σi = δiki/γi 等同于業務量強度。接著, 計算在給出服 務器分配 Mi 的情況下, 各種可能的作業包數量有效的可能性。 接著, 計算在向作業類型 i 分 配 Mi 個服務器時對于作業類型 i 所能獲得的預期收入。接著, 得到 ( 步驟 172) 使數據中 心的收入最大化的閾值 Mi 的設置。
     當接收到 ( 步驟 174) 作業包請求時, 控制器計算機 32 則利用各種作業類型的有 效作業包計數 ( 圖 2, 第五列 ) 來判斷 ( 步驟 176) 準許新請求的作業包是否將導致超過該 作業類型的作業包的閾值數量 (Mi)( 步驟 170 中計算的 )。如果該閾值將被超過, 則控制器 計算機 32 向代理計算機 16 發送 ( 步驟 178) 作業包拒絕消息。然而, 如果準許該作業包不 會導致閾值被超過, 則如與第一實施方式相關地描述的那樣 ( 圖 8), 控制器計算機產生 ( 步 驟 182) 作業包 ID, 在所接受的作業包列表中存儲 ( 步驟 184) 作業包 ID, 并且發送 ( 步驟 186) 作業包接受消息。
     將看到與先前通過接受被判斷為不可能導致違反與當前所執行的工作請求相關 的業務水平協議的新工作請求所實現的情況相比, 上述實施方式如何使數據中心能夠具有 更高的利用率。更廣泛地說, 如果作業包準許控制器 ( 在本示例中為控制器計算機 32) 估 計執行所請求的作業包將不會導致服務器在執行所述作業時的性能下降至可接受的水平 以下, 則該作業包準許控制器準許該新的作業包請求。 更廣泛地說, 如果作業包準許控制器 估計執行所請求的作業包將不會使服務器過載, 則該作業包準許控制器準許新的作業包請 求。而且, 與關于所接收到的每個工作請求執行準許控制相比, 通過將工作請求捆綁在一 起, 降低了與在數據處理系統中使用準許控制相關聯的計算量。
     在另選的實施方式中, 可以對上述實施方式做出以下變型 :
     i) 不是使服務器計算機產生唯一的作業包標識符, 而是客戶端計算機能夠產生唯一的作業包標識符并且將該作業包標識符包含在業務包請求中。例如, 作業包標識符可以 是與客戶端從一個作業包請求至下一個作業包請求遞增的作業包請求號碼 ( 該號碼可以 在預定數量的作業包請求之后循環回到 1) 相連結的客戶端計算機的 MAC 地址。另選地, 可 以迫使客戶端計算機 ( 通過代碼和 / 或通過商業協議 ) 遵循作業包中包含所有獨立業務請 求的連續流的作業包請求。接著, 網絡地址 ( 例如, 作業包請求消息中包含的 IP 地址 ) 將 用于識別屬于該特定作業包的隨后的業務請求。
     ii) 盡管上述實施方式中各個業務請求被檢查, 以查明其是否屬于經準許的作業 包, 但是在其它實施方式中, 可以迫使 ( 通過代碼和 / 或通過商業協議 ) 客戶端計算機不發 送業務請求, 除非它們之前已經接收到該業務請求所屬的業務包之前已被準許的指示。
     iii) 在上述實施方式中, 該業務涉及服務器計算機從多個源檢索數據, 對該數據 執行一些處理, 以及向客戶端發送該處理的結果。 但是, 該業務可能例如涉及執行一些處理 并且發送響應 ( 例如, 地址到郵編轉換業務 ), 或者該業務可以簡單地涉及數據的存儲 ( 例 如, 數字文件存儲設備 )。
     iv) 在上述實施方式中, 由控制器計算機 32 針對各種類型的作業來存儲一個業務 水平協議。 在其它實施方式中, 業務水平協議可以根據相同類型作業的不同作業包而變化。 v) 盡管上述實施方式中各作業包作為作業包請求的一部分宣告了各作業包的作 業到達速度和作業數量, 但是也可以針對給定類型的作業固定那些數字。
     vi) 盡管上述實施方式中, 數據中心的企業客戶具有大量個人計算機, 所有的個人 計算機經由代理計算機 16 與數據中心進行通信, 但是應當理解, 這些個人計算機可能僅僅 是屬于企業的客戶、 經由互聯網與數據中心 30 進行通信以獲得企業的服務的計算機。這將 例如是由數據中心提供的業務是在線零售網站的情況。
     vii) 盡管上述示例描述了數據中心提供數據處理服務, 但是也可以使用其它形式 的業務提供系統。例如, 一組不同用戶的個人計算機可以向其它個人計算機提供它們的數 據處理能力。
     viii) 上述實施方式不支持提供給定作業類型的不同等級的業務。可以通過修改 作業包請求消息 ( 圖 3) 以包括業務等級指示 ( 例如, “金” 、 “銀” 或 “銅” ) 來在其它實施方 式中實現提供給定作業類型的不同等級的業務。于是, 作業類型表可以包括針對不同業務 等級的不同的平均等待時間值以及可能的不同的費用和罰金。但是, 這并不必須針對不同 等級的業務使用不同的作業處理器。相反, 各作業處理器中的調度器 84、 94 可以將進入的 作業請求分成基于等級的隊列, 并且用加權輪詢法 (weighted round robin method) 來處 理隊列 ( 例如, 重復地從金隊列取得三個作業請求, 接著從銀隊列取得兩個作業請求, 然后 從銅隊列取得一個作業請求 )。
     ix) 在上述實施方式中, 服務器計算機通過發送作業包請求消息來向客戶端計算 機指示作業包被接受。但是, 也可以通過不發送指示執行作業包的請求未被接受的消息來 指示作業包被接受。
     x) 盡管上述實施方式考慮作業包中的作業的平均到達速度, 但是也可以使用指 示作業的平均到達速度的其它度量。例如, 可以使用作業包中的作業之間的平均到達間隔 (inter-arrival) 時間。
     xi) 盡管上述實施方式中, 在不同的計算機上對執行所請求的作業的 ( 多個 ) 計算
     機執行作業包準許控制的功能, 但是, 在其它實施方式中, 也可以通過在被設置為執行所請 求的作業的 ( 多個 ) 計算機中的一個計算機上運行的處理來執行所述作業包準許控制。
     綜上所述, 公開了一種分布式數據處理系統。該分布式數據處理系統 ( 尤其是數 據中心 ) 存在的問題是對于那些數據中心的低利用水平。這部分地由于數據中心提供商關 心不能因為數據中心提供給客戶的業務的質量下降到業務水平協議中協定的業務水平以 下而被那些客戶索取罰金。公開了多個實施方式, 通過對執行所請求的作業包對已經在數 據中心中運行的作業的可能影響進行評估來使數據中心控制該數據中心所承擔的工作量, 這些實施方式解決了上述問題。接著, 通過在可支付給客戶的罰金的預期增加與作為運行 所請求的作業包的回報的預期收入之間進行權衡來做出是否提供所請求的作業包的決定。

關 鍵 詞:
分布式 數據處理系統
  專利查詢網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
關于本文
本文標題:分布式數據處理系統.pdf
鏈接地址:http://www.rgyfuv.icu/p-6420433.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服客服 - 聯系我們

[email protected] 2017-2018 zhuanlichaxun.net網站版權所有
經營許可證編號:粵ICP備17046363號-1 
 


收起
展開
山东11选5中奖结果走势图