本發明專利技術公開了一種多處理器實時系統中的更新事務分派方法,包括以下步驟:對每項更新事務的密度進行統計,生成更新事務密度表;將每項更新事務分派到指定處理器上,生成更新事務與處理器分派表;當出現異常情況時,根據更新事務與處理器分派表的查詢結果獲取更新事務分派結果;將本發明專利技術所提出的更新事務分派方法應用于實時數據庫系統,可以有效節省處理器負載開銷,具有較強的實時數據并行更新能力;與現有的更新事務分派算法相比,本發明專利技術所提出的分派方法同時考慮了處理負載均衡與總體更新事務密度對單處理器負載的影響;在保證更新事務及時完成的前提下,充分考慮了更新事務密度與所分派處理器負載之間的關系和處理器低負載的要求。
【技術實現步驟摘要】
本專利技術屬于實時數據庫
,更具體地,設計一種多處理器實時系統中的更新事務分派方法。
技術介紹
數據是對現實事物的表示,數據價值已被人們所廣泛認可;由于現實事物屬性的多變性,為了更好地進行表示,數據庫系統中的數據往往具有有效期。為了實時反映現實事物信息,實時數據庫系統通過更新事務對數據進行維護,以確保數據的一致性。更新事務的及時完成是實時數據庫系統數據有效性、可用性的根本保證,而更新事務處理期間分派直接影響著事務的可調度性。現有的更新事務分派方法考慮了處理器的低負載性,但在更新事務可調度性方面無法提供準確保證;并且,現有的更新事務處理器間分派的研究多將應用場景限制于EDF(EarliestDeadlineFirst)調度或DM(DeadlineMonotonic)調度,單一場景的研究模型的研究結果實用性較低,對于不確定調度方式的實時數據庫系統而言,更新事務處理期間分派方法的選擇具有一定難度。
技術實現思路
針對現有技術的以上缺陷或改進需求,本專利技術提供了一種多處理器實時系統中的更新事務分派方法,其目的在于在保證處理器低負載的同時,提高更新實物分派的實時性。為實現上述目的,按照本專利技術的一個方面,提供了一種多處理器實時系統中的更新事務分派方法,包括如下步驟:(1)更新事務密度統計:對每項更新事務的密度進行統計,生成更新事務密度表,并按照更新事務密度表根據應用需求對實時更新數據進行排序;(2)單項事務處理器間分派處理:根據更新事務的密度表將各項更新事務分派到處理器上,并生成更新事務分派表;(3)異常情況處理:當更新事務分派出現異常無法完全分派時,根據更新事務分派表的查詢結果獲取更新事務分派結果。優選地,上述處理器實時系統中的更新事務分派方法,其步驟(1)具體包括如下子步驟:(1.1)獲得每項更新事務的執行時間T1和樣本有效時間T2;(1.2)獲取每項更新事務的密度A=T1/T2;(1.3)統計生成更新事務密度表,并按照更新事務密度表根據應用需求對實時更新數據進行排序。優選地,上述處理器實時系統中的更新事務分派方法,其步驟(2)具體包括如下子步驟:(2.1)遍歷處理器列表,找出各處理器上首個滿足(A+B)不大于1/2、且(A+B)不大于C/m的更新事務,將所述更新事務分派到對應的處理器;其中A為該項更新事務的密度,B為所選處理器當前負載,C為更新事務總密度,m為處理器總數;(2.2)對于每個處理器,找出各處理器上首個滿足(A+B)不大于1/2的更新事務,并將其分派到該處理器上;(2.3)根據上述步驟(2.1)和(2.2)的更新事物與其所分派的處理器之間的對應關系,生成更新事務分派表。優選地,上述處理器實時系統中的更新事務分派方法,其步驟(3)具體為:遍歷原始更新事務集,查詢更新事務分派結束后是否存在尚未被分派的更新事務,若是,則判定分派失敗;若否,則根據分派結果生成更新事務分派表。總體而言,通過本專利技術所構思的以上技術方案與現有技術相比,能夠取得下列有益效果:(1)本專利技術所提供的多處理器實時系統中的更新事務分派方法,與已有的更新事務分派技術相比,本專利技術所提出的方法在考慮處理器負載的基礎上,根據更新事務的密度來分派更新事務,考慮到了更新事務的可調度性,在保證事務實時性和可調度性的前提下,降低處理器負載,具有更好的實用性;(2)本專利技術所提供的多處理器實時系統中的更新事務分派方法以任一處理器負載均不大于1/2為分派條件,因此在采用EDF調度方法和DM調度方法的實時數據庫系統中均可使用,具有更好的普適性;(3)本專利技術所提供的多處理器實時系統中的更新事務分派方法,實現簡單,易于操作,便于開發人員掌握,此做法保證了使用此方法的實時數據庫系統的維護簡易性和可擴展性;綜合而言,本專利技術實現的更新事務分派方法,綜合考慮了處理器的低負載性和更新事務的可調度性;使用本專利技術所提出方法的實時數據庫系統可在更大程度上滿足更新事務的實時性需求,從而更好地確保了系統數據的準確性;并且可適用于采用EDF調度和DM調度的實時數據庫系統,具有普適性。附圖說明圖1本專利技術實施例提供的多處理器實時系統中的更新事務分派方法的流程示意圖;圖2為本專利技術實施例中更新事務密度統計處理的流程示意圖;圖3為本專利技術實施例中單項事務處理器間分派處理的流程示意圖。具體實施方式為了使本專利技術的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本專利技術進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本專利技術,并不用于限定本專利技術。此外,下面所描述的本專利技術各個實施方式中所涉及到的技術特征只要彼此之間未構成沖突就可以相互組合。本專利技術提供的更新事務分派方法適用于多處理器實時數據庫系統,綜合考慮處理器低負載性和更新事務的可調度性,包括更新事務密度統計處理、單項事務處理器間分派處理和異常情況處理;其中,更新事務密度統計處理是基礎,單項事務處理器間分派處理是分派處理方式,異常情況處理是在單項事務處理器間分派處理結果存在不確定性時所做的處理。本專利技術所提供的更新事務分派方法其流程如圖1所示,具體包括如下步驟:(1)更新事務密度統計處理:統計每項更新事務的密度,生成更新事務密度表:(1.1)計算每項更新事務密度:收集所有更新事務的執行時間和有效時間,具體子步驟如下:(1.1.1)獲得每項更新事務的執行時間T1和樣本有效時間T2;(1.1.2)獲取每項更新事務的密度A=T1/T2;其中,T1是該事務的執行時間,T2是該事務的有效期;(1.2)生成更新任務密度表:根據每項更新事務的密度,生成更新事務密度表,并按照實時數據庫設置根據應用需求對更新事務進行排序,根據排序生成更新事務密度表;(2)單項事務處理器間分派處理;將每項更新事務分派到指定處理器上,生成更新事務分派表,具體子步驟如下:(2.1)單項更新事務在多處理器平臺上的分派:依次為每一個處理器分派更新事務,具體步驟如下:(2.1.1)訪問首個負載小于1/2的處理器;(2.1.2)在上述負載小于1/2的服處理器上,查找首個滿足條件(A+B)不大于1/2(以下簡稱條件1)、且滿足條件(A+B)不大于C/m(以下簡稱條件2)的更新事務;當滿足上述兩個條件的更新事務存在,則進入步驟(2.1.3);當滿足上述兩個條件的更新事務不存在,則進入步驟(2.1.4);其中,A為該任務的密度,B為所選處理器當前負載,C為更新事務總密度,m為處理器總數;(2.1.3)將滿足步驟(2.1.2)所述兩個條件的更新事務分派到所訪問的處理器上,并進入步驟(2.1.8);(2.1.4)查找首個滿足條件1的更新事務是否存在;若是,則進入步驟(2.1.5);若否,則進入步驟(2.1.7);(2.1.5)將該更新事務分派到所訪問的處理器上,并進入步驟(2.1.6);(2.1.6)查找下一個滿足條件1的更新事務是否存在;若是,則進入步驟(2.1.7);若否,則結束;(2.1.7)訪問對應的處理器,并進入步驟(2.1.2);(2.1.8)查找下一個滿足條件1和條件2的更新事務,進入步驟(2.1.3);(2.2)統計更新事務分派結果,根據統計結果生成更新事務分派表;(3)異常情況處理:當更新事務分派出現異常,無法完全分派時,進行異常情況處理,本文檔來自技高網...

