一種基于模型簇的配電網(wǎng)模型發(fā)布方法
【專利摘要】本發(fā)明涉及一種基于模型簇的配電網(wǎng)模型發(fā)布方法,其特征在于:通過模型發(fā)布服務來處理客戶端的模型發(fā)布請求;模型發(fā)布服務根據(jù)總觸發(fā)關系圖和總外鍵約束關系圖,將請求中待同步的模型表組織構建為觸發(fā)關系圖和外鍵約束關系圖,從而按觸發(fā)關系和外鍵約束關系將待同步的模型表進行了排序組織;根據(jù)觸發(fā)關系圖和外鍵關系圖,將所有差異模型描述信息組織為一個個的模型簇,達到了將有關聯(lián)關系的差異模型描述信息組織為一個單位的效果;以模型簇為單位,轉(zhuǎn)換對應的模型差異描述信息為SQL語句。一個模型簇對應一個SQL語句塊,從而達到了以模型簇為單位的同步效果。以模型簇為單位進行模型發(fā)布,出現(xiàn)錯誤時,當前模型簇將整體回退,避免了模型不完整。
【專利說明】一種基于模型簇的配電網(wǎng)模型發(fā)布方法
[0001]
【技術領域】
[0002]本發(fā)明屬于電力系統(tǒng)自動化配電網(wǎng)模型管理【技術領域】,尤指一種基于模型簇的配電網(wǎng)模型發(fā)布方法。
[0003]
【背景技術】
[0004]針對配電網(wǎng)網(wǎng)絡及拓撲變化頻繁的情況,為降低在運行系統(tǒng)上進行模型維護的風險,目前一般的處理方式是將模型維護在調(diào)試系統(tǒng)上進行,完成后再將改動部分發(fā)布到運行系統(tǒng)上。
[0005]現(xiàn)有的模型發(fā)布方式一般按表進行,這種發(fā)布方式邏輯較為簡單。但由于表與表之間多具有觸發(fā)關系、外鍵約束等,如果在發(fā)布過程中出現(xiàn)錯誤,可能會導致運行系統(tǒng)出現(xiàn)模型不完整的問題。
[0006]
【發(fā)明內(nèi)容】
[0007]本發(fā)明的目的是提供一種基于模型簇的配電網(wǎng)模型發(fā)布方法,解決調(diào)試系統(tǒng)向運行系統(tǒng)的模型發(fā)布過程中可能出現(xiàn)的模型不完整的問題。
[0008]為了實現(xiàn)上述目的,本發(fā)明所采取的技術方案是:一種基于模型簇的配電網(wǎng)模型發(fā)布方法,其特征在于,包括如下步驟:
(1)通過模型發(fā)布服務接收并處理客戶端的模型發(fā)布請求;
(2)模型發(fā)布服務根據(jù)待同步的模型表之間的觸發(fā)關系構建總觸發(fā)關系圖,根據(jù)待同步的模型表之間的外鍵約束關系構建總外鍵約束關系圖;
(3)客戶端將調(diào)試系統(tǒng)和運行系統(tǒng)中差異模型描述信息提交給模型發(fā)布服務,差異模型描述信息按表分為若干個邏輯塊,并構建為差異模型表;
(4)將所有差異模型表的表名代入到總觸發(fā)關系圖中,組織得到差異模型表對應的觸發(fā)關系圖;將所有差異模型表的表名代入到總外鍵約束關系圖中,組織得到差異模型表對應的外鍵約束關系圖;
(5 )根據(jù)觸發(fā)關系圖和外鍵約束關系圖,將差異模型描述信息組織為若干個模型簇;以模型簇為單位,將模型簇的模型對應的模型差異描述信息轉(zhuǎn)換為SQL語句;
(6)首先同步外鍵約束關系的所有模型簇;無錯誤,再同步觸發(fā)關系的所有模型簇;同步過程中,若外鍵約束關系模型簇同步出現(xiàn)錯誤,同步中止;若觸發(fā)關系模型簇同步出錯,當前模型簇整體回退,并繼續(xù)同步下一個模型簇。
[0009]前述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,在步驟(1)中,在調(diào)試系統(tǒng)上駐留模型發(fā)布服務進程,以負責處理客戶端的模型發(fā)布請求。
[0010]前述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,在步驟(5)中,單個模型簇將有關聯(lián)關系的差異模型描述信息組織為一個單位,所述差異模型描述信息為在調(diào)試系統(tǒng)和運行系統(tǒng)中有差異的模型描述信息,每個差異模型描述信息包括域名及某設備在調(diào)試系統(tǒng)和運行系統(tǒng)中的對應的屬性值。“關聯(lián)關系”應指觸發(fā)關系或外鍵約束關系。
[0011]前述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,在步驟(2)中,總觸發(fā)關系圖由多個關系樹組成,模型表對應于關系樹的節(jié)點,每個觸發(fā)關系中的父表和子表分別對應樹的父節(jié)點和子節(jié)點;總外鍵約束關系圖由多個關系樹組成,每個外鍵約束關系中的外鍵表和主鍵表分別對應樹的父節(jié)點和子節(jié)點。
[0012]前述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,在步驟(3)中,每個邏輯塊中包含若干個屬于同一張差異模型表的差異模型描述信息。
[0013]前述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,在步驟(4)中,在觸發(fā)關系圖中已有的差異模型表不會加入外鍵約束關系圖。
[0014]前述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,在步驟(5)中,根據(jù)觸發(fā)關系圖和外鍵約束關系圖組織模型簇的方法為:根據(jù)觸發(fā)關系圖,以每個關系樹的根節(jié)點對應的差異模型表為起點,向葉節(jié)點方向追溯,以此表的差異模型描述信息為單位,組織所有模型簇;根據(jù)外鍵約束關系圖,以每個關系樹的葉節(jié)點對應的差異模型表為起點,向根節(jié)點方向追溯,以起點表的差異模型描述信息為單位,組織所有模型簇。“差異模型表”就是指在兩個系統(tǒng)中有差異的模型表。
[0015]前述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,在步驟(5)中,單個模型簇對應一個SQL語句塊。
[0016]本發(fā)明的工作原理為:
模型發(fā)布服務根據(jù)模型表之間的觸發(fā)關系構建總觸發(fā)關系圖,根據(jù)模型表之間的外鍵約束關系構建總外鍵約束關系圖,收到客戶端請求后,將請求中的差異模型表按總關系圖分別構建請求中差異模型表的觸發(fā)關系圖和外鍵約束關系圖。為避免模型出現(xiàn)冗余影響模型發(fā)布,在觸發(fā)關系圖中已有的表不會加入外鍵約束關系圖。再將差異模型描述信息按觸發(fā)關系圖和外鍵約束關系圖組織模型簇。
[0017]模型簇組織完成后,將模型簇中的模型對應的模型差異描述信息為SQL語句。一個模型簇對應一個SQL語句塊。外鍵約束關系圖中表的同步的優(yōu)先級高于觸發(fā)關系圖中的表。待外鍵約束關系模型簇順利同步完成,再同步觸發(fā)關系模型簇。在同步過程中,若外鍵約束關系模型簇同步出現(xiàn)錯誤,同步中止,若觸發(fā)關系模型簇同步出錯,當前模型簇將整體回退,并繼續(xù)同步。
[0018]本發(fā)明的所達到的有益效果:
采用本發(fā)明的方法,以模型簇為單位進行模型發(fā)布,當模型發(fā)布出錯時,該模型簇將整體回退。避免了運行系統(tǒng)中模型的不完整性,同時可快速定位出錯模型,方便用戶對該錯誤做出修正或其他必要的措施。
[0019]
【專利附圖】
【附圖說明】
[0020]圖1為本發(fā)明的一個觸發(fā)關系的模型簇示意圖。
[0021]圖2為本發(fā)明的一個外鍵約束關系的模型簇示意圖。
[0022]圖3為本發(fā)明的一種基于模型簇的配電網(wǎng)模型發(fā)布方法流程圖。
[0023]
【具體實施方式】
[0024]下面結合附圖對本發(fā)明作進一步描述。以下實施例僅用于更加清楚地說明本發(fā)明的技術方案,而不能以此來限制本發(fā)明的保護范圍。
[0025]本發(fā)明提供一種基于模型簇的配電網(wǎng)模型發(fā)布方法。在本發(fā)明中模型簇是指特定模型的集合,該集合有兩種類型:觸發(fā)關系對象的集合和外鍵約束關系對象的集合。觸發(fā)關系對象的集合指以某模型為起點,所觸發(fā)生成的所有模型,如圖1所示;外鍵約束對象的集合指以某模型為起點,以當前表為外鍵表查找其主鍵表對應的模型,直到該集合中所有外鍵表的主鍵表所對應的模型都包含在該集合中,如圖2所示。本方法包含以下步驟:
1)在調(diào)試系統(tǒng)上駐留模型發(fā)布服務進程,負責處理模型發(fā)布請求。
[0026]2)模型發(fā)布服務啟動后根據(jù)模型表之間的觸發(fā)關系構建總觸發(fā)關系圖。該圖由多個關系樹組成。模型表對應于關系樹的節(jié)點,每個觸發(fā)關系中的父表和子表分別對應樹的父節(jié)點和子節(jié)點。
[0027]3)根據(jù)模型表之間的外鍵約束關系構建總外鍵約束關系圖。該圖由多個關系樹組成,每個外鍵約束關系中的外鍵表和主鍵表分別對應樹的父節(jié)點和子節(jié)點。
[0028]4)客戶端將兩個系統(tǒng)(調(diào)試系統(tǒng)和運行系統(tǒng))中有差異的模型描述信息提交給模型發(fā)布服務。差異信息按表分為若干個邏輯塊,每個邏輯塊中包含若干個屬于同一張模型表的差異模型描述信息,每個描述信息包含域名及在兩個系統(tǒng)中對應的值。
[0029]5)將所有差異模型表的表名代入到總觸發(fā)關系圖中,組織得到差異模型表對應的觸發(fā)關系圖。
[0030]6)將所有差異模型表的表名代入到總外鍵約束關系圖中,組織得到差異模型表對應的外鍵約束關系圖。在觸發(fā)關系圖中已有的表不會加入外鍵約束關系圖。
[0031]7)根據(jù)觸發(fā)關系圖,以每個關系樹的根節(jié)點所對應的模型表為起點,向葉節(jié)點方向追溯,以此表的差異模型描述信息為單位,組織所有模型簇。
[0032]8)根據(jù)外鍵約束關系圖,以每個關系樹的葉節(jié)點對應的模型表為起點,向根節(jié)點方向追溯,以起點表的差異模型描述信息為單位,組織所有模型簇。
[0033]9)將模型簇中的模型對應的模型差異描述信息轉(zhuǎn)換為SQL語句。一個模型簇對應一個SQL語句塊。首先同步外鍵約束關系的所有模型簇。無錯誤,再同步觸發(fā)關系的所有模型簇。同步過程中,若外鍵約束關系模型簇同步出現(xiàn)錯誤,同步中止;若觸發(fā)關系模型簇同步出錯,當前模型簇將整體回退,并繼續(xù)同步下一個模型簇。
[0034]基于模型簇的模型發(fā)布方法的原理如圖3所示。模型發(fā)布服務可支持調(diào)試系統(tǒng)到運行系統(tǒng)的模型發(fā)布,也可以用于其他有模型數(shù)據(jù)發(fā)布需求的系統(tǒng):即已做好模型維護的系統(tǒng)(相當于調(diào)試系統(tǒng))和待同步模型的系統(tǒng)(相當于運行系統(tǒng))。
[0035]模型發(fā)布服務接收來自客戶端的模型發(fā)布請求,解析該請求中所需同步的差異模型描述信息。根據(jù)待同步的模型表分別構建觸發(fā)關系圖和外鍵約束關系圖,隨后將差異模型描述信息按觸發(fā)關系圖和外鍵約束關系圖組織模型簇。所有模型簇組織完成后,將模型簇中各個模型對應的模型差異描述信息轉(zhuǎn)換為SQL語句。一個模型簇對應一個SQL語句塊。外鍵約束關系圖中表的同步的優(yōu)先級高于觸發(fā)關系圖中的表。待外鍵約束關系模型簇順利同步完成,再同步觸發(fā)關系模型簇。在同步過程中,若外鍵約束關系模型簇同步出現(xiàn)錯誤,同步中止,若觸發(fā)關系模型簇同步出錯,當前模型簇將整體回退,并繼續(xù)同步下一個模型簇。服務程序會向客戶端返回出錯信息,包括相應的模型簇的描述信息,以方便用戶檢查。
[0036]以上顯示和描述了本發(fā)明的基本原理、主要特征及優(yōu)點。本行業(yè)的技術人員應該了解,本發(fā)明不受上述實施例的限制,上述實施例和說明書中描述的只是說明本發(fā)明的原理,在不脫離本發(fā)明精神和范圍的前提下,本發(fā)明還會有各種變化和改進,這些變化和改進都落入要求保護的本發(fā)明范圍內(nèi)。本發(fā)明要求保護范圍由所附的權利要求書及其等效物界定。
【權利要求】
1.一種基于模型簇的配電網(wǎng)模型發(fā)布方法,其特征在于,包括如下步驟: (1)通過模型發(fā)布服務接收并處理客戶端的模型發(fā)布請求; (2)模型發(fā)布服務根據(jù)待同步的模型表之間的觸發(fā)關系構建總觸發(fā)關系圖,根據(jù)待同步的模型表之間的外鍵約束關系構建總外鍵約束關系圖; (3)客戶端將調(diào)試系統(tǒng)和運行系統(tǒng)中差異模型描述信息提交給模型發(fā)布服務,差異模型描述信息按表分為若干個邏輯塊,并構建為差異模型表; (4)將所有差異模型表的表名代入到總觸發(fā)關系圖中,組織得到差異模型表對應的觸發(fā)關系圖;將所有差異模型表的表名代入到總外鍵約束關系圖中,組織得到差異模型表對應的外鍵約束關系圖; (5 )根據(jù)觸發(fā)關系圖和外鍵約束關系圖,將差異模型描述信息組織為若干個模型簇;以模型簇為單位,將模型簇的模型對應的模型差異描述信息轉(zhuǎn)換為SQL語句; (6)首先同步外鍵約束關系的所有模型簇;無錯誤,再同步觸發(fā)關系的所有模型簇;同步過程中,若外鍵約束關系模型簇同步出現(xiàn)錯誤,同步中止;若觸發(fā)關系模型簇同步出錯,當前模型簇整體回退,并繼續(xù)同步下一個模型簇。
2.根據(jù)權利要求1所述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,其特征在于,在步驟(I)中,在調(diào)試系統(tǒng)上駐留模型發(fā)布服務進程,以負責處理客戶端的模型發(fā)布請求。
3.根據(jù)權利要求1所述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,其特征在于,在步驟(5 )中,單個模型簇將有關聯(lián)關系的差異模型描述信息組織為一個單位,所述差異模型描述信息為在調(diào)試系統(tǒng)和運行系統(tǒng)中有差異的模型描述信息,每個差異模型描述信息包括域名及某設備在調(diào)試系統(tǒng)和運行系統(tǒng)中的屬性值。
4.根據(jù)權利要求1所述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,其特征在于,在步驟(2)中,總觸發(fā)關系圖由多個關系樹組成,模型表對應于關系樹的節(jié)點,每個觸發(fā)關系中的父表和子表分別對應樹的父節(jié)點和子節(jié)點;總外鍵約束關系圖由多個關系樹組成,每個外鍵約束關系中的外鍵表和主鍵表分別對應樹的父節(jié)點和子節(jié)點。
5.根據(jù)權利要求1所述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,其特征在于,在步驟(3)中,每個邏輯塊中包含若干個屬于同一張差異模型表的差異模型描述信息。
6.根據(jù)權利要求1所述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,其特征在于,在步驟(4 )中,在觸發(fā)關系圖中已有的差異模型表不會加入外鍵約束關系圖。
7.根據(jù)權利要求1所述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,其特征在于,在步驟(5)中,根據(jù)觸發(fā)關系圖和外鍵約束關系圖組織模型簇的方法為:根據(jù)觸發(fā)關系圖,以每個關系樹的根節(jié)點對應的差異模型表為起點,向葉節(jié)點方向追溯,以此表的差異模型描述信息為單位,組織所有模型簇;根據(jù)外鍵約束關系圖,以每個關系樹的葉節(jié)點對應的差異模型表為起點,向根節(jié)點方向追溯,以起點表的差異模型描述信息為單位,組織所有模型簇。
8.根據(jù)權利要求1所述的一種基于模型簇的配電網(wǎng)模型發(fā)布方法,其特征在于,在步驟(5)中,單個模型簇對應一個SQL語句塊。
【文檔編號】G06F17/30GK104299171SQ201410563784
【公開日】2015年1月21日 申請日期:2014年10月21日 優(yōu)先權日:2014年10月21日
【發(fā)明者】王昌頻, 季惠英, 季學純 申請人:國電南瑞科技股份有限公司, 江蘇省電力公司, 江蘇省電力公司蘇州供電公司