一種基于數(shù)據(jù)來(lái)源二叉樹的電力系統(tǒng)異常數(shù)據(jù)溯源方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計(jì)算機(jī)技術(shù)領(lǐng)域,涉及一種數(shù)據(jù)異常溯源方法,特別是一種基于數(shù)據(jù)來(lái)源二叉樹的數(shù)據(jù)異常溯源方法。
【背景技術(shù)】
[0002]以博客、社會(huì)網(wǎng)絡(luò)、基于位置的服務(wù)為代表的新型信息發(fā)布方式的不斷涌現(xiàn),以及云計(jì)算、物聯(lián)網(wǎng)、移動(dòng)互聯(lián)網(wǎng)等現(xiàn)代信息技術(shù)的迅猛發(fā)展,迅速增長(zhǎng)的數(shù)據(jù)逐漸成為企業(yè)的核心資產(chǎn)。企業(yè)所需處理的數(shù)據(jù)大致來(lái)源于三個(gè)方面:(I)企業(yè)運(yùn)營(yíng)系統(tǒng)積累的數(shù)據(jù);(2)Web 2.0帶來(lái)的用戶原創(chuàng)數(shù)據(jù);(3)由感知式系統(tǒng)獲得的監(jiān)控?cái)?shù)據(jù)。企業(yè)無(wú)不希望通過這些海量多源異構(gòu)數(shù)據(jù)的聚合發(fā)現(xiàn)知識(shí),構(gòu)建企業(yè)級(jí)智能化應(yīng)用,以便更加貼近消費(fèi)者最真實(shí)的需求,從而創(chuàng)造更多的商機(jī),提升企業(yè)的競(jìng)爭(zhēng)力。
[0003]數(shù)據(jù)作為企業(yè)運(yùn)營(yíng)管理的靈魂,其質(zhì)量問題日益顯現(xiàn)并逐漸突出,這些數(shù)據(jù)質(zhì)量問題主要表現(xiàn)為數(shù)據(jù)不正確、不一致、不完整等方面,亟需一套方案對(duì)電力系統(tǒng)數(shù)據(jù)質(zhì)量進(jìn)行全程有效管理。
【發(fā)明內(nèi)容】
[0004]鑒于數(shù)據(jù)質(zhì)量問題日益突出得不到有效解決的問題,本發(fā)明的目的是提供一種基于數(shù)據(jù)來(lái)源二叉樹的電力系統(tǒng)異常數(shù)據(jù)溯源方法,通過基于數(shù)據(jù)來(lái)源樹的數(shù)據(jù)異常溯源方法來(lái)檢測(cè)數(shù)據(jù)異常,實(shí)現(xiàn)對(duì)電力行業(yè)運(yùn)行監(jiān)控的數(shù)據(jù)質(zhì)量生命周期的各階段數(shù)據(jù)異常進(jìn)行有效的跟蹤和管理,將異常數(shù)據(jù)反饋給業(yè)務(wù)部門、業(yè)務(wù)系統(tǒng)以完成異常數(shù)據(jù)反饋和修正。
[0005]本發(fā)明的目的通過以下技術(shù)方案實(shí)現(xiàn):
一種基于數(shù)據(jù)來(lái)源二叉樹的電力系統(tǒng)異常數(shù)據(jù)溯源方法,該方法首先實(shí)時(shí)獲取電力數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行標(biāo)注;然后構(gòu)建數(shù)據(jù)來(lái)源二叉樹,并將二叉樹轉(zhuǎn)換成平衡二叉樹;接著對(duì)構(gòu)建的二叉樹建立線索,方便進(jìn)行數(shù)據(jù)的逆查詢;最后完成對(duì)電力異常數(shù)據(jù)的反饋與整改;包括以下步驟:
O實(shí)時(shí)獲取電力數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行標(biāo)注;
2)構(gòu)建數(shù)據(jù)來(lái)源二叉樹,并將二叉樹轉(zhuǎn)換成平衡二叉樹,以創(chuàng)建數(shù)結(jié)點(diǎn);
3)對(duì)構(gòu)建的二叉樹建立線索,方便進(jìn)行數(shù)據(jù)的逆查詢;
4)完成對(duì)電力系統(tǒng)異常數(shù)據(jù)的反饋與整改。
[0006]本發(fā)明步驟2)中,采用二叉樹轉(zhuǎn)平衡二叉樹的算法,將數(shù)據(jù)來(lái)源二叉樹轉(zhuǎn)為平衡二叉樹,該樹滿足任何一個(gè)節(jié)點(diǎn)的左右子樹高度差的絕對(duì)值小于等于I。
[0007]步驟3)中,對(duì)二叉樹添加線索,是針對(duì)每一個(gè)節(jié)點(diǎn)添加前驅(qū)和后繼,當(dāng)平臺(tái)數(shù)據(jù)或目標(biāo)數(shù)據(jù)被修改后,逆向快速地找到修改數(shù)據(jù)的原始來(lái)源表以及原始數(shù)據(jù)。
[0008]步驟4)中,對(duì)電力系統(tǒng)異常數(shù)據(jù)的反饋與整改過程如下:匹配二叉樹頂點(diǎn)的有效數(shù)據(jù)和最底層的原始數(shù)據(jù);如果不一致,則用頂點(diǎn)的數(shù)據(jù)對(duì)最底層的原始數(shù)據(jù)進(jìn)行反饋和整改,并在展示層進(jìn)行展示;如果最底層異常數(shù)據(jù)來(lái)源于源數(shù)據(jù)層系統(tǒng),則將該整改需求分發(fā)給該異常數(shù)據(jù)源數(shù)據(jù)層系統(tǒng)進(jìn)行修改,如果最底層異常數(shù)據(jù)來(lái)源于數(shù)據(jù)倉(cāng)庫(kù)的ETL處理異常,則將該錯(cuò)誤發(fā)給數(shù)據(jù)倉(cāng)庫(kù)ETL編寫人員。
[0009]本發(fā)明主要針對(duì)企業(yè)異常數(shù)據(jù)進(jìn)行追溯,從數(shù)據(jù)寫入、數(shù)據(jù)抽取、數(shù)據(jù)清洗、數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)裝載到數(shù)據(jù)整改再到應(yīng)用展示,形成整個(gè)數(shù)據(jù)異常閉環(huán)監(jiān)測(cè)管理。在上述過程中主要通過基于數(shù)據(jù)來(lái)源樹的數(shù)據(jù)異常溯源方法來(lái)檢測(cè)數(shù)據(jù)異常,實(shí)現(xiàn)對(duì)電力行業(yè)運(yùn)行監(jiān)控的數(shù)據(jù)質(zhì)量生命周期的各階段數(shù)據(jù)異常進(jìn)行有效的跟蹤和管理,將異常數(shù)據(jù)反饋給業(yè)務(wù)部門、業(yè)務(wù)系統(tǒng)以完成異常數(shù)據(jù)反饋和修正。
[0010]本發(fā)明的有有益效果在于:通過對(duì)數(shù)據(jù)的來(lái)源追蹤,在數(shù)據(jù)共享時(shí)解決數(shù)據(jù)的可信度、質(zhì)量、版本信息等問題。在更新數(shù)據(jù)過程中,根據(jù)數(shù)據(jù)異常溯源過程能清楚的反應(yīng)出原始數(shù)據(jù)庫(kù)中數(shù)據(jù)的變化。本發(fā)明實(shí)現(xiàn)了對(duì)數(shù)據(jù)質(zhì)量生命周期的各階段數(shù)據(jù)異常進(jìn)行有效的跟蹤和管理,將異常數(shù)據(jù)反饋給相應(yīng)的業(yè)務(wù)部門、業(yè)務(wù)系統(tǒng)以完成異常數(shù)據(jù)反饋和修正,保證了企業(yè)實(shí)時(shí)數(shù)據(jù)的可靠性。
【附圖說(shuō)明】
[0011 ] 圖1為本發(fā)明的流程框架圖。
【具體實(shí)施方式】
[0012]下面結(jié)合附圖和【具體實(shí)施方式】對(duì)本發(fā)明所屬方法進(jìn)一步說(shuō)明。
[0013]—種基于數(shù)據(jù)來(lái)源二叉樹的電力系統(tǒng)異常數(shù)據(jù)溯源方法,包括:首先實(shí)時(shí)獲取電力數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行標(biāo)注;然后構(gòu)建數(shù)據(jù)來(lái)源二叉樹,以創(chuàng)建葉節(jié)點(diǎn);接著對(duì)構(gòu)建的二叉樹建立線索,方便進(jìn)行數(shù)據(jù)的逆查詢;最后完成對(duì)電力異常數(shù)據(jù)的反饋與整改。具體實(shí)施步驟如下:
O實(shí)時(shí)獲取電力數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行標(biāo)注。
[0014]2)構(gòu)建數(shù)據(jù)來(lái)源二叉樹,并將二叉樹轉(zhuǎn)換成平衡二叉樹,以創(chuàng)建數(shù)結(jié)點(diǎn)。
[0015]21)、在臨時(shí)存儲(chǔ)區(qū)中添加標(biāo)注列,將底層電力系統(tǒng)抽取的數(shù)據(jù)臨時(shí)存儲(chǔ)在此列,作為樹的最底層節(jié)點(diǎn);
22)、當(dāng)進(jìn)入數(shù)據(jù)轉(zhuǎn)換過程產(chǎn)生新的數(shù)據(jù)時(shí),記錄該新數(shù)據(jù)是由哪些葉節(jié)點(diǎn)產(chǎn)生,并將該數(shù)據(jù)視為節(jié)點(diǎn)保存在葉節(jié)點(diǎn)的上一層中;
23)、當(dāng)數(shù)據(jù)進(jìn)行增量更新時(shí),若有效存儲(chǔ)區(qū)的數(shù)據(jù)有變化,則將新的數(shù)據(jù)繼續(xù)視為上一層節(jié)點(diǎn)保存在樹中;
24)、當(dāng)數(shù)據(jù)被平臺(tái)或應(yīng)用程序調(diào)用,將平臺(tái)此數(shù)據(jù)作為樹的上一層節(jié)點(diǎn)保存在樹中;
25)、重復(fù)步驟22)、23)、24),直至數(shù)據(jù)不再被更新或調(diào)用,結(jié)束對(duì)樹節(jié)點(diǎn)的建立,認(rèn)為此數(shù)據(jù)來(lái)源樹建立完成。
[0016]26)、在所有兄弟節(jié)點(diǎn)之間加一條連接線,只保留節(jié)點(diǎn)與其長(zhǎng)子的連線,去掉該節(jié)點(diǎn)與其它孩子的連線,將樹轉(zhuǎn)化成二叉樹。
[0017]3)對(duì)構(gòu)建的二叉樹建立線索,方便進(jìn)行數(shù)據(jù)的逆查詢。
[0018]31)、輸入當(dāng)前需要添加線索的節(jié)點(diǎn);
32)、訪問該節(jié)點(diǎn),并判斷該節(jié)點(diǎn)的左孩子是否為空;若不為空,則訪問左孩子,并為當(dāng)前節(jié)點(diǎn)添加線索,獲取其左孩子節(jié)點(diǎn),并壓入棧; 33)、若該節(jié)點(diǎn)的左孩子為空,則繼續(xù)判斷其右孩子是否為空;若不為空,則訪問右孩子,并為當(dāng)前節(jié)點(diǎn)添加線索,獲取其右孩子節(jié)點(diǎn),并壓入棧;
34)、若該節(jié)點(diǎn)左右孩子均為空,則判斷棧是否為空,若棧不為空,則棧頂元素出棧,獲取其右孩子節(jié)點(diǎn),判斷其右孩子是否為空,若為空,則訪問右孩子,并為當(dāng)前節(jié)點(diǎn)添加線索,獲取其右孩子節(jié)點(diǎn),并壓棧;;
35)、若其右孩子不為空,重復(fù)執(zhí)行步驟34)。
[0019]4)完成對(duì)電力系統(tǒng)異常數(shù)據(jù)的反饋與整改。
[0020]對(duì)電力系統(tǒng)異常數(shù)據(jù)的反饋與整改過程如下:匹配二叉樹頂點(diǎn)的有效數(shù)據(jù)和最底層的原始數(shù)據(jù);如果不一致,則用頂點(diǎn)的數(shù)據(jù)對(duì)最底層的原始數(shù)據(jù)進(jìn)行反饋和整改,并在展示層進(jìn)行展示;如果最底層異常數(shù)據(jù)來(lái)源于源數(shù)據(jù)層系統(tǒng),則將該整改需求分發(fā)給該異常數(shù)據(jù)源數(shù)據(jù)層系統(tǒng)進(jìn)行修改,如果最底層異常數(shù)據(jù)來(lái)源于數(shù)據(jù)倉(cāng)庫(kù)的ETL處理異常,則將該錯(cuò)誤發(fā)給數(shù)據(jù)倉(cāng)庫(kù)ETL編寫人員。
【主權(quán)項(xiàng)】
1.一種基于數(shù)據(jù)來(lái)源二叉樹的電力系統(tǒng)異常數(shù)據(jù)溯源算法,其特征在于該方法包括以下步驟: 1)實(shí)時(shí)獲取電力數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行標(biāo)注; 2)構(gòu)建數(shù)據(jù)來(lái)源二叉樹,并將二叉樹轉(zhuǎn)換成平衡二叉樹,以創(chuàng)建數(shù)結(jié)點(diǎn); 3)對(duì)構(gòu)建的二叉樹建立線索,方便進(jìn)行數(shù)據(jù)的逆查詢; 4)完成對(duì)電力系統(tǒng)異常數(shù)據(jù)的反饋與整改。2.根據(jù)權(quán)利要求1中所述的基于數(shù)據(jù)來(lái)源二叉樹的電力系統(tǒng)異常數(shù)據(jù)溯源方法,其特征在于:所述的步驟2)中,采用二叉樹轉(zhuǎn)平衡二叉樹的算法,將數(shù)據(jù)來(lái)源二叉樹轉(zhuǎn)為平衡二叉樹,該樹滿足任何一個(gè)節(jié)點(diǎn)的左右子樹高度差的絕對(duì)值小于等于I ;具體如下: 21)在臨時(shí)存儲(chǔ)區(qū)中添加標(biāo)注列,將底層電力系統(tǒng)抽取的數(shù)據(jù)臨時(shí)存儲(chǔ)在此列,作為樹的最底層節(jié)點(diǎn); 22)當(dāng)進(jìn)入數(shù)據(jù)轉(zhuǎn)換過程產(chǎn)生新的數(shù)據(jù)時(shí),記錄該新數(shù)據(jù)是由哪些葉節(jié)點(diǎn)產(chǎn)生,并將該數(shù)據(jù)視為節(jié)點(diǎn)保存在葉節(jié)點(diǎn)的上一層中; 23)當(dāng)數(shù)據(jù)進(jìn)行增量更新時(shí),若有效存儲(chǔ)區(qū)的數(shù)據(jù)有變化,則將新的數(shù)據(jù)繼續(xù)視為上一層節(jié)點(diǎn)保存在樹中; 24)當(dāng)數(shù)據(jù)被平臺(tái)或應(yīng)用程序調(diào)用,將平臺(tái)此數(shù)據(jù)作為樹的上一層節(jié)點(diǎn)保存在樹中; 25)重復(fù)步驟22)、23)、24),直至數(shù)據(jù)不再被更新或調(diào)用,結(jié)束對(duì)樹節(jié)點(diǎn)的建立,認(rèn)為此數(shù)據(jù)來(lái)源樹建立完成; 26)在所有兄弟節(jié)點(diǎn)之間加一條連接線,只保留節(jié)點(diǎn)與其長(zhǎng)子的連線,去掉該節(jié)點(diǎn)與其它孩子的連線,將樹轉(zhuǎn)化成二叉樹。3.根據(jù)權(quán)利要求1中所述的基于數(shù)據(jù)來(lái)源二叉樹的電力系統(tǒng)異常數(shù)據(jù)溯源方法,其特征在于:所述步驟3)中,對(duì)二叉樹添加線索,是針對(duì)每一個(gè)節(jié)點(diǎn)添加前驅(qū)和后繼,當(dāng)平臺(tái)數(shù)據(jù)或目標(biāo)數(shù)據(jù)被修改后,逆向快速地找到修改數(shù)據(jù)的原始來(lái)源表以及原始數(shù)據(jù);具體如下: 31)輸入當(dāng)前需要添加線索的節(jié)點(diǎn); 32)訪問該節(jié)點(diǎn),并判斷該節(jié)點(diǎn)的左孩子是否為空;若不為空,則訪問左孩子,并為當(dāng)前節(jié)點(diǎn)添加線索,獲取其左孩子節(jié)點(diǎn),并壓入棧; 33)若該節(jié)點(diǎn)的左孩子為空,則繼續(xù)判斷其右孩子是否為空;若不為空,則訪問右孩子,并為當(dāng)前節(jié)點(diǎn)添加線索,獲取其右孩子節(jié)點(diǎn),并壓入棧; 34)若該節(jié)點(diǎn)左右孩子均為空,則判斷棧是否為空,若棧不為空,則棧頂元素出棧,獲取其右孩子節(jié)點(diǎn),判斷其右孩子是否為空,若為空,則訪問右孩子,并為當(dāng)前節(jié)點(diǎn)添加線索,獲取其右孩子節(jié)點(diǎn),并壓棧;; 35 )若其右孩子不為空,重復(fù)執(zhí)行步驟34 )。4.根據(jù)權(quán)利要求1中所述的基于數(shù)據(jù)來(lái)源二叉樹的電力系統(tǒng)異常數(shù)據(jù)溯源方法,其特征在于:所述步驟4)中,對(duì)電力系統(tǒng)異常數(shù)據(jù)的反饋與整改過程如下:匹配二叉樹頂點(diǎn)的有效數(shù)據(jù)和最底層的原始數(shù)據(jù);如果不一致,則用頂點(diǎn)的數(shù)據(jù)對(duì)最底層的原始數(shù)據(jù)進(jìn)行反饋和整改,并在展示層進(jìn)行展示;如果最底層異常數(shù)據(jù)來(lái)源于源數(shù)據(jù)層系統(tǒng),則將該整改需求分發(fā)給該異常數(shù)據(jù)源數(shù)據(jù)層系統(tǒng)進(jìn)行修改,如果最底層異常數(shù)據(jù)來(lái)源于數(shù)據(jù)倉(cāng)庫(kù)的ETL處理異常,則將該錯(cuò)誤發(fā)給數(shù)據(jù)倉(cāng)庫(kù)ETL編寫人員。
【專利摘要】本發(fā)明公開了一種基于數(shù)據(jù)來(lái)源二叉樹的電力系統(tǒng)異常數(shù)據(jù)溯源方法,該方法包括以下步驟:首先實(shí)時(shí)獲取電力數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行標(biāo)注;然后構(gòu)建數(shù)據(jù)來(lái)源二叉樹,并將二叉樹轉(zhuǎn)換成平衡二叉樹,以創(chuàng)建節(jié)點(diǎn);接著對(duì)構(gòu)建的二叉樹建立線索,方便進(jìn)行數(shù)據(jù)的逆查詢;最后完成對(duì)電力系統(tǒng)異常數(shù)據(jù)的反饋與整改。本發(fā)明實(shí)現(xiàn)了對(duì)數(shù)據(jù)質(zhì)量生命周期的各階段數(shù)據(jù)異常進(jìn)行有效的跟蹤和管理,將異常數(shù)據(jù)反饋給相應(yīng)的業(yè)務(wù)部門、業(yè)務(wù)系統(tǒng)以完成異常數(shù)據(jù)反饋和修正,保證了企業(yè)實(shí)時(shí)數(shù)據(jù)的可靠性。
【IPC分類】G06F17/30
【公開號(hào)】CN105183911
【申請(qǐng)?zhí)枴緾N201510656171
【發(fā)明人】張斌, 王成現(xiàn), 周紅林
【申請(qǐng)人】國(guó)家電網(wǎng)公司, 江蘇省電力公司, 江蘇電力信息技術(shù)有限公司
【公開日】2015年12月23日
【申請(qǐng)日】2015年10月12日