【技術保護點】
一種多處理器實時系統中的更新事務分派方法,其特征在于,包括如下步驟:(1)根據每項更新事務的密度生成更新事務密度表,并按照所述更新事務密度表根據應用需求對實時更新數據進行排序;(2)根據更新事務的密度表將各項更新事務分派到處理器上,并生成更新事務分派表;(3)當更新事務分派出現異常,無法完全分派時,根據更新事務分派表的查詢結果獲取更新事務分派結果。
【技術特征摘要】
1.一種多處理器實時系統中的更新事務分派方法,其特征在于,包括如下步驟:(1)根據每項更新事務的密度生成更新事務密度表,并按照所述更新事務密度表根據應用需求對實時更新數據進行排序;(2)根據更新事務的密度表將各項更新事務分派到處理器上,并生成更新事務分派表;(3)當更新事務分派出現異常,無法完全分派時,根據更新事務分派表的查詢結果獲取更新事務分派結果。2.如權利要求1所述的更新事務分派方法,其特征在于,所述步驟(1)包括如下子步驟:(1.1)獲取各更新事務的執行時間T1和樣本有效時間T2;(1.2)獲取各更新事務的密度A=T1/T2;(1.3)根據各更新事務的密度生成更新事務密度表,并按照更新事務密度表根據應用需求對實時更新數據進行排序。3.如權利要求1或2所述的更新事務分派方法,其特征在...
【專利技術屬性】
技術研發人員:李國徽,李劍軍,周全,鄧承剛,周春陽,
申請(專利權)人:華中科技大學,
類型:發明
國別省市:湖北;42
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。