楊業令,鐘 璐,楊國才
(1.重慶工程學院計算機與物聯網學院,重慶 400056;2.西南大學計算機與信息科學學院,重慶 400715)
隨著信息技術的高速發展,數據管理已經進入了云計算的時代,云計算逐漸成為了IT行業的新發展趨勢,已經受到了學術與工業界的廣泛關注。作為一種新型技術,能夠引導大量新型互聯網信息技術的發展,在云計算環境下,用戶只需要把自身的數據存儲到云端中,不再需要將自身數據儲存在自己的計算機里。云服務提供者憑借虛擬化技術、分布式計算與調度模型等方法為用戶供給軟件接口,使用戶能夠不受時間與地點限制,隨意使用任何網絡終端來訪問自己的數據,而用戶的損耗只是需要對服務與資源支付費用。
云計算是一種以數據中心為基礎服務的設施,向用戶供給所需求的不同種類的應用服務模型。隨著企業與用戶需求的高速上升以及云服務上的高速發展,傳統的集中式數據中心或原來分散獨立的數據中心已經不能支撐日新月異的業務應用。同時在傳統的觀念內,為了使數據中心中承載的業務應用永不宕機,提升IT資源的使用率,使資源能夠按需獲取,基于多數據中心的分布式云架構逐漸興起,這種架構也屬于云計算環境中的一種。在云計算環境下,多數據中心的分布式云架構內儲存著大量的數據,其中較為常見的數據即雙通道數據,而在調度這種數據的時候,由于數據自身存在的特性,導致調度算法容易受到奇異性的影響,致使這種數據無法被調度或調度存在誤差的情況。
針對上述問題,提出一種云計算環境下的雙通道數據動態調度模型,通過分析雙通道數據動態調度問題,得到雙通道數據的特性,組建數據空間組織并放置空間索引,獲取云計算系統的雙通道數據,把數據調度任務分化成若多個子任務,同時計算出調度任務量,隨后對任務量的極大值進行計算,以此得到代價函數與估計函數,構建LOD(Level of Detail,層次細節)模型,調整云計算系統的更新速度使其能夠與雙通道數據達到平衡,最后,根據上述流程組建雙通道數據動態調度模型,依靠該模型對數據進行調度。
2.1.1 問題描述
云計算即以數據中心為基礎的服務設施,向用戶供給其需求的應用。通常來說,云計算系統即憑借多種分布式的數據中心形成的,而每個數據中心會依靠一百多種機架組成,所有機架一般會通過1~20個物理服務器構成。用戶對云計算系統的資源申請[1]可能隨時出現,云計算環境下雙通道數據動態調度算法的任務就是調度合適的數據種類,以降低虛擬機之間的通信費用,提升用戶應用的最大化資源利用率和性能。
較為常見的雙通道數據中心內部結構:最底層機架中安放物理機,所有機架中都會具有一臺頂部交換機,最底層就是與外界進行交互的路由器,最底層和最頂層之間通常都會具有多層交換裝置。期望中的安放方式,就是把用戶請求的虛擬機都放置在同一個物理機或機架內,但是同一種機架或物理機內并沒有充足的資源來滿足用戶的要求,并且由于用戶隨時都會產生請求,或因為任務完成而退出云計算系統,就會導致云計算系統出現多個資源碎片,因此用戶請求的虛擬機可能分布在多個機架或物理機內,甚至也可能會分布在多種數據中心內。
另外,因為云計算系統自身存在防災與容錯的需求,或是用戶本身提出將虛擬機安放在多種數據中心或機架與物理機內的需求[2],都可能會使用戶的虛擬機不能安放在同一坐標處。比如,用戶能夠在指定的數據中心里放置一定數量的虛擬機,以此來達到容錯的目的,或是云計算系統也需要對數據中心內的虛擬機最少放置量進行限制,以此來縮減數據中心的通信流量。相同的,在存在要求的狀態下,能夠對所有數據中心與機架放置虛擬機的總量進行限制。
2.1.2 問題建模

