麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

一種虛擬設備狀態(tài)數(shù)據(jù)的更新方法及裝置的制作方法

文檔序號:6377793閱讀:236來源:國知局
專利名稱:一種虛擬設備狀態(tài)數(shù)據(jù)的更新方法及裝置的制作方法
技術領域
本發(fā)明涉及計算機技術領域,特別是涉及一種虛擬設備狀態(tài)數(shù)據(jù)的更新方法及裝置。
背景技術
在對虛擬化環(huán)境中的虛擬設備進行日常維護過程中,虛擬設備的狀態(tài)會根據(jù)不同管理平臺或同一管理平臺不同控制方式(自動、手動)動態(tài)變化,由于虛擬化平臺(虛擬化環(huán)境)大多未提供主動通知機制,將虛擬化平臺中虛擬設備的狀態(tài)變化來告知第三方監(jiān)控平臺,目前,常用的監(jiān)控技術手段是第三方監(jiān)控平臺需要主動定時輪詢虛擬化平臺,將虛擬化平臺上所有虛擬設備狀態(tài)數(shù)據(jù)一次性讀入一個高速緩存,監(jiān)控系統(tǒng)中所需監(jiān)控信息從所述高速緩存中讀取。
如果虛擬設備的狀態(tài)數(shù)據(jù)發(fā)生變化,則需要在緩存中進行虛擬設備對應狀態(tài)數(shù)據(jù)的更新,現(xiàn)有虛擬化環(huán)境中虛擬設備狀態(tài)數(shù)據(jù)更新方式采用全量更新,即將本次輪詢得到的虛擬化平臺中所有虛擬設備的狀態(tài)數(shù)據(jù)全部替換上一次輪詢得到的虛擬化平臺中所有虛擬設備的狀態(tài)數(shù)據(jù)。在虛擬設備數(shù)量較少的情況下,采用全量更新的方式可快速更新緩存中的數(shù)據(jù),但是,當虛擬化環(huán)境中虛擬設備量逐漸增大時,由于在進行虛擬設備狀態(tài)數(shù)據(jù)讀入高速緩存時,需要將虛擬化環(huán)境中虛擬設備模型結構轉換為統(tǒng)一的緩存模型結構,在實際應用環(huán)境中存在不同的虛擬化環(huán)境,而不同的虛擬化環(huán)境的虛擬設備模型不同,導致采用全量更新方式進行的緩存數(shù)據(jù)的更新速度會逐漸降低,直接限制了監(jiān)控平臺的監(jiān)控能力。發(fā)明內容
本發(fā)明所要解決的技術問題是實現(xiàn)虛擬設備的狀態(tài)數(shù)據(jù)快速更新的方法,提供一種虛擬設備狀態(tài)數(shù)據(jù)的更新方法及裝置,以解決現(xiàn)有技術中因虛擬設備的數(shù)量的增加,對虛擬設備的狀態(tài)數(shù)據(jù)進行全量更新速度較慢的技術問題。
為解決上述技術問題,本發(fā)明提供一種虛擬設備狀態(tài)數(shù)據(jù)的更新方法及裝置,本發(fā)明提供如下技術方案
一種虛擬設備狀態(tài)數(shù)據(jù)的更新方法,該方法包括
在當前時刻,按照預置的以樹形結構描述的快照模型,生成第一快照;
按照樹的深度優(yōu)先遍歷原則,比較所述第一快照與第二快照得到狀態(tài)數(shù)據(jù)增量集合,所述第二快照為在當前時刻的上一時刻,按照預置的以樹形結構描述的快照模型,生成的快照,所述狀態(tài)數(shù)據(jù)增量集合包括狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備在所述樹形結構描述的快照模型中對應的節(jié)點及其更新類型;
根據(jù)所述更新類型,依次對所述狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備的狀態(tài)數(shù)據(jù)進行更新,所述更新類型包括替換、新增和刪除。
優(yōu)選的,在當前時刻,按照預置的以樹形結構描述的快照模型,生成第一快照,具5體包括
創(chuàng)建當前虛擬化環(huán)境對應的根節(jié)點,將所述根節(jié)點存儲到待生成的第一快照,所述根節(jié)點的ID設為所述當前虛擬化環(huán)境的鏈接地址,所述根節(jié)點的狀態(tài)檢驗位根據(jù)當前虛擬環(huán)境對應的二進制數(shù)進行設置;
按照虛擬設備之間的依賴關系,獲取當前虛擬化環(huán)境中第一個虛擬設備作為當前虛擬設備,創(chuàng)建所述當前虛擬設備對應的當前子節(jié)點,并將所述當前子節(jié)點存儲到待生成的第一快照,所述當前子節(jié)點中存儲當前虛擬設備ID、當前虛擬設備的狀態(tài)校驗位和當前子節(jié)點的位置校驗位,所述當前虛擬設備的狀態(tài)檢驗位根據(jù)所述當前虛擬設備對應的二進制數(shù)進行設置,將當前子節(jié)點的ID存入其所屬上級節(jié)點的位置校驗位,將上級節(jié)點的ID存入所述當前子節(jié)點的位置校驗位;
判斷所述當前虛擬化環(huán)境中的虛擬設備是否都已經創(chuàng)建子節(jié)點,若否,則按照虛擬設備之間的依賴關系,將未創(chuàng)建子節(jié)點的下一虛擬設備作為當前虛擬設備,并執(zhí)行所述創(chuàng)建當前虛擬設備對應的當前子節(jié)點的步驟,直到所述當前虛擬化環(huán)境中的虛擬設備都已創(chuàng)建子節(jié)點。
優(yōu)選的,所述當前虛擬環(huán)境的狀態(tài)校驗位的設置方式如下
若所述當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為奇數(shù),則當前虛擬環(huán)境的狀態(tài)校驗位設為第一狀態(tài);
若所述當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為偶數(shù),則當前虛擬環(huán)境的狀態(tài)校驗位設為第二狀態(tài)。
優(yōu)選的,所述虛擬設備的狀態(tài)校驗位的設置方式如下
若所述當前虛擬設備對應的二進制數(shù)中I的個數(shù)為奇數(shù),則當前虛擬設備的狀態(tài)校驗位設為第三狀態(tài);
若所述當前虛擬設備對應的二進制數(shù)中I的個數(shù)為偶數(shù),則當前虛擬設備的狀態(tài)校驗位設為第四狀態(tài)。
優(yōu)選的,根據(jù)所述更新類型,依次對所述狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備的狀態(tài)數(shù)據(jù)進行更新,包括
讀取所述狀態(tài)數(shù)據(jù)增量集合中任一節(jié)點作為當前節(jié)點,觸發(fā)當前節(jié)點對應虛擬設備的狀態(tài)數(shù)據(jù)更新流程,所述更新流程包括
讀取當前節(jié)點對應的虛擬設備的當前狀態(tài)數(shù)據(jù);
判斷所述當前節(jié)點對應的虛擬設備的更新類型是否是替換,若是替換,則根據(jù)所述當前節(jié)點對應的虛擬設備的位置校驗位,將所述當前狀態(tài)數(shù)據(jù)替換緩存中指定位置的初始狀態(tài)數(shù)據(jù);若不是替換,則判斷所述當前節(jié)點對應的虛擬設備的更新類型是否是增加,若是增加,則根據(jù)所述當前節(jié)點對應的虛擬設備的位置校驗位,將所述當前狀態(tài)數(shù)據(jù)存儲到緩存中指定位置;若不是增加,則判斷所述當前節(jié)點對應的虛擬設備的更新類型是否是刪除,若是刪除,則根據(jù)所述當前節(jié)點對應的虛擬設備的當前位置校驗位,將緩存中指定位置的當前狀態(tài)數(shù)據(jù)刪除;
判斷所述狀態(tài)數(shù)據(jù)增量集合中的節(jié)點是否都已經被讀取,若否,則將未讀取的節(jié)點中任一節(jié)點作為當前節(jié)點,并執(zhí)行所述更新流程,直到所述狀態(tài)數(shù)據(jù)增量集合中的節(jié)點都已被讀取。6
一種虛擬設備狀態(tài)數(shù)據(jù)的更新裝置,所述裝置包括
快照生成模塊,用于在當前時刻,按照預置的以樹形結構描述的快照模型,生成第一,決照;
比較模塊,用于按照樹的深度優(yōu)先遍歷原則,比較所述第一快照與第二快照得到狀態(tài)數(shù)據(jù)增量集合,所述第二快照為在當前時刻的上一時刻,按照預置的以樹形結構描述的快照模型,生成的快照,所述狀態(tài)數(shù)據(jù)增量集合包括狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備在所述樹形結構描述的快照模型中對應的節(jié)點及其更新類型;
更新模塊,用于根據(jù)所述更新類型,依次對所述狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備的狀態(tài)數(shù)據(jù)進行更新,所述更新類型包括替換、新增和刪除。
優(yōu)選的,所述快照生成模塊包括
第一創(chuàng)建子模塊,用于創(chuàng)建當前虛擬化環(huán)境對應的根節(jié)點,將所述根節(jié)點存儲到待生成的第一快照,所述根節(jié)點的ID設為所述當前虛擬化環(huán)境的鏈接地址,所述根節(jié)點的狀態(tài)檢驗位根據(jù)當前虛擬環(huán)境對應的二進制數(shù)進行設置;
第一獲取子模塊,用于按照虛擬設備之間的依賴關系,獲取當前虛擬化環(huán)境中第一個虛擬設備作為當前虛擬設備;
第二創(chuàng)建子模塊,用于創(chuàng)建所述當前虛擬設備對應的當前子節(jié)點,并將所述當前子節(jié)點存儲到待生成的第一快照,所述當前子節(jié)點中存儲當前虛擬設備ID、當前虛擬設備的狀態(tài)校驗位和當前子節(jié)點的位置校驗位,所述當前虛擬設備的狀態(tài)檢驗位根據(jù)所述當前虛擬設備對應的二進制數(shù)進行設置,將當前子節(jié)點的ID存入其所屬上級節(jié)點的位置校驗位,將上級節(jié)點的ID存入所述當前子節(jié)點的位置校驗位;
第一判斷子模塊,用于判斷所述當前虛擬化環(huán)境中的虛擬設備是否都已經創(chuàng)建子節(jié)點,
第二獲取子模塊,用于在所述判斷子模塊結果為否時,按照虛擬設備之間的依賴關系,將未創(chuàng)建子節(jié)點的下一虛擬設備作為當前虛擬設備;
第一觸發(fā)子模塊,用于觸發(fā)所述第二創(chuàng)建子模塊,直到所述當前虛擬化環(huán)境中的虛擬設備都已創(chuàng)建子節(jié)點。
優(yōu)選的,所述當前虛擬環(huán)境的狀態(tài)校驗位的設置方式如下
若所述當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為奇數(shù),則當前虛擬環(huán)境的狀態(tài)校驗位設為第一狀態(tài);
若所述當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為偶數(shù),則當前虛擬環(huán)境的狀態(tài)校驗位設為第二狀態(tài)。
優(yōu)選的,所述虛擬設備的狀態(tài)校驗位的設置方式如下
若所述當前虛擬設備對應的二進制數(shù)中I的個數(shù)為奇數(shù),則當前虛擬設備的狀態(tài)校驗位設為第三狀態(tài);
若所述當前虛擬設備對應的二進制數(shù)中I的個數(shù)為偶數(shù),則當前虛擬設備的狀態(tài)校驗位設為第四狀態(tài)。
優(yōu)選的,所述更新模塊包括
第一讀取子模塊,用于讀取所述狀態(tài)數(shù)據(jù)增量集合中任一節(jié)點作為當前節(jié)點;
第二觸發(fā)子模塊,用于觸發(fā)所述當前節(jié)點對應虛擬設備的狀態(tài)數(shù)據(jù)的更新流程,所述更新流程包括
讀取當前節(jié)點對應的虛擬設備的當前狀態(tài)數(shù)據(jù);
判斷所述當前節(jié)點對應的虛擬設備的更新類型是否是替換,若是替換,則根據(jù)所述當前節(jié)點對應的虛擬設備的位置校驗位,將所述當前狀態(tài)數(shù)據(jù)替換緩存中指定位置的初始狀態(tài)數(shù)據(jù);
若不是替換,則判斷所述當前節(jié)點對應的虛擬設備的更新類型是否是增加,若是增加,則根據(jù)所述當前節(jié)點對應的虛擬設備的位置校驗位,將所述當前狀態(tài)數(shù)據(jù)存儲到緩存中指定位直;
若不是增加,則判斷所述當前節(jié)點對應的虛擬設備的更新類型是否是刪除,若是刪除,則根據(jù)所述當前節(jié)點對應的虛擬設備的當前位置校驗位,將緩存中指定位置的當前狀態(tài)數(shù)據(jù)刪除;
第二判斷子模塊,用于判斷所述狀態(tài)數(shù)據(jù)增量集合中的節(jié)點是否都已經被讀?。?br> 第二讀取子模塊,用于在所述第二判斷子模塊的結果為否時,在未讀取的節(jié)點中讀取任一節(jié)點作為當前節(jié)點;
第三觸發(fā)子模塊,用于觸發(fā)所述第二觸發(fā)子模塊,直至所有的節(jié)點都已被讀取。
本發(fā)明中,通過預設樹形結構的快照模型,為不同的虛擬環(huán)境中不同虛擬設備提供一個統(tǒng)一的生成快照模型,生成不同時刻的快照,按照樹的深度優(yōu)先遍歷原則,比較所述不同時刻的快照,可以快速的確定狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備及其更新類型,進而就可以根據(jù)更新類型對虛擬設備的狀態(tài)數(shù)據(jù)進行更新,本發(fā)明與現(xiàn)有技術相比,因為,不需要對所有的虛擬設備的狀態(tài)數(shù)據(jù)全部進行更新,所以提高了虛擬設備狀態(tài)數(shù)據(jù)更新的速度,同時,當虛擬設備的數(shù)量增加時,采用本發(fā)明的技術方案,只需要將增加的虛擬設備對應的狀態(tài)數(shù)據(jù)進行更新即可,所以在虛擬設備的數(shù)量增加時同樣可以快速實現(xiàn)虛擬設備狀態(tài)數(shù)據(jù)的更新。


