本發明專利技術涉及使用盤驅動器模擬模型來對盤I/O扼流。提供用于對從虛擬機(VM)到硬盤驅動器(HDD)的請求進行扼流的計算機化的方法、系統和計算機存儲介質。當從VM接收到對盤I/O的請求時,訪問盤驅動器模型,所述盤驅動器模型模擬所述HDD的性能特性。在訪問期間,收集所述盤驅動器模型對HDD參數的估計和所述盤驅動器模型對所述HDD的盤頭的當前狀態的估計。根據估計的HDD參數和估計的盤頭的當前狀態來計算執行所述請求的預期執行時間。而且,當允許所述請求傳遞到所述HDD時就測量執行所述請求的實際執行時間。使用所述預期執行時間和所述實際執行時間的比較,對來自所述VM的請求的流量進行扼流。
【技術實現步驟摘要】
本專利技術涉及使用盤驅動器模擬模型來對盤i/o扼流。
技術介紹
大規模聯網系統是在用于為業務和操作功能運行應用和維護數據的多種設定中使用的常見平臺。例如,數據中心(例如物理云計算基礎設施)可以同時為多個客戶提供多種服務(例如web應用、電子郵件服務、搜索引擎服務等等)。這些大規模聯網系統通常包括遍及該數據中心分布的大量資源,其中每個資源都類似物理機或在物理節點或主機上運行的虛擬機(VM)。當數據中心托管多個承租人(例如客戶程序)時,這些資源被最優地從同一數據中心分配給不同的承租人。通常,多個VM將同時運行在計算網絡或數據中心內的同一物理節點上。共享共同物理節點的這些VM可被分配給不同的承租人(tenant)并可在不同時間需要不同資源量。例如,資源可包括與物理節點相關聯的物理盤(例如,硬盤驅動器),其中在某一時幀期間該物理盤具有有限量的可訪問性。當一個承租人需要增加對物理盤的使用來完成特定任務時,在該物理節點上運行的該承租人的VM可能潛在地通過發送向物理盤發送大量請求來向該物理盤施加壓力,從而阻止在該物理節點上運行的其他VM公平地共享其資源。目前,因為盤輸入/輸出(I/O)性能(例如,訪問一數據片段的時間)通常滯后于在該物理節點上運行的VM的CPU性能(例如,處理器速度)和網絡性能(例如,帶寬使用),所以存在用于計量從VM發送到物理盤的請求的基本方法。這些方法通過嘗試使用存儲速率(兆字節/秒)或者替代地使用活動速率(請求/秒)來描述盤I/O性能來計量請求。在使用兆字節/秒的情況下,這種方法考慮被讀取或寫入的數據的大小,但是不考慮數據在物理盤內是被如何安排的。另一方面,在使用請求/秒的情況下,這種方法考慮在給定時幀內盤頭(disk head)被要求在物理盤上移動的次數。即,使用請求/秒方法不考慮在移動盤頭之后被訪問的數據的大小。相應地,因為基于兆字節/秒的方法(僅與順序訪問有關)和基于請求/秒的方法(僅與隨機訪問有關)各關注盤I/o性能的不同的具體方面,所以這些方法無法同時考慮對物理盤的順序訪問和隨機訪問兩者。例如,基于兆字節/秒的方法關注順序訪問,從而呈現出被隨機訪問的洪泛壓垮并生成請求積壓的風險。另一方面,基于請求/秒的方法關注隨機訪問,從而呈現出遇到順序訪問串且不必要地限制到物理盤的吞吐量的風險。因此,無法考慮順序訪問以及隨機訪問,或者沒有意識到它們所產生的盤I/o性能之間的巨大差別,從而使得這些方法是低效的。
技術實現思路
提供本
技術實現思路
是為了以簡化的形式介紹將在以下具體實施方式中進一步描述的概念。本
技術實現思路
并非旨在標識所要求保護的所針對的的關鍵特征或必要特征,也不旨在用于幫助確定所要求保護的所針對的的范圍。本專利技術的實施例提供一種根據盤驅動器模型對從在虛擬機(VM)上運行的服務應用發出的請求進行扼流的機制,所述虛擬機駐留于數據中心的共同的物理機或節點上。如此處所使用的,短語“盤驅動器模型”一般是指硬盤驅動器(HDD)的軟性盤(soft-disk)表示,其中盤驅動器模型在計算用于執行服務-應用請求的預期執行時間時模擬HDD的性能特性。在一示例下實施例中,盤驅動器模型通過考慮HDD的至少以下兩個因素來模擬HDD的性能特性:與HDD上目前存在的一組實際參數相對應的一組參數;以及HDD的盤頭的當前狀態。如下面更完全地討論的,盤頭的當前狀態可被用來計算將該盤頭從滿足當前執行的請求的第一位置移動到滿足待決請求的第二位置所消耗的時間。先前的用于量化HDD的性能的方法限于考慮兆字節/秒(所傳輸的信息量)或請求/秒(操作速率)之一。本專利技術的實施例中所采用的方法依賴于盤驅動器模型,該盤驅動器模型基于各種因素(包括上面提到的兩個因素)來精確地量化盤I/o性能。此外,本專利技術的實施例中的方法應用盤驅動器模型來確定應當如何處理讀取或寫入的盤I/o請求(后文稱為“請求”),諸如基于HDD相對于該盤驅動器模型如何執行的事實來對請求進行限制或“扼流”。出于各種原因,在云計算環境中對盤I/O進行正確地扼流是有利的,諸如提供一種將VM盤性能與底層物理存儲硬件(例如HDD)解耦合的方式以及提供向個體VM動態分配性能閾值的能力。如下面更全面地討論的,基于將請求的預期執行時間(使用盤驅動模型)和請求的實際執行時間(測量該HDD執行請求所花的時間)進行比較,計算性能閾值。在一示例下實施例中,該盤驅動器模型被用于對盤I/O的請求進行扼流的目的。最初,對于被請求的每一盤I/o操作,計算預期執行時間(B卩,該盤驅動器模型處理該盤I/O操作所花的時間)。在操作中,該盤驅動器模型的預期執行時間可被用作扼流決策的基準欄(baseline bar)。一旦傳遞到HDD,測量實際執行時間(B卩,HDD執行盤I/O操作所花的時間)。如果HDD的實際執行時間少于該盤驅動器模型的預期執行時間,則該HDD的性能超額(outperform).當該HDD性能勝過盤驅動器模型到一定程度時,可以延遲的方式來執行后續盤I/O操作,或者換言之,可對后續請求進行扼流。作為示例,扼流可涉及當HDD的性能超額時在調度后續請求時增加時間。或者,扼流可涉及當HDD的性能不足時,立即處理后續請求。如此,使用此盤驅動器模型來確定何時對請求的消費選擇性地施加約束可改善對HDD能力的施壓或者改善對向VM駐留于其中的數據中心的承租人保證的服務的質量帶來的負面影響,并且同時最大化磁盤I/O操作的吞吐量。而且,在實踐中,當該HDD沒有被過度施壓時可使用扼流。在一個示例中,如果向不同類型的VM分配不同的性能等級,則扼流可幫助使得這些性能等級被保持。在另一示例中,如果不管特定客戶的VM被部署在何處(例如,在快物理機上或在慢物理機上),均向該VM保證一性能等級,則扼流可幫助確保所保證的性能等級被保持。附圖說明以下參考附圖詳細描述本專利技術的各實施例,附圖中:圖1是適用于實現本專利技術的各實施例的示例性計算環境的框圖;圖2是示出適于用于實現本專利技術的實施例的示例性云計算平臺的框圖,該平臺被配置成利用盤驅動器模型來計算傳入請求的預期執行時間;圖3是根據本專利技術的實施例的描繪與過濾器驅動程序通信的物理節點內的隊列的示例性分布式計算環境的框圖;圖4是示出根據本專利技術的實施例的使用過濾器驅動程序來對從一個或多個虛擬機(VM)到硬盤驅動器(HDD)的請求進行扼流的示例性方法的流程圖;以及圖5是示出根據本專利技術的實施例的用于限制流向該HDD的請求的速率的示例性方法的流程圖。具體實施例方式此處用細節來描述本專利技術的各實施例的所針對的以滿足法定要求。然而,該描述本身并非旨在限制本專利的范圍。相反,專利技術人設想所要求保護的所針對的還可結合其他當前或未來技術按照其他方式來具體化,以包括不同的步驟或類似于本文中所描述的步驟的步驟組合。本專利技術的實施例涉及用于向對要由硬盤驅動器(HDD)處理的盤I/O操作的請求的源(例如,在物理節點上實例化的虛擬機(VM))應用扼流的方法、計算機系統和計算機可讀介質。在操作中,所施加的扼流可根據請求的預期執行時間(使用盤驅動模型)和請求的實際執行時間(測量該HDD執行請求所花的時間)的比較來對來自VM的請求進行計量。在一示例性實施例中,計量涉及對在標識所預期執行時間超過實際執行時間之后發出的那些請求的遞送進行延遲。本文檔來自技高網...
【技術保護點】
一個或多個其上包含計算機可執行指令的計算機可讀介質,所述計算機可執行指令在被執行時執行一種用于使用過濾器驅動程序對從一個或多個虛擬機(VM)到硬盤驅動器的請求進行扼流的方法,所述方法包括:從在所述一個或多個VM上運行的服務應用接收(410)所針對的請求;訪問(412)盤驅動器模型,所述盤驅動器模型與所述硬盤驅動器基本類似地行動,其中所述訪問的過程包括:(a)讀取(414)所述盤驅動器模型對所述硬盤驅動器的性能特性的模擬;以及(b)讀取(416)所述盤驅動器模型對所述硬盤驅動器的盤頭的當前狀態的模擬;根據所述性能特性以及所述盤頭的所述當前狀態來計算(418)執行所述所針對的請求的預期執行時間;測量(420)在將所述所針對的請求傳送到所述硬盤驅動器之后用于執行所述所針對的請求的實際執行時間;以及使用所述預期執行時間和所述實際執行時間的比較來對從所述VM到所述硬盤驅動器的所述請求的流量進行扼流。
【技術特征摘要】
...
【專利技術屬性】
技術研發人員:Y·鄧,鄒浩源,左玥,F·C·福爾茨,
申請(專利權)人:微軟公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。