設定R(t)表示第t個用戶的虛擬機[4]之間雙通道數據距離的最大值
(1)
那么以最小化用戶的虛擬機內雙通道數據直徑之和,作為最優化目標
(2)
該最小化雙通道數據直徑之和的目標適用于單數據中心與多數據中心的狀況。
數據空間組織即對雙通道的空間數據進行合理的規劃,同時組建空間索引,以提升雙通道數據的檢索速度,云計算環境下雙通道數據對象數量巨大,架構復雜,所以在進行可視化設計中,需要對其進行剪裁,也就是需要在所有數據內選取那些符合條件的數據,數據的選取自然不能離開空間索引[5]的構建。空間索引即憑借空間對象的坐標與形狀,遵照一定順序進行排列的一種數據架構。其中具有空間對象的基礎信息,例如對象表示、最小外包矩形等。針對空間索引,主要存在網格索引、四叉樹等。
云計算環境下的雙通道空間數據的組織,主要是使用網格劃分的形式,但雙通道數據因為其自身存在不規則性,使用網格劃分的形式,就必然會在網格的邊緣處生成大量的分割。但由于雙通道數據分布的偶然性[6],使得各層加點容易出現重疊,致使實際運行數據查詢時,會出現多種分支查詢,極大程度的降低了查詢的效率,所以也不太適合隨機分布的雙通道數據。
四叉樹即基于空間劃分組織索引架構的一種索引機制。在內存里的層次樹狀架構內,其查詢速度較快。本文方法需要在云計算環境內動態調度雙通道數據模型,而從樹架構的復雜度與查詢速度等方面考慮,本文使用四叉樹索引架構對雙通道數據進行查詢與抽取。
組建四叉樹索引的基礎理念即:把數據儲存到完全能夠包含它的最小矩形節點內,以此,每個組織就能夠只在數內儲存1次,免除了儲存空間的浪費,四叉樹索引構建流程如下所示:
1)運算所有數據鏈表內的最小外包矩形,同時將其當做根節點的最小外包矩形。
2)遍歷數據鏈表內所有的數據,把根節點當做目前節點,檢測最小外包矩形與目前節點的子節點[7]拓撲關聯。假如最小外包矩形和子節點的邊界相交,就把最小外包矩形引入目前節點內,假如最小外包矩形在某種子節點內部,那么把該子節點當做目前節點,隨后迭代計算2),直至子節點的最小外包矩形不會超過100。
使用四叉樹理念對云計算環境下的雙通道數據構建空間索引,能夠高效的視域體裁剪,減少后期調度的計算量,縮短數據抽取與數據緩存的時間。

憑借式(3)可以運算雙通道數據的總調度任務量為。
(3)

(4)
式中:S代表調度任務流程內的任務量極大值,憑借式(5)可以運算其代價函數
(5)
把式(5)引入式(3)之后,可以得到以下結果,具體公式為
(6)

(7)
把是(7)引入調度任務量運算公式內,可以獲得以下結果
(8)
憑借式(9),可以完成調度流程內子任務量的運算
(9)
根絕上述的計算流程,可以對云計算環境內雙通道數據調度內的子任務量進行運算,進而為調度模型的構建供給精確的數據依據。
因為云計算系統更新的速度高于可預見數據的調度速度,嚴重干擾到調度的實時性與連貫性[10],致使調度的停頓與延遲現象發生,所以保持數據調度與云計算系統之間的動態平衡對于數據調度的非常關鍵的。
在開始調度機制的同時,完全調入所有可預見的雙通道數據塊需要的時間是
TG=n1t1
(10)
式中:n1代表需要調度的雙通道數據塊數,t1代表調度一塊雙通道數據所消耗的時間。
在確保雙通道數據動態平衡的前提下,數據調度的速率是1000/TG。調度一塊雙通道數據所需要消耗的時間能夠描述成
TR=N1T1
(11)
式中:N1代表需要調度的雙通道數據總量,T1代表調度一塊數據所消耗的時間。
對于數據調度來說,理想的調度速度是1000/TR。在云計算系統更新速度達到24幀/s以上時,雙通道數據的實時調度才會較為通暢,所以,TR與TG需要同時小于1000/24m,才可以確保流暢的調度雙通道數據。而提升調度速度的方式存在兩種即:
1)在硬件方面需要充分使用CPU與GPU資源,免除在數據庫[11]內進行海量的計算,
2)在軟件方面,組建LOD模型。
LOD模型即指對同一環境內的數據使用存在不同細節層次的一系列模型。構建LOD模型可以有效縮減云計算系統數據庫內多邊形的總量,進而提升調度的速度。
當前云計算系統的處理能夠能夠達到每秒處理100M的數據,其足以處理總量較大的雙通道數據。憑借云計算系統構建時,會分塊的特性,使用LOD模型,即憑借雙通道數據塊距離視點的遠近分化層次細節,每級以2的冪進行精度遞減。這樣不僅運算簡單,還能夠充分利用云計算系統的組織方式,使數據調度的實現更加便捷。
憑借上述對雙通道數據的處理,擬定動態調度模型,其流程如圖1所示。

