• 沒有找到結果。

第二章 相關研究

2.6 聯邦雲

由於單一雲系統能提供的運算能力已漸漸無法滿足使用者的需求,因 此衍生出一個新的觀念稱為聯邦雲,其概念架構如圖 2-11 所示。由於聯邦 雲的需求以及研究日益增加,故本篇論文也使用聯邦雲的架構來進行實驗,

Sheheryar Malik et al.[22]的文章將有相依性高的 Task 分群進行平行處理,

將可大幅減少跨雲的機器彼此之間的網路傳輸量,本篇論文參考這樣的概 念來設計排程機制,以不造成機器負荷過重的前提之下,將工作集中分配 給運算能力較強且能執行較多工作的機器,降低跨雲機器彼此之間的網路 傳 輸 量 , 藉 以 降 低 執 行 時 間 , 以 達 到 更 好 的 效 能 表 現 。 Jose Luis Lucas-Simarro et al.[9]的文章提出了一個新穎的 cloud broker architecture 適 用於多雲環境,文 章內解釋了許多不 同的排程機制 ,並 且評估 High Performance Computing(HPC)和雲端環境中 Web 服務的效能表現,最後透 過實驗證明了他們所提出來的 cloud broker architecture 有更好的效能。

25

圖 2-11 聯邦雲

Kate Keahey et al.[10]的研究雖然不是直接針對聯邦雲,但是文章中提 及的 outsourcing 的概念就能套用到聯邦雲解決資源不足的方法上,當資源 不足時,Provider 將增加新的 outsourcing 計算資源到雲端環境中。Rafael Moreno-Vozmediano et al.[17]的研究提出了雲端環境作業系統的概念以及 框架,雲端環境中的作業系統負責控管實體和虛擬資源,且針對其中每個 元件加以解釋,其中與聯邦雲相關聯的概念是 Federation Manager,其功能 是 使 用 Cloud Drivers 和 其 他 的 雲 端 運 算 系 統 連 結 起 來 , 藉 以 達 成 outsourcing 的目標且串接成為聯邦雲,文章中稱此概念為雲端運算聯邦 化。

26

27

供服務的種類也日益增加,若未來雲端運算服務供應商想要彼此聯合,勢 必要經過一番整合。每個雲端運算服務供應商都有各自不同的所在地和異 質性的硬體設備,如果要彼此整合起來,勢必是需要依靠著中介軟體來相 互溝通,用於整合使用的中介軟體在設計方面就要考量跨雲環境的控制以 及運算資源的配置。

除此之外,要整合雲端運算服務提供商將需要考量服務提供商彼此之 間的溝通以及運算資源的架構,整合雲端運算服務提供商的目的在於聯合 起來的雲端環境能有更好的互通性,在雲端運算的概念中,雲端運算服務 供應商彼此之間工作或服務的轉移難易度,稱之為互通性。異質的雲端環 境要能有更好的互通性,其中一個方法就是使用開放標準,讓不同的雲端 服務供應商彼此之間的溝通能更加順暢,當不同的雲端服務供應商的互通 性越來越好,那麼能提供給客戶的服務能力也就越來越強大,故造就了聯 邦雲的興起。當聯邦雲建立之後,若單一雲端運算服務供應商無法滿足客 戶的需求時,即可透過良好的互通性向其他的雲端服務供應商租借資源以 滿足客戶的需求。

28

3.1 Profiling System

Profiling System 是一種用於分析應用程式之行為與工作特性之工具,

為了瞭解各種不同的應用程式在使用 Spark 執行過程中的結構,本篇論文 在 Spark 中自行開發 Profiling System 來記錄下各種不同應用程式內部的執 行結構並且繪製出 RDD 的 DAG 圖,透過 Profiling System 所得到的參數 如 RDD 之間的相依性、Task 之間的 I/O 傳輸量或記憶體使用量等等,搭 配如關鍵路徑演算法、bin-packing 演算法、0/1 Knapsack 演算法等等排程 演算法來排程出較佳的 Task 執行順序,再創建出最適合該應用程式的 virtual cluster,最後使用此 virtual cluster 來執行由 IMS 演算法排程出來擁 有較好運算能力的機器序列,不但能縮短執行時間,還能提升 throughput。

在 2013 年已有能在 spark 平台上繪製出 RDD DAG 圖的程式,名為 Spark Replay Debugger[4],但是限定安裝在 Spark 0.8.0 之前的版本,若安 裝 0.8.0 版本之後的 spark 將無法順利執行,故本篇論文為了要在 spark1.0.2 版本上獲得應用程式內部結構,參考 Spark Replay Debugger 的程式架構後,

自行在 Spark1.0.2 版本上面實作完成,透過收集 Spark 內部的參數後,傳

相關文件