為了更清楚地說明本申請實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下, 還可以根據(jù)這些附圖獲得其他的附圖。 圖I為本發(fā)明一種虛擬設備狀態(tài)數(shù)據(jù)的更新方法實施例I的流程圖;圖2為本發(fā)明中預置的樹形結構的快照模型的示意圖;圖3為本發(fā)明一種虛擬設備狀態(tài)數(shù)據(jù)的更新方法實施例2的流程圖;圖4為本發(fā)明方法實施例2第一快照對應的樹形結構的示意圖;圖5為本發(fā)明方法實施例2第二快照對應的樹形結構的示意圖;圖6為本發(fā)明方法實施例2中比較第一快照和第二快照的流程圖;圖7為本發(fā)明一種虛擬設備狀態(tài)數(shù)據(jù)的更新裝置實施例的結構示意圖;圖8為本發(fā)明裝置實施例中快照生成模塊的結構示意圖;圖9為本發(fā)明裝置實施例中更新模塊的結構示意圖;圖10為本發(fā)明在實際應用中的一種結構示意圖。
具體實施方式
為了使本技術領域的人員更好地理解本發(fā)明方案,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
參考圖I所示,為本發(fā)明提供的一種虛擬設備狀態(tài)數(shù)據(jù)的更新方法實施例I的流程圖,本實施例具體可以包括
步驟101 :在當前時刻,按照預置的以樹形結構描述的快照模型,生成第一快照。
參考圖2所示,圖2為所述預置的樹形結構的快照模型的示意圖,其中節(jié)點A稱為根節(jié)點,節(jié)點B G稱為子節(jié)點,最后一級節(jié)點DY稱為葉子節(jié)點,即葉子節(jié)點沒有下級子節(jié)點,以根節(jié)點A為基礎,子節(jié)點B、D、E所在的一側稱為樹的左枝,子節(jié)點C、F、G所在的一側稱為樹的右枝,一個樹形結構中可以只有左枝或者只有右枝,圖2僅用來示意性的說明樹形結構,并沒有具體的實際意義。
步驟102 :按照樹的深度優(yōu)先遍歷原則,比較所述第一快照與第二快照得到狀態(tài)數(shù)據(jù)增量集合。
所述樹的深度優(yōu)先遍歷原則是指按照樹上根節(jié)點包含的左枝和右枝的一次進行遍歷,即先遍歷左枝再遍歷右枝,或者先遍歷右枝再遍歷左枝,按照既定遍歷順序比較所述第一快照與第二快照,可以得到第一快照與第二快照中發(fā)生變化的節(jié)點,將發(fā)生變化的節(jié)點存儲到狀態(tài)數(shù)據(jù)增量集合中。
步驟103 :根據(jù)所述更新類型,依次對所述狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備的狀態(tài)數(shù)據(jù)進行更新。
所述更新類型包括替換、新增和刪除,具體的根據(jù)狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備的更新類型是替換、新增還是刪除,對所述狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備的狀態(tài)數(shù)據(jù)進行相應的更新。
本實施例中,通過預設樹形結構的快照模型,為不同的虛擬環(huán)境中不同虛擬設備提供一個統(tǒng)一的生成快照模型,生成不同時刻的快照,按照樹的深度優(yōu)先遍歷原則,比較所述不同時刻的快照,可以快速的確定狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備及其更新類型,進而就可以根據(jù)更新類型對虛擬設備的狀態(tài)數(shù)據(jù)進行更新,本發(fā)明與現(xiàn)有技術相比,因為,不需要對所有的虛擬設備的狀態(tài)數(shù)據(jù)全部進行更新,所以提高了虛擬設備狀態(tài)數(shù)據(jù)更新的速度, 同時,當虛擬設備的數(shù)量增加時,采用本發(fā)明的技術方案,只需要將增加的虛擬設備對應的狀態(tài)數(shù)據(jù)進行更新即可,所以在虛擬設備的數(shù)量增加時同樣可以快速實現(xiàn)虛擬設備狀態(tài)數(shù)據(jù)的更新。
參考圖3所示,為本發(fā)明一種虛擬設備狀態(tài)數(shù)據(jù)的更新方法實施例2的流程圖,本實施例是在實施例I的基礎上的一個具體實現(xiàn),本實施例具體包括
步驟301 :在當前時刻,生成第一快照。
虛擬化環(huán)境中各種虛擬設備之間由相互依賴關系而相互關聯(lián),比如虛擬主機包含虛擬機,虛擬機包含虛擬網卡等。由于不同廠商對虛擬化設備及屬性定義有一定差異,通用虛擬化環(huán)境監(jiān)控平臺通常采用業(yè)界規(guī)范的統(tǒng)一虛擬化領域模型來描述虛擬化環(huán)境,若采用業(yè)界規(guī)范的虛擬設備及相互關系模型結構,來描述虛擬化環(huán)境中虛擬設備本身的狀態(tài)以及虛擬設備之間的依賴關系需要記錄大量與當前運行期狀態(tài)不相干的描述,比如名稱空間URI定義,虛擬設備配置與軟件安裝過程定義等信息,占用了大量緩存空間。為了能夠以更小的時間、空間復雜度,快速生成、比對快照,同時屏蔽不同廠商提供的虛擬化平臺的差異性,本發(fā)明提出如圖2所示的快照模型。圖2所示的快照模型中的節(jié)點表示的物理意義有以下兩種I)、資源池對應一個可提供獨立訪問鏈接地址信息的虛擬化環(huán)境,一個快照對應一個資源池根節(jié)點;2)、虛擬設備對應虛擬化環(huán)境中不同類型的虛擬設備。圖2所示的快照模型中的節(jié)點包含的屬性主要有以下四個·
I)、ID :對應虛擬設備ID或資源池鏈接地址;2)、類型標識是虛擬設備還是資源池節(jié)點;3)、狀態(tài)校驗位以二進制碼標識的虛擬設備當前狀態(tài)的校驗位;4)、位置校驗位以包含當前節(jié)點的上級節(jié)點和下級節(jié)點的字符串標識的當前節(jié)點在樹上位置的校驗位;基于上述內容,所述步驟301中所述生成第一快照具體包括以下子步驟子步驟Al :創(chuàng)建當前虛擬化環(huán)境對應的根節(jié)點。當前虛擬化環(huán)境對應的根節(jié)點中存儲的ID設為所述當前虛擬化環(huán)境的鏈接地址,所述根節(jié)點的狀態(tài)檢驗位根據(jù)當前虛擬環(huán)境對應的二進制數(shù)進行設置,當前虛擬環(huán)境的狀態(tài)校驗位的設置方式如下若所述當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為奇數(shù),則當前虛擬環(huán)境的狀態(tài)校驗位設為第一狀態(tài)“I”;若所述當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為偶數(shù),則當前虛擬環(huán)境的狀態(tài)校驗位設為第二狀態(tài)“O”。其中第一狀態(tài)“I”和第二狀態(tài)“O”分別表示當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為奇數(shù)還是偶數(shù),在實際的存儲中采用“O”和“I”的形式進行存儲,本實施例中,用“I”表示當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為奇數(shù),用“O”表示當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為偶數(shù)。子步驟A2 :獲取當前虛擬設備。按照虛擬設備之間的依賴關系,獲取當前虛擬化環(huán)境中第一個虛擬設備作為當前虛擬設備。子步驟A3 :創(chuàng)建所述當前虛擬設備對應的當前子節(jié)點。所述當前子節(jié)點中存儲當前虛擬設備ID、當前虛擬設備的狀態(tài)校驗位和當前子節(jié)點的位置校驗位,所述當前虛擬設備的狀態(tài)檢驗位根據(jù)所述當前虛擬設備對應的二進制數(shù)進行設置,具體的設置方式如下若所述當前虛擬設備對應的二進制數(shù)中I的個數(shù)為奇數(shù),則當前虛擬設備的狀態(tài)校驗位設為第三狀態(tài)“I”;若所述當前虛擬設備對應的二進制數(shù)中I的個數(shù)為偶數(shù),則當前虛擬設備的狀態(tài)校驗位設為第四狀態(tài)“O”。
其中第三狀態(tài)“I”和第四狀態(tài)“O”分別表示當前虛擬設備對應的二進制數(shù)中I的個數(shù)為奇數(shù)還是偶數(shù),在實際的存儲中采用“O”和“I”的形式進行存儲,本實施例中,用“I”表示當前虛擬設備對應的二進制數(shù)中I的個數(shù)為奇數(shù),用“O”表示當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為偶數(shù)。將當前子 節(jié)點中的ID存入其所屬上級節(jié)點的位置校驗位,將上級節(jié)點的ID存入所述當前子節(jié)點的位置校驗位;子步驟A4:判斷所述當前虛擬化環(huán)境中的虛擬設備是否都已經創(chuàng)建子節(jié)點,若是,則進入子步驟A5,若否,則進入子步驟A6。子步驟A5 :將創(chuàng)建的所有節(jié)點存儲到待生成的第一快照中。子步驟A6:按照虛擬設備之間的依賴關系,將未創(chuàng)建子節(jié)點的下一虛擬設備作為當前虛擬設備,返回子步驟A3。子步驟ΑΓΑ6執(zhí)行完,即可得到第一快照。再返回圖3所示的實施例2,進入步驟302。步驟302 比較第一快照和第二快照。所述第二快照為所述當前時刻的上一時刻生成的快照,所述第二快照生成方式可以參考所述第一快照生成的方式,此處不再贅述。本實施例中,所有快照生成均采用圖2所示的樹形結構,因為在實際的虛擬環(huán)境中,虛擬設備之間的依賴關系會因為新的虛擬設備的加入或者原有虛擬設備的退出而發(fā)生變化,所以生成快照后,每個快照對應的實際樹形結構可能會有所不同,為了便于描述,參考圖4和圖5所示,圖4為本實施例第一快照對應的樹形結構,圖5為本實施例第二快照對應的樹形結構,其中以第一快照和第二快照對應于同一虛擬環(huán)境,節(jié)點B的狀態(tài)發(fā)生了變化,節(jié)點D和節(jié)點E是刪除的虛擬設備對應的節(jié)點,節(jié)點F和節(jié)點G是新增虛擬設備對應的節(jié)點為例,對所述步驟302的具體實現(xiàn)進行示意性的說明。步驟302中比較第一快照和第二快照是按照樹的深度優(yōu)先遍歷原則進行的,本步驟的具體過程如圖6所示,圖6為步驟302中比較第一快照和第二快照的流程圖,所述比較第一快照和第二快照具體可以包括步驟601 :讀取第一快照和第二快照中的根節(jié)點。步驟602 比較第一快照和第二快照中的根節(jié)點A中的ID及其狀態(tài)校驗位是否相同,若相同,則進入步驟603。若第一快照和第二快照中的資源池根節(jié)點A中狀態(tài)校驗位相同,說明第一快照和第二快照中的根節(jié)點A為虛擬環(huán)境平臺,在此基礎上,若第一快照和第二快照中根節(jié)點A中的ID相同,說明第一快照和第二快照對應于同一虛擬環(huán)境,因為步驟302是以第一快照和第二快照中的根節(jié)點A中的ID及其狀態(tài)校驗位相同進行說明的,在實際環(huán)境中有可能第一快照和第二快照對應于不同的虛擬環(huán)境,此時,將第一快照對應的虛擬環(huán)境及其虛擬設備全部看作是新增的,則直接進入步驟304對所述虛擬環(huán)境中的狀態(tài)數(shù)據(jù)進行更新。步驟603 :讀取第一快照中節(jié)點B作為當前子節(jié)點。第一快照中當前子節(jié)點可以是節(jié)點B也可以是節(jié)點C,本步驟以樹形結構的左枝為第一枝優(yōu)先遍歷,即節(jié)點B為當前子節(jié)點。步驟604 :在第二快照中查找與當前子節(jié)點B中ID相同的匹配節(jié)點,若找到,則進入步驟605。當虛擬環(huán)境中有新增的虛擬設備時,所述新增虛擬設備對應的節(jié)點會增加到原快照對應的樹形結構中葉子節(jié)點的下級中,所以,以本步驟為例,若未找到,說明當前子節(jié)點B是新增的節(jié)點,即節(jié)點B對應的虛擬設備是新增的,如果當前子節(jié)點B還有下級子節(jié)點,那么,所述下級子節(jié)點也同樣都是新增虛擬設備對應的節(jié)點,則當前子節(jié)點B及其下級子節(jié)點的更新類型均設置為新增。步驟605 :比較當前子節(jié)點B與匹配節(jié)點的狀態(tài)校驗位是否相同,若不同,則進入步驟606,若相同,則進入步驟607。步驟606 :設置當前子節(jié)點B的更新類型為替換。步驟607 :讀取第一快照中節(jié)點C作為當前子節(jié)點。圖4所示的第一快照對應的樹形結構的左枝已經遍歷完,則進行右枝的遍歷,讀 取節(jié)點C作為當前子節(jié)點。步驟608:在第二快照中查找與當前子節(jié)點C中ID相同的匹配節(jié)點,若找到,則進入步驟609。在第二快照中查找與當前子節(jié)點C中ID相同的匹配節(jié)點,未找到的情況可以參考步驟604的描述,此處不再贅述。步驟605 :比較當前子節(jié)點C與當前子節(jié)點C中ID相同的匹配節(jié)點的狀態(tài)校驗位是否相同,若相同,則進入步驟610。步驟610 :讀取第一快照中節(jié)點F作為當前子節(jié)點。步驟611 :在第二快照中查找與當前子節(jié)點F中ID相同的匹配節(jié)點,若未找到,則進入步驟612。步驟612 :設置當前子節(jié)點F、G的更新類型為新增。在第二快照中沒有找到與當前子節(jié)點F中ID相同的匹配節(jié)點,即當前子節(jié)點F是新增節(jié)點,參考步驟604的描述可知,節(jié)點G同樣是新增節(jié)點,所以設置節(jié)點F和節(jié)點G的更新類型為新增。步驟613 :在第二快照中查找是否有未被比較的節(jié)點,若有,則進入步驟614,若無,則進入步驟303。步驟614 :設置節(jié)點D、E的更新類型為刪除。如果在第二快照中有未被比較的節(jié)點,說明在第一快照中不存在所述未被比較的節(jié)點,即所述未被比較的節(jié)點對應的虛擬設備在當前虛擬環(huán)境中已經不存在,所以所述未被比較的節(jié)點的更新類型設置為刪除。步驟60廣步驟614執(zhí)行完,則過程結束,即本實施例中步驟302中“比較第一快照與第二快照”執(zhí)行結束,進入步驟303。步驟303 :生成狀態(tài)數(shù)據(jù)增量集合。所述狀態(tài)數(shù)據(jù)增量集合中包括所有更新類型為替換、新增和刪除的虛擬設備對應的節(jié)點。將步驟302中通過比較第一快照和第二快照后發(fā)生變化的節(jié)點及其更新類型存儲到狀態(tài)數(shù)據(jù)增量集合中。步驟304 :讀取所述狀態(tài)數(shù)據(jù)集合中第一個節(jié)點作為當前節(jié)點。
步驟305 :更新所述當前節(jié)點對應的虛擬設備的狀態(tài)數(shù)據(jù)。本步驟中更新所述當前節(jié)點對應的虛擬設備的狀態(tài)數(shù)據(jù)的具體過程包括子步驟BI :讀取當前節(jié)點對應的當前虛擬設備的當前狀態(tài)數(shù)據(jù)。子步驟B2:判斷所述當前虛擬設備的更新類型是否是替換,若是替換,則進入子步驟B3,若不是替換,則進入子步驟B4。子步驟B3:根據(jù)所述當前虛擬設備的位置校驗位,將所述當前狀態(tài)數(shù)據(jù)替換緩存中指定位置的初始狀態(tài)數(shù)據(jù)。子步驟B4:判斷所述當前虛擬設備的更新類型是否是增加,若是增加,則進入子步驟B5,若不是增加,則進入子步驟B6?!?br> 子步驟B5 :根據(jù)所述當前虛擬設備的位置校驗位,將所述當前狀態(tài)數(shù)據(jù)存儲到緩存中指定位直。子步驟B6:判斷所述當前虛擬設備的更新類型是否是刪除,若是刪除,則進入子步驟B7。子步驟B7:根據(jù)所述當前虛擬設備的位置校驗位,將緩存中指定位置的當前狀態(tài)數(shù)據(jù)刪除。子步驟ΒΓ子步驟B7執(zhí)行完,則步驟305中“更新所述當前節(jié)點對應的虛擬設備的狀態(tài)數(shù)據(jù)”的流程執(zhí)行完畢,進入步驟306。步驟306 :判斷所述狀態(tài)數(shù)據(jù)增量集合中的節(jié)點是否都已經被讀取,若是,進入步驟307,若否,進入步驟308。步驟307 :結束更新流程。步驟308 :將所述狀態(tài)數(shù)據(jù)增量集合中未讀取的節(jié)點中任一節(jié)點作為當前節(jié)點,返回步驟305。本實施例中,通過預設樹形結構的快照模型,為不同的虛擬環(huán)境中不同虛擬設備提供一個統(tǒng)一的生成快照模型,生成不同時刻的快照,按照樹的深度優(yōu)先遍歷原則,比較所述不同時刻的快照,可以快速的確定狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備及其更新類型,進而就可以根據(jù)更新類型對虛擬設備的狀態(tài)數(shù)據(jù)進行更新,本發(fā)明與現(xiàn)有技術相比,因為,不需要對所有的虛擬設備的狀態(tài)數(shù)據(jù)全部進行更新,所以提高了虛擬設備狀態(tài)數(shù)據(jù)更新的速度,同時,當虛擬設備的數(shù)量增加時,采用本發(fā)明的技術方案,只需要將增加的虛擬設備對應的狀態(tài)數(shù)據(jù)進行更新即可,所以在虛擬設備的數(shù)量增加時同樣可以快速實現(xiàn)虛擬設備狀態(tài)數(shù)據(jù)的更新。相應的,本發(fā)明還提供一種虛擬設備狀態(tài)數(shù)據(jù)的更新裝置,參考圖7所示,為本發(fā)明一種虛擬設備狀態(tài)數(shù)據(jù)的更新裝置,該裝置包括快照生成模塊710,用于在當前時刻,按照預置的以樹形結構描述的快照模型,生成第一,決照;比較模塊720,用于按照樹的深度優(yōu)先遍歷原則,比較所述第一快照與第二快照得到狀態(tài)數(shù)據(jù)增量集合,所述第二快照為在當前時刻的上一時刻,按照預置的以樹形結構描述的快照模型,生成的快照,所述狀態(tài)數(shù)據(jù)增量集合包括狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備在所述樹形結構描述的快照模型中對應的節(jié)點及其更新類型;更新模塊730,用于根據(jù)所述更新類型,依次對所述狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備的狀態(tài)數(shù)據(jù)進行更新,所述更新類型包括替換、新增和刪除。優(yōu)選的,參考圖8所示,所述快照生成模塊710具體可以包括第一創(chuàng)建子模塊810,用于創(chuàng)建當前虛擬化環(huán)境對應的根節(jié)點,將所述根節(jié)點存儲到待生成的第一快照,所述根節(jié)點的ID設為所述當前虛擬化環(huán)境的鏈接地址,所述根節(jié)點的狀態(tài)檢驗位根據(jù)當前虛擬環(huán)境對應的二進制數(shù)進行設置;第一獲取子模塊820,用于按照虛擬設備之間的依賴關系,獲取當前虛擬化環(huán)境中第一個虛擬設備作為當前虛擬設備;·第二創(chuàng)建子模塊830,用于創(chuàng)建所述當前虛擬設備對應的當前子節(jié)點,并將所述當前子節(jié)點存儲到待生成的第一快照,所述當前子節(jié)點中存儲當前虛擬設備ID、當前虛擬設備的狀態(tài)校驗位和當前子節(jié)點的位置校驗位,所述當前虛擬設備的狀態(tài)檢驗位根據(jù)所述當前虛擬設備對應的二進制數(shù)進行設置,將當前子節(jié)點的ID存入其所屬上級節(jié)點的位置校驗位,將上級節(jié)點的ID存入所述當前子節(jié)點的位置校驗位;第一判斷子模塊840,用于判斷所述當前虛擬化環(huán)境中的虛擬設備是否都已經創(chuàng)建子節(jié)點;第二獲取子模塊850,用于在所述判斷子模塊結果為否時,按照虛擬設備之間的依賴關系,將未創(chuàng)建子節(jié)點的下一虛擬設備作為當前虛擬設備;第一觸發(fā)子模塊860,用于觸發(fā)所述第二創(chuàng)建子模塊,直到所述當前虛擬化環(huán)境中的虛擬設備都已創(chuàng)建子節(jié)點。優(yōu)選的,參考圖9所示,所述更新模塊730具體可以包括第一讀取子模塊910,用于讀取所述增量集合中任一節(jié)點作為當前節(jié)點;第二觸發(fā)子模塊920,用于觸發(fā)所述當前節(jié)點對應虛擬設備的狀態(tài)數(shù)據(jù)的更新流程,所述更新流程的具體實現(xiàn)可以參考步驟305的實現(xiàn)方式,此處不再贅述;第二判斷子模塊930,用于判斷所述狀態(tài)數(shù)據(jù)增量集合中的節(jié)點是否都已經被讀取;第二讀取子模塊940,用于在所述第二判斷子模塊的結果為否時,在未讀取的節(jié)點中讀取任一節(jié)點作為當前節(jié)點;第三觸發(fā)子模塊950,用于觸發(fā)所述第二觸發(fā)子模塊。在實際應用中,本發(fā)明實施例的具體實現(xiàn)可以通過圖10所示的結構來完成,包括快照生成模塊1001,用于針對指定虛擬化環(huán)境生成能夠精確標識虛擬設備狀態(tài)的快照;快照比對模塊1002,用于負責通過比對不同時刻的快照找出新增、更新和刪除的虛擬設備對象對應的節(jié)點;連接器1003,用于屏蔽不同廠商不同地域虛擬化平臺的連接方式差異,提供統(tǒng)一的虛擬化平臺連接方式和連接池;增量數(shù)據(jù)抽取器1004,用于根據(jù)快照比對結果通過連接器從虛擬化平臺中獲取指定的增量數(shù)據(jù);緩存更新模塊1005,用于根據(jù)快照比對結果和增量數(shù)據(jù)抽取器抽取出來的增量數(shù)據(jù)更新狀態(tài)緩存。
本實施例中,通過預設樹形結構的快照模型,為不同的虛擬環(huán)境中不同虛擬設備提供一個統(tǒng)一的生成快照模型,生成不同時刻的快照,按照樹的深度優(yōu)先遍歷原則,比較所述不同時刻的快照,可以快速的確定狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備及其更新類型,進而就可以根據(jù)更新類型對虛擬設備的狀態(tài)數(shù)據(jù)進行更新,本發(fā)明與現(xiàn)有技術相比,因為,不需要對所有的虛擬設備的狀態(tài)數(shù)據(jù)全部進行更新,所以提高了虛擬設備狀態(tài)數(shù)據(jù)更新的速度,同時,當虛擬設備的數(shù)量增加時,采用本發(fā)明的技術方案,只需要將增加的虛擬設備對應的狀態(tài)數(shù)據(jù)進行更新即可,所以在虛擬設備的數(shù)量增加時同樣可以快速實現(xiàn)虛擬設備狀態(tài)數(shù)據(jù)的更新。需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。對于系統(tǒng)實施例而言,由于其基本對應于方法實施例,所以相關之處參見方法實施例的部分說明即可。以上所描述的系統(tǒng)實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據(jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。本領域普通技術人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。以上所述僅是本發(fā)明的具體實施方式
,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應 視為本發(fā)明的保護范圍。
權利要求
1.一種虛擬設備狀態(tài)數(shù)據(jù)的更新方法,其特征在于,包括在當前時刻,按照預置的以樹形結構描述的快照模型,生成第一快照;按照樹的深度優(yōu)先遍歷原則,比較所述第一快照與第二快照得到狀態(tài)數(shù)據(jù)增量集合, 所述第二快照為在當前時刻的上一時刻,按照預置的以樹形結構描述的快照模型,生成的快照,所述狀態(tài)數(shù)據(jù)增量集合包括狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備在所述樹形結構描述的快照模型中對應的節(jié)點及其更新類型;根據(jù)所述更新類型,依次對所述狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備的狀態(tài)數(shù)據(jù)進行更新, 所述更新類型包括替換、新增和刪除。
2.根據(jù)權利要求I所述的方法,其特征在于,在當前時刻,按照預置的以樹形結構描述的快照模型,生成第一快照,具體包括創(chuàng)建當前虛擬化環(huán)境對應的根節(jié)點,將所述根節(jié)點存儲到待生成的第一快照,所述根節(jié)點的ID設為所述當前虛擬化環(huán)境的鏈接地址,所述根節(jié)點的狀態(tài)檢驗位根據(jù)當前虛擬環(huán)境對應的二進制數(shù)進行設置;按照虛擬設備之間的依賴關系,獲取當前虛擬化環(huán)境中第一個虛擬設備作為當前虛擬設備,創(chuàng)建所述當前虛擬設備對應的當前子節(jié)點,并將所述當前子節(jié)點存儲到待生成的第一快照,所述當前子節(jié)點中存儲當前虛擬設備I D、當前虛擬設備的狀態(tài)校驗位和當前子節(jié)點的位置校驗位,所述當前虛擬設備的狀態(tài)檢驗位根據(jù)所述當前虛擬設備對應的二進制數(shù)進行設置,將當前子節(jié)點的ID存入其所屬上級節(jié)點的位置校驗位,將上級節(jié)點的ID存入所述當前子節(jié)點的位置校驗位;判斷所述當前虛擬化環(huán)境中的虛擬設備是否都已經創(chuàng)建子節(jié)點,若否,則按照虛擬設備之間的依賴關系,將未創(chuàng)建子節(jié)點的下一虛擬設備作為當前虛擬設備,并執(zhí)行所述創(chuàng)建當前虛擬設備對應的當前子節(jié)點的步驟,直到所述當前虛擬化環(huán)境中的虛擬設備都已創(chuàng)建子節(jié)點。
3.根據(jù)權利要求2所述的方法,其特征在于,所述當前虛擬環(huán)境的狀態(tài)校驗位的設置方式如下若所述當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為奇數(shù),則當前虛擬環(huán)境的狀態(tài)校驗位設為第一狀態(tài);若所述當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為偶數(shù),則當前虛擬環(huán)境的狀態(tài)校驗位設為第二狀態(tài)。
4.根據(jù)權利要求2所述的方法,其特征在于,所述虛擬設備的狀態(tài)校驗位的設置方式如下若所述當前虛擬設備對應的二進制數(shù)中I的個數(shù)為奇數(shù),則當前虛擬設備的狀態(tài)校驗位設為第三狀態(tài);若所述當前虛擬設備對應的二進制數(shù)中I的個數(shù)為偶數(shù),則當前虛擬設備的狀態(tài)校驗位設為第四狀態(tài)。
5.根據(jù)權利要求I所述的方法,其特征在于,根據(jù)所述更新類型,依次對所述狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備的狀態(tài)數(shù)據(jù)進行更新,包括讀取所述狀態(tài)數(shù)據(jù)增量集合中任一節(jié)點作為當前節(jié)點,觸發(fā)當前節(jié)點對應虛擬設備的狀態(tài)數(shù)據(jù)更新流程,所述更新流程包括讀取當前節(jié)點對應的虛擬設備的當前狀態(tài)數(shù)據(jù);判斷所述當前節(jié)點對應的虛擬設備的更新類型是否是替換,若是替換,則根據(jù)所述當前節(jié)點對應的虛擬設備的位置校驗位,將所述當前狀態(tài)數(shù)據(jù)替換緩存中指定位置的初始狀態(tài)數(shù)據(jù);若不是替換,則判斷所述當前節(jié)點對應的虛擬設備的更新類型是否是增加,若是增加,則根據(jù)所述當前節(jié)點對應的虛擬設備的位置校驗位,將所述當前狀態(tài)數(shù)據(jù)存儲到緩存中指定位置;若不是增加,則判斷所述當前節(jié)點對應的虛擬設備的更新類型是否是刪除,若是刪除,則根據(jù)所述當前節(jié)點對應的虛擬設備的當前位置校驗位,將緩存中指定位置的當前狀態(tài)數(shù)據(jù)刪除;判斷所述狀態(tài)數(shù)據(jù)增量集合中的節(jié)點是否都已經被讀取,若否,則將未讀取的節(jié)點中任一節(jié)點作為當前節(jié)點,并執(zhí)行所述更新流程,直到所述狀態(tài)數(shù)據(jù)增量集合中的節(jié)點都已被讀取。
6.一種虛擬設備狀態(tài)數(shù)據(jù)的更新裝置,其特征在于,包括快照生成模塊,用于在當前時刻,按照預置的以樹形結構描述的快照模型,生成第一快昭.比較模塊,用于按照樹的深度優(yōu)先遍歷原則,比較所述第一快照與第二快照得到狀態(tài)數(shù)據(jù)增量集合,所述第二快照為在當前時刻的上一時刻,按照預置的以樹形結構描述的快照模型,生成的快照,所述狀態(tài)數(shù)據(jù)增量集合包括狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備在所述樹形結構描述的快照模型中對應的節(jié)點及其更新類型;更新模塊,用于根據(jù)所述更新類型,依次對所述狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備的狀態(tài)數(shù)據(jù)進行更新,所述更新類型包括替換、新增和刪除。
7.根據(jù)權利要求6所述的裝置,其特征在于,所述快照生成模塊包括第一創(chuàng)建子模塊,用于創(chuàng)建當前虛擬化環(huán)境對應的根節(jié)點,將所述根節(jié)點存儲到待生成的第一快照,所述根節(jié)點的ID設為所述當前虛擬化環(huán)境的鏈接地址,所述根節(jié)點的狀態(tài)檢驗位根據(jù)當前虛擬環(huán)境對應的二進制數(shù)進行設置;第一獲取子模塊,用于按照虛擬設備之間的依賴關系,獲取當前虛擬化環(huán)境中第一個虛擬設備作為當前虛擬設備;第二創(chuàng)建子模塊,用于創(chuàng)建所述當前虛擬設備對應的當前子節(jié)點,并將所述當前子節(jié)點存儲到待生成的第一快照,所述當前子節(jié)點中存儲當前虛擬設備ID、當前虛擬設備的狀態(tài)校驗位和當前子節(jié)點的位置校驗位,所述當前虛擬設備的狀態(tài)檢驗位根據(jù)所述當前虛擬設備對應的二進制數(shù)進行設置,將當前子節(jié)點的ID存入其所屬上級節(jié)點的位置校驗位,將上級節(jié)點的ID存入所述當前子節(jié)點的位置校驗位;第一判斷子模塊,用于判斷所述當前虛擬化環(huán)境中的虛擬設備是否都已經創(chuàng)建子節(jié)點,第二獲取子模塊,用于在所述判斷子模塊結果為否時,按照虛擬設備之間的依賴關系, 將未創(chuàng)建子節(jié)點的下一虛擬設備作為當前虛擬設備;第一觸發(fā)子模塊,用于觸發(fā)所述第二創(chuàng)建子模塊,直到所述當前虛擬化環(huán)境中的虛擬設備都已創(chuàng)建子節(jié)點。
8.根據(jù)權利要求7所述的裝置,其特征在于,所述當前虛擬環(huán)境的狀態(tài)校驗位的設置方式如下若所述當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為奇數(shù),則當前虛擬環(huán)境的狀態(tài)校驗位設為第一狀態(tài);若所述當前虛擬環(huán)境對應的二進制數(shù)中I的個數(shù)為偶數(shù),則當前虛擬環(huán)境的狀態(tài)校驗位設為第二狀態(tài)。
9.根據(jù)權利要求7所述的裝置,其特征在于,所述虛擬設備的狀態(tài)校驗位的設置方式如下若所述當前虛擬設備對應的二進制數(shù)中I的個數(shù)為奇數(shù),則當前虛擬設備的狀態(tài)校驗位設為第三狀態(tài);若所述當前虛擬設備對應的二進制數(shù)中I的個數(shù)為偶數(shù),則當前虛擬設備的狀態(tài)校驗位設為第四狀態(tài)。
10.根據(jù)權利要求6所述的裝置,其特征在于,所述更新模塊包括第一讀取子模塊,用于讀取所述狀態(tài)數(shù)據(jù)增量集合中任一節(jié)點作為當前節(jié)點;第二觸發(fā)子模塊,用于觸發(fā)所述當前節(jié)點對應虛擬設備的狀態(tài)數(shù)據(jù)的更新流程,所述更新流程包括讀取當前節(jié)點對應的虛擬設備的當前狀態(tài)數(shù)據(jù);判斷所述當前節(jié)點對應的虛擬設備的更新類型是否是替換,若是替換,則根據(jù)所述當前節(jié)點對應的虛擬設備的位置校驗位,將所述當前狀態(tài)數(shù)據(jù)替換緩存中指定位置的初始狀態(tài)數(shù)據(jù);若不是替換,則判斷所述當前節(jié)點對應的虛擬設備的更新類型是否是增加,若是增加, 則根據(jù)所述當前節(jié)點對應的虛擬設備的位置校驗位,將所述當前狀態(tài)數(shù)據(jù)存儲到緩存中指定位置;若不是增加,則判斷所述當前節(jié)點對應的虛擬設備的更新類型是否是刪除,若是刪除, 則根據(jù)所述當前節(jié)點對應的虛擬設備的當前位置校驗位,將緩存中指定位置的當前狀態(tài)數(shù)據(jù)刪除;第二判斷子模塊,用于判斷所述狀態(tài)數(shù)據(jù)增量集合中的節(jié)點是否都已經被讀??;第二讀取子模塊,用于在所述第二判斷子模塊的結果為否時,在未讀取的節(jié)點中讀取任一節(jié)點作為當前節(jié)點;第三觸發(fā)子模塊,用于觸發(fā)所述第二觸發(fā)子模塊,直至所有的節(jié)點都已被讀取。
全文摘要
本發(fā)明公開了一種虛擬設備狀態(tài)數(shù)據(jù)的更新方法及裝置,所述方法包括在當前時刻,按照預置的以樹形結構描述的快照模型,生成第一快照;按照樹的深度優(yōu)先遍歷原則,比較所述第一快照與第二快照得到狀態(tài)數(shù)據(jù)增量集合,所述狀態(tài)數(shù)據(jù)增量集合包括狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備在所述樹形結構描述的快照模型中對應的節(jié)點及其更新類型;根據(jù)所述更新類型,依次對所述狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備的狀態(tài)數(shù)據(jù)進行更新。本發(fā)明中,可以快速的確定狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備及其更新類型,只需要對狀態(tài)數(shù)據(jù)發(fā)生變化的虛擬設備對應的狀態(tài)數(shù)據(jù)進行更新即可,所以在虛擬設備的數(shù)量增加時同樣可以快速實現(xiàn)虛擬設備狀態(tài)數(shù)據(jù)的更新。
文檔編號G06F11/10GK102929745SQ20121036385
公開日2013年2月13日 申請日期2012年9月26日 優(yōu)先權日2012年9月26日
發(fā)明者許力, 張霞 申請人:東軟集團股份有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 惠州市| 无极县| 朔州市| 镇江市| 桂阳县| 太仓市| 穆棱市| 花垣县| 揭西县| 涿州市| 舒兰市| 绥宁县| 酉阳| 竹山县| 滦南县| 万宁市| 沂南县| 哈密市| 宁强县| 遂溪县| 洞头县| 资溪县| 云安县| 龙州县| 苍梧县| 东阿县| 荣成市| 营口市| 邵东县| 商丘市| 宝鸡市| 大田县| 广饶县| 东乌珠穆沁旗| 合川市| 喀喇沁旗| 高淳县| 东阳市| 齐齐哈尔市| 寿宁县| 赣州市|