專利名稱:一種與業(yè)務無關的拓撲圖形增量更新方法
技術領域:
本發(fā)明涉及的是一種對計算機系統(tǒng)的拓撲圖形信息進行更新與展現(xiàn)的方法,具體涉及的一種與業(yè)務無關的拓撲圖形增量更新方法。
背景技術:
如今,種類繁多的信息源產生的大量數據,遠遠超出了人腦分析解釋這些數據的能力??梢暬夹g作為解釋大量數據最有效的手段而率先被科學與工程計算領域采用,可視化把數據轉換成圖形,給予人們深刻與意想不到的洞察力,在很多領域使得研究方式發(fā)生了根本變化??梢暬夹g的應用大至高速飛行模擬,小至分子結構的演示,無處不在。在互聯(lián)網時代,可視化與網絡技術結合使遠程可視化服務成為現(xiàn)實。圖形展現(xiàn)作為可視化的一個非常重要的組成部分,它使得數據可以借助于圖形化手段,清晰有效地表達與溝通信息。同時,在實際情況中,圖形數據往往存儲在服務端,而圖 形展示常常需要運行在客戶端上,這就需要對數據更新進行針對性的設計,從而使得圖形展示的更新變得快速、高效。增量更新是指在進行更新操作時,只更新需要改變的地方,不需要更新或者已經更新過的地方則不會重復更新,增量更新與完全更新相對。這種更新的概念應用范圍比較廣泛,凡是需要進行數據更新的地方都會用到,如軟件更新、數據庫更新、殺毒軟件的病毒庫更新、CMS更新和路由表更新等,其特點1.只更新需要更新的地方;2.相對于完全更新更快捷,處理量減少;3.采用增量更新需要在更新前設定規(guī)則,規(guī)定更新的策略。因此,現(xiàn)有圖形展現(xiàn)有待需要一種與具體業(yè)務無關的拓撲圖形增量更新方法,來提高了服務端的穩(wěn)定性,減輕了服務端的負擔。
發(fā)明內容
鑒于上述,本發(fā)明提供目的在于實現(xiàn)一種與具體業(yè)務無關的拓撲圖形增量更新方法,簡化了服務端的實現(xiàn),減輕了服務端的負擔,提高了服務端的穩(wěn)定性,其概念清晰、實現(xiàn)簡單、準確率高。為了實現(xiàn)上述目的,本發(fā)明是通過如下的技術方案來實現(xiàn)
一種與業(yè)務無關的拓撲圖形增量更新方法,其方法包括首先,通過拓撲圖形信息描述文件對拓撲圖形進行描述,由服務端定時或按需抽取出最新的拓撲圖形信息,客戶端獲取最新的拓撲圖形信息后交由拓撲圖形數據解析器解析出包含節(jié)點和連接關系的具體圖形信息,并與原有圖形進行比較,分析出圖形變化的增量信息(包括圖形對象的新增、修改、刪除等);然后再由圖形生成模塊根據增量信息修改原有圖形,在最大程度上保證與原有圖形一致的基礎上,生成最新的拓撲圖形。所述拓撲圖形信息描述文件,僅記錄拓撲圖形數據中與業(yè)務無關的信息。進一步的,所述拓撲圖形信息描述文件是用XML語言以設備無關的數據描述形式來記錄拓撲圖形信息。
進一步的,所述拓撲圖形信息描述文件,以XML文件的形式進行持久化。進一步的,所述拓撲圖形信息描述文件通過壓縮的XML形式進行持久化。進一步的,所述拓撲圖形信息描述文件是由服務端定時或按需抽取,形成該文件,所述拓撲圖形數據解析器采用反序列化拓撲圖形信息描述文件來獲取圖形信息。所述圖形生成模塊將拓撲數據以圖形化的方式進行展示,并且用戶可通過圖形化的方式來查看、編輯拓撲數據。所述圖形生成模塊,僅對拓撲圖形進行增量更新,除此之外圖形中的所有信息將被保留。本發(fā)明服務端的工作簡化為定時或按需抽取最新圖形數據,形成拓撲圖形數據描述信息;簡化了服務端的實現(xiàn),減輕了服務端的負擔,提高了服務端的穩(wěn)定性;客戶端獲取圖形數據描述信息后進行分析以及生成圖形,充分利用了客戶端的計算能力,其具有概念清晰、實現(xiàn)簡單、準確率高的優(yōu)點。
下面結合附圖和具體實施方式
來詳細說明本發(fā)明;
圖I為發(fā)明實施例提供的方法的流程圖。
具體實施例方式為使本發(fā)明實現(xiàn)的技術手段、創(chuàng)作特征、達成目的與功效易于明白了解,下面結合具體實施方式
,進一步闡述本發(fā)明。參見圖I所示,下面以某業(yè)務系統(tǒng)中的一張圖形的描述與展現(xiàn)為例,描述該與業(yè)務無關的拓撲圖形增量更新方法流程中的各步驟
(1)服務端定時或按需抽取最新圖形數據,形成拓撲圖形數據描述信息;
(2)客戶端獲取拓撲圖形數據描述信息,交由拓撲圖形數據解析器進行反序列化,并分析出圖形增量信息。(3)客戶端的圖形生成模塊根據圖形增量信息修改原有圖形,在最大程度上保證與原有圖形一致的基礎上,生成最新的拓撲圖形。為更詳細說明本發(fā)明,本實施例的詳細具體方法如下
服務端抽取最新的拓撲圖形數據(包含節(jié)點和連接信息),形成拓撲圖形數據描述;定義拓撲圖形數據描述格式,包括
在設計時,用XML來描述拓撲圖形數據,第一行對拓撲圖形數據描述文件進行聲明,定義XML版本為I. 0,所使用編碼為UTF-8 ;
第二行,描述該文檔的根元素,定義根元素的名稱為“Topology”,并為其定義屬性,包
括
在“Topology”元素上定義名為“time”的屬性,該屬性的值為圖形拓撲數據的生成時間。在根元素“Topology”下定義名為“Nodes”的元素,以描述節(jié)點信息。并為其定義屬性,包括
在“Nodes”元素上定義名為“count”的屬性,該屬性的值為節(jié)點數量。
根據抽取出來的每一個節(jié)點的信息,在元素“Nodes”下定義名為“Node”的元素,以表示每一個節(jié)點,并為其定義屬性,包括
在“Node”元素上定義名為“obj_id”的屬性,以指定節(jié)點的唯一標識;
在“Node”元素上定義名為“name”的屬性,以指定節(jié)點的名稱;
在“Node”元素上定義名為“type”的屬性,以指定節(jié)點的類型;
在“Node”元素上還可以根據實際需要增加其他信息,如節(jié)點的位置等;
在根元素“Topology”下定義名為“Links”的元素,以描述連接信息;并為其定義屬性,包括
在“Links”元素上定義名為“count”的屬性,該屬性的值為連接數量。 根據抽取出來的每一條連接的信息,在元素“Links”下定義名為“Link”的元素,以表示每一條連接信息,并為其定義屬性,包括在“Link”元素上定義名為“obj_id”的屬性,以指定連接的唯一標識。在“Link”元素上定義名為“name”的屬性,以指定連接的名稱。在“Link”元素上定義名為“type”的屬性,以指定連接的類型。在“Link”元素上定義名為“start_node”的屬性,以指定連接的起始節(jié)點。在“Link”元素上定義名為“end_node”的屬性,以指定連接的終止節(jié)點。設計完成的拓撲圖形信息的描述文件,可以以XML文件的形式進行持久化,為加快網絡傳輸速度,也可以將其壓縮后進行持久化??蛻舳双@取最新的拓撲圖形數據描述,交由拓撲圖形數據解析器分析出圖形變化的增量信息,再通過圖形生成模塊生成最新的拓撲圖形。定義拓撲圖形數據解析器,包括
拓撲圖形數據解析器對拓撲圖形數據的描述文件進行反序列化和分析,包括
拓撲圖形數據解析器讀取拓撲圖形數據的描述文件(XML文件或者壓縮后的XML文件),將描述文件所包含的各項參數信息進行反序列化。拓撲圖形數據解析器根據讀取到的參數,獲取最新的圖形對象信息,并和原有的圖形進行比較,分析出增量更新信息(包括節(jié)點和連接關系的增加、修改、刪除等)。其具體過程為
I、為原有的圖形對象(包括節(jié)點和連接)建立散列表,關鍵碼值為圖形對象(包括節(jié)點和連接)的唯一 ID。2、將最新的圖形對象信息(包括節(jié)點和連接)中的每條記錄與散列表中的數據進行對比,如果該條數據在散列表中不存在,則該條數據是新增的,如果該條數據在散列表中存在,但屬性不一致,則該條數據是修改的。3、比較完成后在散列表中查詢沒有匹配過的數據,這些數據在新的圖形中已不存在,應該被刪除。根據拓撲圖形數據解析器分析出的圖形增量信息,結合圖形布局算法,對原有的圖形進行增量更新,在最大程度上保證與原有圖形一致的基礎上,生成最新的拓撲圖形,具體過程為
I、鎖定未發(fā)生變化的圖形對象,以保證重新布局圖形時這些圖形對象不會發(fā)生變化。2、刪除圖形中已不存在的圖形對象。
3、對于發(fā)生變化的圖形對象,修改屬性。4、添加新增圖形對象,并重新布局圖形,如果新增的節(jié)點具有位置信息,則根據位置信息布局該節(jié)點,如果沒有位置,則根據實際業(yè)務指定的布局規(guī)則(如網格布局、樹形布局等)進行增量的圖形布局,生成最新的圖形。本發(fā)明服務端的工作簡化為定時或按需抽取最新圖形數據,形成拓撲圖形數據描述信息;簡化了服務端的實現(xiàn),減輕了服務端的負擔,提高了服務端的穩(wěn)定性;客戶端獲取圖形數據描述信息后進行分析以及生成圖形,充分利用了客戶端的計算能力。以上顯示和描述了本發(fā)明的基本原理和主要特征和本發(fā)明的優(yōu)點。本行業(yè)的技術人員應該了解,本發(fā)明不受上述實施例的限制,上述實施例和說明書中描述的只是說明本發(fā)明的原理,在不脫離本發(fā)明精神和范圍的前提下,本發(fā)明還會有各種變化和改進,這些變化和改進都落入要求保護的本發(fā)明范圍內。本發(fā)明要求保護范圍由所附的權利要求書及其 等效物界定。
權利要求
1.一種與業(yè)務無關的拓撲圖形增量更新方法,其特征在于其方法包括首先,通過拓撲圖形信息描述文件對拓撲圖形進行描述,由服務端定時或按需抽取出最新的拓撲圖形信息,客戶端獲取最新的拓撲圖形信息后交由拓撲圖形數據解析器解析出包含節(jié)點和連接關系的具體圖形信息,并與原有圖形進行比較,分析出圖形變化的增量信息;然后再由圖形生成模塊根據增量信息修改原有圖形,在最大程度上保證與原有圖形一致的基礎上,生成最新的拓撲圖形。
2.根據權利要求I所述的增量更新方法,其特征在于,所述拓撲圖形信息描述文件是用XML語言以設備無關的數據描述形式來記錄拓撲圖形信息。
3.根據權利要求I或2所述的增量更新方法,其特征在于,所述拓撲圖形信息描述文件,僅記錄拓撲圖形數據中與業(yè)務無關的信息。
4.根據權利要求I或2所述的增量更新方法,其特征在于,所述拓撲圖形信息描述文件,以XML文件的形式進行持久化。
5.根據權利要求I或2所述的增量更新方法,其特征在于,所述拓撲圖形信息描述文件通過壓縮的XML形式進行持久化。
6.根據權利要求I或2所述的增量更新方法,其特征在于,所述拓撲圖形信息描述文件是由服務端定時或按需抽取,形成該文件。
7.根據權利要求I所述的增量更新方法,其特征在于,所述拓撲圖形數據解析器采用反序列化拓撲圖形信息描述文件來獲取圖形信息。
8.根據權利要求I或7所述的增量更新方法,其特征在于,所述拓撲圖形數據解析器獲取最新的拓撲圖形信息,并和原有的圖形進行比較,分析出增量更新信息的具體方法為 (1)為原有的圖形對象包括節(jié)點和連接關系建立散列表,關鍵碼值為圖形對象包括節(jié)點和連接關系的唯一 ID ; (2)將最新的圖形對象信息包括節(jié)點和連接關系的具體圖形信息中的每條記錄與散列表中的數據進行對比,如果該條數據在散列表中不存在,則該條數據是新增的,如果該條數據在散列表中存在,但屬性不一致,則該條數據是修改的; (3)比較完成后在散列表中查詢沒有匹配過的數據,這些數據在新的圖形中已不存在,應該被刪除。
9.根據權利要求I所述的增量更新方法,其特征在于,所述圖形生成模塊將拓撲數據以圖形化的方式進行展示,并且用戶可通過圖形化的方式來查看、編輯拓撲數據。
10.根據權利要求I或9所述的增量更新方法,其特征在于,所述圖形生成模塊,僅對拓撲圖形進行增量更新,除此之外圖形中的所有信息將被保留。
全文摘要
本發(fā)明公開了一種與業(yè)務無關的拓撲圖形的增量更新方法,該方法通過拓撲圖形信息描述文件對拓撲圖形進行描述,由服務端定時或按需抽取出最新的拓撲圖形信息,客戶端獲取最新的拓撲圖形信息后交由圖形數據解析器解析出包含節(jié)點和連接關系的具體圖形信息,并與原有圖形進行比較,分析出圖形變化的增量信息(包括圖形對象的新增、修改、刪除等);然后再由圖形生成模塊根據增量信息修改原有圖形,在最大程度上保證與原有圖形一致的基礎上,生成最新的拓撲圖形。本發(fā)明通過上述方法簡化了服務端的實現(xiàn),減輕了服務端的負擔,提高了服務端的穩(wěn)定性,充分利用了客戶端的計算能力。
文檔編號G06F17/30GK102750330SQ201210174728
公開日2012年10月24日 申請日期2012年5月31日 優(yōu)先權日2012年5月31日
發(fā)明者孟慶強, 錢蔚 申請人:南京南瑞集團公司, 國網電力科學研究院