欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法

文檔序號:6439600閱讀:437來源:國知局

專利名稱::一種基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法一種基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法
技術(shù)領(lǐng)域
本發(fā)明屬于異構(gòu)污染源集成數(shù)據(jù)處理
技術(shù)領(lǐng)域
,涉及一種基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法。
背景技術(shù)
:污染源在線自動監(jiān)控(監(jiān)測)系統(tǒng)由自動監(jiān)控監(jiān)測儀器設(shè)備和監(jiān)控中心組成,一個監(jiān)測中心下有許多個監(jiān)測點,監(jiān)控中心與監(jiān)測點的關(guān)系為上位機與現(xiàn)場機的關(guān)系。污染源在線自動監(jiān)控(監(jiān)測)系統(tǒng)中,需要采集多種污染源,多種設(shè)備采集的數(shù)據(jù)。因此,需要對異構(gòu)污染源數(shù)據(jù)進行集成,采用統(tǒng)一的數(shù)據(jù)傳輸格式進行表示然后傳輸。集成數(shù)據(jù)被采集后,系統(tǒng)對數(shù)據(jù)按照用戶的需求進行解析,按照污染源的類型,數(shù)據(jù)的類別等進行分類保存。異構(gòu)污染源數(shù)據(jù)集成使用數(shù)據(jù)采集儀進行完成,集成數(shù)據(jù)使用的是污染源在線自動監(jiān)控(監(jiān)測)系統(tǒng)數(shù)據(jù)傳輸標(biāo)準(zhǔn)(HJ/T212-2005)。即在監(jiān)控點,數(shù)據(jù)采集儀從現(xiàn)場機(各種檢測設(shè)備)抽取需要的數(shù)據(jù),集成轉(zhuǎn)化為HJ/T212-2005標(biāo)準(zhǔn)的數(shù)據(jù),然后傳輸?shù)奖O(jiān)控中心,監(jiān)控中心將采集的數(shù)據(jù)進行解析存儲以及相關(guān)的統(tǒng)計。污染源在線自動監(jiān)控(監(jiān)測)系統(tǒng)數(shù)據(jù)傳輸標(biāo)準(zhǔn)(HJ/T212-2005)是我國頒布的污染源在線自動監(jiān)控(監(jiān)測)系統(tǒng)用于異構(gòu)數(shù)據(jù)源數(shù)據(jù)集成傳輸?shù)臉?biāo)準(zhǔn),規(guī)定了數(shù)據(jù)通訊的數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)結(jié)構(gòu)由包頭,數(shù)據(jù)段長度,數(shù)據(jù)段,CRC校驗,包尾組成。其中數(shù)據(jù)段用于數(shù)據(jù)和命令的傳輸。數(shù)據(jù)段由請求編號(QN),總包號(PNUM),包號(PNO),系統(tǒng)編號(ST),命令編號(CN),訪問密碼(PW),設(shè)備唯一標(biāo)識(MN),是否拆分包及應(yīng)答標(biāo)記(Flag)和指令參數(shù)(CP)組成。在數(shù)據(jù)傳輸中,主要的數(shù)據(jù)和指令在指令參數(shù)(CP)中。其中ST,CN能夠用于對數(shù)據(jù)的類別劃分。如ST=32;CN=2011表示采集的是地表水污染源的實時數(shù)據(jù)。在通訊數(shù)據(jù)中的字段與其值用“=”連接。在數(shù)據(jù)段中,同一個項目的數(shù)據(jù)不同分類值間用“,,,分隔,不同項目數(shù)據(jù)間用“;”。數(shù)據(jù)傳輸標(biāo)準(zhǔn)(耵八212-200幻對數(shù)據(jù)類型,屬性字段名稱,字段值做了具體規(guī)定;對污染物,命令等做了編碼。在采集的數(shù)據(jù)中,有的項目數(shù)據(jù)中的屬性字段對整個數(shù)據(jù)段起作用,如數(shù)據(jù)段中CP包含的屬性字段DataTime,表示的是數(shù)據(jù)采集的時間,因此定義為全局屬性字段。有的項目數(shù)據(jù)中屬性字段只在本項目內(nèi)起作用,如CP包含的屬性字段Rtd,描述的是某一種元素的實時測量數(shù)據(jù),作用范圍是每一個項目數(shù)據(jù)內(nèi)部,定義為局部屬性字段。由于需要根據(jù)用戶的需求對數(shù)據(jù)進行解析分類,而用戶的需求具有多樣性和可變性的特點,即不同的用戶關(guān)注不同的數(shù)據(jù),具有不同的需求,同時,用戶的需求隨著時間,具有的情況進行變化和拓展。因此,對異構(gòu)污染源集成數(shù)據(jù)的解析需要適應(yīng)用戶需求多樣性和可變性的特點,要求方法具有較強的通用性,即當(dāng)用戶需求發(fā)生變化時,數(shù)據(jù)解析方法不能變化。
發(fā)明內(nèi)容本發(fā)明解決的問題在于提供一種基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法,根據(jù)模板對數(shù)據(jù)進行解析,用戶需求變時,只需要添加或修改模板,,從而使方法具有很強的自適應(yīng)性,通用性和拓展性。本發(fā)明是通過以下技術(shù)方案來實現(xiàn)一種基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法,包括以下步驟1)根據(jù)用戶的需求,在異構(gòu)污染源集成數(shù)據(jù)處理器中進行以下構(gòu)建構(gòu)建用戶表,每個用戶表包含多個域,每個域存儲異構(gòu)污染源集成數(shù)據(jù)中一個屬性字段的值;構(gòu)建包含多個屬性映射的模板,模板記錄異構(gòu)污染源集成數(shù)據(jù)中的屬性字段與對應(yīng)的用戶表中的域的映射關(guān)系,一個屬性字段與用戶表中的域的對應(yīng)關(guān)系成為一個屬性映射;構(gòu)建模板表,模板表是模板的集合,保存每個用戶表唯一對應(yīng)的模板;構(gòu)建數(shù)據(jù)映射表,數(shù)據(jù)映射表保存異構(gòu)污染源集成數(shù)據(jù)與將要被保存到的用戶表的映射關(guān)系,以及用戶表和模板的唯一映射,數(shù)據(jù)映射表中的主鍵值索引為集成數(shù)據(jù)中選定的主屬性字段的值;2)在數(shù)據(jù)進行解析時,首先從待解析的異構(gòu)污染源集成數(shù)據(jù)中讀取主屬性字段的值生成數(shù)據(jù)映射表中的主鍵值索引,然后根據(jù)主鍵值索引查找數(shù)據(jù)映射表保存的異構(gòu)污染源集成數(shù)據(jù)所對應(yīng)的模板的集合,以及對應(yīng)的將被保存的用戶表,再根據(jù)模板對異構(gòu)污染源集成數(shù)據(jù)進行解析,從異構(gòu)污染源集成數(shù)據(jù)中獲取對應(yīng)屬性字段的值,待數(shù)據(jù)解析完成后,將解析好的數(shù)據(jù)存儲到對應(yīng)的用戶表中或?qū)?shù)據(jù)進行顯示。所述的模板中,一個屬性映射由四元組組成,分別為屬性字段名,對應(yīng)的用戶表中的域名,屬性字段的作用域以及屬性字段值的數(shù)據(jù)類型。所述的數(shù)據(jù)映射表包括key、tables_name和templates_name,其中key為主鍵值索引,從異構(gòu)污染源集成數(shù)據(jù)中選擇一個或者多個全局屬性字段組成;通過key索引到異構(gòu)污染源集成數(shù)據(jù)對應(yīng)的用戶表以及用于解析的模板;tables_name記錄異構(gòu)污染源集成數(shù)據(jù)對應(yīng)存儲的用戶表的表名;templates_name記錄tablesjame用戶表對應(yīng)用于數(shù)據(jù)解析的模板,多個模板按照用戶表的先后順序依次連接。在數(shù)據(jù)進行解析時,按照以下步驟進行Stepl從一條集成數(shù)據(jù)Data中取選定的用于區(qū)別數(shù)據(jù)類別的主字段屬性的值,生成數(shù)據(jù)映射表的主鍵值索引Key;St印2根據(jù)Key,從數(shù)據(jù)映射表中查找解析數(shù)據(jù)對應(yīng)的用戶表集和用戶表對應(yīng)的模板集;一條集成數(shù)據(jù)對應(yīng)的用戶表為一個或多個,一個用戶表對應(yīng)一個模板,確定模板集中元素的數(shù)量tpN;St印3將Data中的所有項目數(shù)據(jù)進行分離得到項目數(shù)據(jù)集Cell,確定Cell中元素的數(shù)量cellN;St印4從模板集取元素"Templatei,將"Templatei中屬性映射分離得到屬性映射集Tuple,確定Tuple元素數(shù)量tuN;St印5從項目數(shù)據(jù)集Cell中取元素CelljSt印6從屬性映射集Tuple中取元素Tuplek,在Cellj查找對應(yīng)的屬性的值,如找到返回屬性值Val,否則返回Val為NULL值;St印7:將Va保存到數(shù)據(jù)集合Ret[i][jHk]中,k加1,若k<tuN,轉(zhuǎn)入乂印6;否則,進入下一步;St印8:j加1,若j<cellN,轉(zhuǎn)入St印5;否則,進入下一步;St印9i加1,若i<tpN,轉(zhuǎn)入乂印4;否則,進入下一步;SteplO將Ret中解析的數(shù)據(jù)按照數(shù)據(jù)庫的格式和規(guī)范存儲到對應(yīng)的用戶表中。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益的技術(shù)效果本發(fā)明提供的基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法,首先從集成數(shù)據(jù)中讀取主屬性字段的值生成數(shù)據(jù)映射表中的主鍵值索引,然后根據(jù)主鍵值索引查找集成數(shù)據(jù)對應(yīng)保存的用戶表以及用戶表對應(yīng)的數(shù)據(jù)解析模板,最后根據(jù)模板對數(shù)據(jù)進行解析,將解析好的數(shù)據(jù)存儲到對應(yīng)的用戶表中或?qū)?shù)據(jù)進行顯示。在實際應(yīng)用中,當(dāng)用戶表增加時,只需要在模板表中添加上對應(yīng)的模板,在數(shù)據(jù)映射表中添加上集成數(shù)據(jù)與用戶表的映射即可。當(dāng)用戶表變化或拓展時,只需要修改用戶表對應(yīng)的模板,在數(shù)據(jù)映射表中修改集成數(shù)據(jù)與用戶表的映射即可。即用戶需求變時,無須修改數(shù)據(jù)解析方法,只需要簡單地在模板表中添加或修改模板,在數(shù)據(jù)映射表中添加或修改集成數(shù)據(jù)與用戶表映射即可,從而具有很強的自適應(yīng)性,通用性和拓展性。圖1為基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法的示意圖2為基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法的流程圖。具體實施方式下面結(jié)合具體的實施例對本發(fā)明做進一步的詳細(xì)說明,所述是對本發(fā)明的解釋而不是限定。為了適應(yīng)用戶需求多樣性以及變化性的要求,提出基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法,在異構(gòu)污染源集成數(shù)據(jù)處理器中進行以下構(gòu)建將根據(jù)用戶需求設(shè)計的用于存儲數(shù)據(jù)的表定義為用戶表(USERTABLES),每個用戶表包含多個域,每個域存儲異構(gòu)污染源集成數(shù)據(jù)中一個屬性字段的值。建立一個模板表(TEMPLATE。,用于保存模板,模板記錄異構(gòu)污染源集成數(shù)據(jù)中的屬性字段與對應(yīng)的用戶表中的域的映射關(guān)系,一個屬性字段與用戶表中的域的對應(yīng)關(guān)系成為一個屬性映射;構(gòu)建模板表,模板表是模板的集合,保存每個用戶表唯一對應(yīng)的模板。建立一個表保存數(shù)據(jù)跟用戶表的映射關(guān)系,描述的是一條集成數(shù)據(jù)根據(jù)用戶的需求需要保存到哪幾個用戶表中,定義為數(shù)據(jù)映射表(DATA_T0_TABLES);數(shù)據(jù)映射表保存異構(gòu)污染源集成數(shù)據(jù)與將要被保存到的用戶表的映射關(guān)系,以及用戶表和模板的唯一映射,數(shù)據(jù)映射表中的主鍵值索引為集成數(shù)據(jù)中選定的主屬性字段的值。在數(shù)據(jù)進行解析時,首先從待解析的異構(gòu)污染源集成數(shù)據(jù)中讀取主屬性字段的值生成數(shù)據(jù)映射表中的主鍵值索引,然后根據(jù)主鍵值索引查找數(shù)據(jù)映射表保存的異構(gòu)污染源集成數(shù)據(jù)所對應(yīng)的模板的集合,以及對應(yīng)的將被保存的用戶表,再根據(jù)模板對異構(gòu)污染源集成數(shù)據(jù)進行解析,從異構(gòu)污染源集成數(shù)據(jù)中獲取對應(yīng)屬性字段的值,待數(shù)據(jù)解析完成后,將解析好的數(shù)據(jù)存儲到對應(yīng)的用戶表中或?qū)?shù)據(jù)進行顯示。參見圖1,下面分別進行詳細(xì)描述1、用戶表(USERTABLES)在實際的數(shù)據(jù)解析與存儲中,不同的用戶關(guān)注的重點不同,所需的數(shù)據(jù)也不僅相同,因此,需要解析和存儲數(shù)據(jù)中的字段各不相同。例如,根據(jù)用戶的需求設(shè)計的如下用戶表Tablel(Ith—DataTime,2th—B01)Table2(lth—DataTime,2th—Rtd,3th—Flag)Tablel中的第一個域存儲數(shù)據(jù)中屬性字段DataTime的值,第二個域存儲屬性字段BOl的值。Table2中的第一個域也是存儲屬性數(shù)據(jù)中字段DataTime的值,第二個域存儲數(shù)據(jù)中所有Rtd的值,第三個域存儲Flag的值。實際應(yīng)用中,用戶的需求可能會改變或拓展,從而用戶表也隨之改變?nèi)缦耇able2(lth—DataTime,2th—Rtd,3th—Flag,4th—MN)隨著用戶需求的改變,Table2進行了拓展,Table2中加入一個新的域用于保存數(shù)據(jù)中屬性字段麗的值。2、數(shù)據(jù)映射及數(shù)據(jù)映射表數(shù)據(jù)映射記錄集成數(shù)據(jù)與數(shù)據(jù)解析后將要被保存的用戶表的對應(yīng)關(guān)系,一條集成數(shù)據(jù)中的數(shù)據(jù)解析后可以保存到多個用戶表中,因此數(shù)據(jù)映射中記錄的用戶表可以有多個,同時也記錄用戶表對應(yīng)的用于解析數(shù)據(jù)的模板集合。保存數(shù)據(jù)與用戶表的映射關(guān)系的數(shù)據(jù)映射表如下data_to_tables=(key,tables_name,templates_name)key={attrgl,...,attrgm}tables_name=Hable1,...,tabIeJtemplates_name=Hemplate1,...,templatej注attrg:異構(gòu)污染源集成數(shù)據(jù)中的全局屬性字段值key為主鍵值索引,從異構(gòu)污染源集成數(shù)據(jù)中選擇一個或者多個全局屬性字段(attrg)組成,集成數(shù)據(jù)中被選擇組成key成的全局屬性字段稱之為主屬性字段。在數(shù)據(jù)映射表中,通過key可以索引到集成數(shù)據(jù)對應(yīng)的用戶表以及用于數(shù)據(jù)解析的模板;tablemame記錄集成數(shù)據(jù)對應(yīng)存儲的用戶表的表名,可以有一個或者多個,多個表名用“,”分隔。templatesjame記錄tablemame用戶表對應(yīng)用于數(shù)據(jù)解析的模板,多個模板按照用戶表的先后順序依次用“,”連接。3、模板及模板表模板表保存每個用戶表唯一對應(yīng)的模板,模板記錄集成數(shù)據(jù)中屬性字段與對應(yīng)的用戶表中的域的映射關(guān)系。在模板中,一個屬性字段與用戶表中的域的對應(yīng)關(guān)系成為一個屬性映射,一個模板中包含一個或多個屬性映射。一個屬性映射由四元組組成,分別為屬性字段名,對應(yīng)的用戶表中的域名,屬性字段的作用域以及屬性字段值的數(shù)據(jù)類型。模板的構(gòu)建如下Template=(Qtuple1,Qtuple2,…,QtupleJQtuple1=(Attribute,Field,Scope,Datatype)注Attribute:集成數(shù)據(jù)中的屬性字段Field:用戶表中的域名Scope描述屬性字段的作用域,分為全局(GB)和局部(LC)Datatype:描述屬性字段的值的數(shù)據(jù)類型,包括整形(I),浮點型(F),字符串型⑶等實施例1在集成數(shù)據(jù)解析時,以下面具體的數(shù)據(jù)為例假設(shè)系統(tǒng)只采集廢水的實時數(shù)據(jù)與分鐘數(shù)據(jù),廢氣的實時數(shù)據(jù)與分鐘數(shù)據(jù),具體采集的4類集成數(shù)據(jù)如下廢水實時數(shù)據(jù)ST=32;CN=2011;Pff=123456;MN=88888880000276;CP=MDataTime=20090529101716;BOl-Rtd=200;OOl-Rtd=2.5,001-Flag=N;002-Rtd=2.5,002-Flag=N;003-Rtd=2.5,003-Flag=N&&廢水分鐘數(shù)據(jù)“ST=32;CN=2051;Pff=100000;MN=88888880000276;CP=MDataTime=20090529101717;BOl-Cou=200;OOl-Cou=2.5,001-Min=1.1,OOl-Avg=1.1,OOl-Max=1.1;002-Cou=2.5,002-Min=1.1,002-Avg=1.1,002-Max=1.1;003-Cou=2.5,003-Min=1.1,003-Avg=1.1,003-Max=1.1&&;廢氣實時數(shù)據(jù)ST=31;CN=2011;Pff=123456;MN=88888880030275;CP=MDataTime=20090529101712;B02-Rtd=200;SOl-Rtd=2.5,SOl-ZsRtd=1.2;S02-Rtd=2.5,502-ZsRtd=1.2;S035-Rtd=2.5,S03_ZsRtd=1.2&&;廢氣分鐘數(shù)據(jù)ST=31;CN=2051;Pff=100000;MN=88888880030275;CP=MDataTime=20090529101713;B02_Cou=200;SOl-Cou=2.5,SOl-Min=1.1,SOl-Avg=1.1,SOl-Max=1.1,SOl-ZsMin=1.1,SOl-ZsAvg=1.1,SOl-ZsMax=1.1;S02_Cou=2.5,S02_Min=1.1,S02-Avg=1.1,S02-Max=1.1,S02_ZsMin=1.1,S02-ZsAvg=1.1,S02_ZsMax=1.1;S03-Cou=2.5,S03-Min=1.1,S03_Avg=1.1,S03_Max=1.1,S03-ZsMin=1.1,503-ZsAvg=1.1,S03-ZsMax=1.1&&用戶表根據(jù)用戶的需求,將4類數(shù)據(jù)中的屬性值存儲到不同的表中,例如,用戶需要存儲廢水實時數(shù)據(jù),廢水污染物實時數(shù)據(jù),廢水分鐘數(shù)據(jù),廢水污染物分鐘數(shù)據(jù),廢氣實時數(shù)據(jù),廢氣污染物實時數(shù)據(jù),廢氣分鐘數(shù)據(jù),廢氣污染物分鐘數(shù)據(jù)共八種數(shù)據(jù),具體數(shù)據(jù)庫的表設(shè)計以及數(shù)據(jù)庫表的域字段與集成異構(gòu)數(shù)據(jù)中的屬性對應(yīng)如下廢水實時數(shù)據(jù)表(WasteWaterRtd)WasteffaterRtd(mn,data__;ime,waste_water_rtd)->Data[MN,DataTime,BOl-Rtd]廢水污染物實時數(shù)據(jù)表(WasteWaterPollutantRtd)WasteffaterPollutantRtd(mn,data_time,pollutant_code,rtd)->Data[MN,DataTime,001or002or003,Rtd]廢水分鐘數(shù)據(jù)表(WasteWaterMinute)WasteffaterMinute(mn,data_time,waste_water_cou)->Data[MN,DataTime,BOl-Cou]廢水污染物分中數(shù)據(jù)表(WasteffaterPollutantMinute)WasteffaterPollutantMinute(mn,data_time,pollutant_code,cou,min,avg,max)->Data[MN,DataTime,001or002or003,Cou,Min,Avg,Max]廢氣實時數(shù)據(jù)表(WasteGasRtd)WasteGasRtd(mn,data_time,waste_gas_rtd)->Data[MN,DataTime,B02_Rtd]廢氣污染物實時數(shù)據(jù)表(WasteGasPollutantRtd)WasteGasPollutantRtd(mn,data_time,pollutant_code,rtd)->Data[MN,DataTime,S01orS02orS03,Rtd]廢氣分鐘數(shù)據(jù)表(WasteGasMinute)WasteGasMinute(mn,data_time,waste_gas_cou)->Data[MN,DataTime,B02_Cou]廢氣污染物分鐘數(shù)據(jù)表(WasteGasPo1IutantMinute)WasteGasPollutantMinute(mn,data_time,pollutant_code,cou,min,avg,max,zsmin,zsavg,zsmax)->Data[MN,DataTime,S01orS02orS03,Cou,Min,Avg,Max,ZsMin,ZsAvg,ZsMax]數(shù)據(jù)映射及數(shù)據(jù)映射表根據(jù)算法,在明確數(shù)據(jù)類型以及用戶表后,建立數(shù)據(jù)到用戶表的數(shù)據(jù)映射,保存在數(shù)據(jù)映射表data_t0_tableS表中。在異構(gòu)集成數(shù)據(jù)中,通過ST與CN的值,可以區(qū)分廢水實時集成數(shù)據(jù),廢水分鐘集成數(shù)據(jù),廢氣實時集成數(shù)據(jù),廢氣分鐘集成數(shù)據(jù)這四類異構(gòu)集成數(shù)據(jù)。則data_t0_tableS中數(shù)據(jù)具體如下KeyTablesTemplates32,2011PollutedWaterRtd,WasteWaterPollutantRtdTemplate1,Tempiate232,2051WasteWaterMinute5WasteWaterPollutantMinuteTempiate3,Tempiate431,2011WasteGasRtd,WasteGasPollutantRtdTempiate5,Tempiate631,2051WasteGasMinute,WasteGasPollutantRtdTemplate7,Template8模板以及模板表如下權(quán)利要求1.一種基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法,其特征在于,包括以下步驟1)根據(jù)用戶的需求,在異構(gòu)污染源集成數(shù)據(jù)處理器中進行以下構(gòu)建構(gòu)建用戶表,每個用戶表包含多個域,每個域存儲異構(gòu)污染源集成數(shù)據(jù)中一個屬性字段的值;構(gòu)建包含多個屬性映射的模板,模板記錄異構(gòu)污染源集成數(shù)據(jù)中的屬性字段與對應(yīng)的用戶表中的域的映射關(guān)系,一個屬性字段與用戶表中的域的對應(yīng)關(guān)系成為一個屬性映射;構(gòu)建模板表,模板表是模板的集合,保存每個用戶表唯一對應(yīng)的模板;構(gòu)建數(shù)據(jù)映射表,數(shù)據(jù)映射表保存異構(gòu)污染源集成數(shù)據(jù)與將要被保存到的用戶表的映射關(guān)系,以及用戶表和模板的唯一映射,數(shù)據(jù)映射表中的主鍵值索引為集成數(shù)據(jù)中選定的主屬性字段的值;2)在數(shù)據(jù)進行解析時,首先從待解析的異構(gòu)污染源集成數(shù)據(jù)中讀取主屬性字段的值生成數(shù)據(jù)映射表中的主鍵值索引,然后根據(jù)主鍵值索引查找數(shù)據(jù)映射表保存的異構(gòu)污染源集成數(shù)據(jù)所對應(yīng)的模板的集合,以及對應(yīng)的將被保存的用戶表,再根據(jù)模板對異構(gòu)污染源集成數(shù)據(jù)進行解析,從異構(gòu)污染源集成數(shù)據(jù)中獲取對應(yīng)屬性字段的值,待數(shù)據(jù)解析完成后,將解析好的數(shù)據(jù)存儲到對應(yīng)的用戶表中或?qū)?shù)據(jù)進行顯示。2.如權(quán)利要求1所述的基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法,其特征在于,所述的模板中,一個屬性映射由四元組組成,分別為屬性字段名,對應(yīng)的用戶表中的域名,屬性字段的作用域以及屬性字段值的數(shù)據(jù)類型。3.如權(quán)利要求1所述的基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法,其特征在于,所述的數(shù)據(jù)映射表包括key、tables_name和templates_name,其中key為主鍵值索引,從異構(gòu)污染源集成數(shù)據(jù)中選擇一個或者多個全局屬性字段組成;通過key索引到異構(gòu)污染源集成數(shù)據(jù)對應(yīng)的用戶表以及用于解析的模板;tables_name記錄異構(gòu)污染源集成數(shù)據(jù)對應(yīng)存儲的用戶表的表名;templates_name記錄tablesjame用戶表對應(yīng)用于數(shù)據(jù)解析的模板,多個模板按照用戶表的先后順序依次連接。4.如權(quán)利要求1所述的基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法,其特征在于,在數(shù)據(jù)進行解析時,按照以下步驟進行Stepl從一條集成數(shù)據(jù)Data中取選定的用于區(qū)別數(shù)據(jù)類別的主字段屬性的值,生成數(shù)據(jù)映射表的主鍵值索引Key;St印2根據(jù)Key,從數(shù)據(jù)映射表中查找解析數(shù)據(jù)對應(yīng)的用戶表集和用戶表對應(yīng)的模板集;一條集成數(shù)據(jù)對應(yīng)的用戶表為一個或多個,一個用戶表對應(yīng)一個模板,確定模板集中元素的數(shù)量tpN;St印3將Data中的所有項目數(shù)據(jù)進行分離得到項目數(shù)據(jù)集Cell,確定Cell中元素的數(shù)量cellN;St印4從模板集取元素Templatei,將Templatei中屬性映射分離得到屬性映射集Tuple,確定Tuple元素數(shù)量tuN;St印5從項目數(shù)據(jù)集Cell中取元素CelljSt印6從屬性映射集Tuple中取元素Tuplq,在Cellj查找對應(yīng)的屬性的值,如找到返回屬性值Val,否則返回Val為NULL值;St印7=Ret[i][j][k]=Val,k加1,若讓<tuN,轉(zhuǎn)入St印6;否則,進入下一步;St印8:j加1,若j<cellN,轉(zhuǎn)入St印5;否則,進入下一步;St印9:i加1,若i<tpN,轉(zhuǎn)入St印4;否則,進入下一步;SteplO將Ret中解析的數(shù)據(jù)按照數(shù)據(jù)庫的格式和規(guī)范存儲到對應(yīng)的用戶表中。全文摘要本發(fā)明公開了一種基于模板對異構(gòu)污染源集成數(shù)據(jù)的解析方法,首先從集成數(shù)據(jù)中讀取主屬性字段的值生成數(shù)據(jù)映射表中的主鍵值索引,然后根據(jù)主鍵值索引查找集成數(shù)據(jù)對應(yīng)保存的用戶表以及用戶表對應(yīng)的數(shù)據(jù)解析模板,最后根據(jù)模板對數(shù)據(jù)進行解析,將解析好的數(shù)據(jù)存儲到對應(yīng)的用戶表中或?qū)?shù)據(jù)進行顯示。用戶需求變時,無須修改數(shù)據(jù)解析方法,只需要簡單地在模板表中添加或修改模板,在數(shù)據(jù)映射表中添加或修改集成數(shù)據(jù)與用戶表映射即可,從而具有很強的自適應(yīng)性,通用性和拓展性。文檔編號G06F17/30GK102521292SQ201110387870公開日2012年6月27日申請日期2011年11月29日優(yōu)先權(quán)日2011年11月29日發(fā)明者何金星,崔凱楠,常飛,曾柯,朱利,米玥,謝海江,鮑帥申請人:西安交通大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
固原市| 昌邑市| 禄丰县| 民县| 宝丰县| 上高县| 旅游| 墨竹工卡县| 新兴县| 聂拉木县| 松桃| 怀化市| 泰州市| 长宁区| 遂宁市| 灵宝市| 金湖县| 沙雅县| 泸西县| 贵州省| 聊城市| 多伦县| 广元市| 清河县| 石景山区| 清镇市| 元朗区| 唐山市| SHOW| 湖北省| 措美县| 奈曼旗| 罗城| 白河县| 大连市| 许昌县| 偃师市| 辰溪县| 万年县| 浮梁县| 临猗县|