圖1 雙通道數據動態調度流程
對于所有云計算環境下雙通道數據動態調度單元,在高效時能夠分成多址協議下數據傳輸的二維平面調度離散采樣集合
P(ni)={pk|prkj=1,k=1,2,…,m}
(12)
節點鏈路[12]矩陣SN×L和節點時隙的雙通道數據包存在關聯,通過矩陣C描述前導時隙的雙通道數據調度空間矢量矩陣,C表示N×N的二維矩陣,在云計算網格內兩條鄰節點的最大跳數是
(13)
針對距離是d,長度是lb的網格節點,雙通道數據傳輸的非奇異矩陣滿足P∈Rn×n,R∈Rm×m與H∈Rm×n,云計算網格節點之間的多維性能能夠擬定成
E=[EG,ET,EW,EL]
(14)
使用時分多址協議進行時隙均勻分配,在時隙均勻信道內,信道利用率的描述式為
(15)
針對所有云計算環境下雙通道數據的調度單元,信道的利用率能夠描述成
(16)
在實現時隙的分配之后,在時間段T內,進行數據傳輸的負載均勻傳輸約束關系即

(17)

為了證明本文方法的有效性,需要對所提模型進行驗證,驗證環境為:CPU設備4G內存,100G自由空間硬盤,專用網卡2M,操作系統方面,憑借實現的需求,使用RedHatAS4。
實驗流程,通過沒有使用調度模型與使用本文設計模型的情況下,云計算系統的雙通道數據平均吞吐率進行實驗,其結果進行比對,其結果如圖2所示。

圖2 使用前后平均吞吐率中的對比
通過圖2能夠看出,在進行雙通道數據調度的流程內,網絡都會隨著數據量的提升,平均吞吐率也會出現上升,但是,使用所提調度模型下網絡吞吐效率要遠遠超過,同時其可以有效的確保動態調度的調度時間與荷載負載率,其性能遠超原始網絡。
為了進一步證明所提模型的調度精確性,通過本文模型對一種,已知的雙通道調度數據進行對比,其結果如圖3所示。

圖3 雙通道數據調度精確度
通過圖3能夠看出,本文所設計的模型調度的結果與已知調度結果相差不大,這是因為,在本文所設計的雙通道數據動態調度模型內會增添,LOD模型,該模型能夠將同一個環境內的數據,根據不同細節層次的模塊進行統一平衡,使的調度模型,不會因為云計算系統更新速度過快,而導致數據調度出現停頓與延遲的情況。極大程度的提高的雙通道數據動態調度模型的精度精確性。
為了提升云計算系統的進程管理效率與負載均衡性,提出一種云計算環境下的雙通道數據動態調度模型,通過數據空間組織與LOD模型,構建模型,依靠該模型實現對數據的動態調度。雖然所提模型在數據動態調度中,取得了較為理想的結果,但由于所設計的模型主要針對雙通道數據種類,而數據的類型非常復雜,其中數據的種類也多種多樣,本文所設計的模型,并沒有在其它種類的數據中應用過,因此下一步的研究即:將所提模型應用在其它種類的數據內,并更加數據類型實時調整與改進模型的參數,使其能夠與多種類型的數據匹配。