楊 斌 徐 博 高 翔
?
地震應急基礎數據檢查系統的設計與實現[1]
楊 斌1,2)徐 博1,2)高 翔1,2)
1)山西省地震局,太原 030021 2)太原大陸裂谷動力學國家野外科學觀測研究站,太原 030025
地震應急基礎數據庫是震后災害快速評估及指揮決策的基礎,數據的質量直接影響著指揮決策的準確性、實用性。由于數據庫包含數據內容眾多,來源多樣,因此數據庫更新時,對數據進行檢查必不可少。本文以地震應急基礎數據庫為目標,研究了數據檢查內容及檢查方法,對數據庫檢查系統的整體架構、檢查模塊等進行了研究設計,并將之實現驗證。
地震 數據檢查 系統設計
前言
地震發生時地震應急指揮技術系統在地震應急基礎數據庫的支持下,可以迅速判斷地震的規模、影響范圍、經濟損失、人員傷亡等情況,并據此提出一系列科學的救災方案和調度方案,協助指揮人員實施各種地震救災行為,實現地震應急信息快速傳遞、高效處理,提高應急救災指揮與決策的技術水平,最大限度地減少震時的混亂和人員傷亡。地震應急基礎數據庫是整個系統的核心與關鍵,數據的質量直接影響著整個數據庫的性能。目前,地震應急基礎數據庫包含79類數據,其中空間數據52項,屬性數據27項。整個數據庫以地市、區縣、鄉鎮等行政區劃為基礎,其余空間數據和屬性數據與之對應關聯。空間數據的關聯主要通過經緯度的空間對應,屬性數據的關聯則主要通過編碼。由于系統計算的需要,空間數據與空間數據、空間數據與屬性數據、屬性數據與屬性數據之間有著眾多的關聯關系。
每年數據更新時,數據編碼的關聯性,屬性數據的準確性、完整性,空間數據拓撲關系的正確性,空間數據邏輯一致性等直接影響著系統產出的結果,都是數據檢查的重點。我國從20世紀80年代就開始了數據質量控制理論和標準化的研究工作,但大量的研究則是在90年代中后期開展,中國科學院測量與地球物理研究所、武漢大學測繪遙感信息工程國家重點實驗室等機構都在進行這方面的研究工作。目前的國內外各種研究機構以及地理信息企業在數據檢查手段上,基本采用在地理信息軟件平臺上的自主二次開發,以實現在不同軟件平臺上的基礎地理數據檢查。由于研究開發實力的參差不齊,各單位自主開發實現的檢查模塊質量上也存在差距。廣泛投入使用的基礎地理數據檢查模塊產品還很缺乏。現在的一些研究情況基本上都是針對各個城市的特殊數據而定制的檢查功能模塊。本文將通過研究數據檢查應遵循的原則及常用數據檢查方法,針對地震應急基礎數據庫,研究數據檢查規則方法及檢查內容,設計并實現地震應急基礎數據庫檢查系統。
1 數據檢查原則與方法
1.1 數據檢查原則
(1)方便性
數據檢查是一項繁瑣細致的工作,存在大量的重復性勞動,數據檢查軟件首要原則就是方便性,軟件應通過研究數據檢查的規則,進行標準化自動檢查,減少人工干預,降低人為操作可能帶來的錯誤率,使數據檢查更為高效化、自動化。
(2)實用性
數據檢查還應體現實用性,檢查過程應將數據的錯誤盡可能的顯示、輸出,方便數據處理人員找到及修改錯誤數據。同時應方便數據處理人員對數據進行標注、保存、導出修改后的正確數據等。
(3)合理性
合理性也是數據檢查應遵循的原則,數據檢查應做到合理、有序。檢查規則應全面合理,不能出現缺漏或自相矛盾的地方,同時檢查可分層或分類進行,每一類檢查對應一個檢查內容,使得數據處理人員清晰明白檢查思路及檢查步驟。
1.2 檢查方法
1.2.1 模板匹配法
模板匹配法可用于空間數據與屬性數據的屬性檢查,每個數據的屬性項由哪些項組成,每一項的定義都可以設計成標準控制模板規則表(范大昭,2001)。在本軟件數據檢查過程中,以地震應急基礎數據庫規范為標準文件制作標準模板規則表,將待檢查數據的屬性數據與標準模板規則表匹配,自動檢查不符合標準的數據,圖1表示的即為模板規則匹配法,圖2為模板規則示例。
圖2 模板規則表示例
Fig. 2 Representative cases of the template rule
1.2.2 用戶自定義規則
空間數據之間的關系包含了相交、重疊、包含等。這些關系不但存在于同一點、線、面圖層中,還存在于不同點、線、面圖層中。例如數據檢查過程中,既要檢查居民地要素之間不能相交、重疊等,也要檢查居民地圖層與水系圖層之間不能有相交、重疊等。除了這些檢查內容,還有一些用戶特定的檢查內容,可以通過用戶自定義規則來進行檢查。例如某一行政區內的地震監測臺站,其經緯度范圍一般不會超過行政區劃范圍;某一區域內的高層建筑物面積不能超過房屋總面積等。
本軟件對空間數據及屬性數據的數據編碼檢查、空間數據的坐標、投影進行檢查將主要利用用戶自定義規則進行。
1.2.3 數據交叉檢查
有些數據錯誤單純的檢查某一單一數據表是無法發現的,需要將多張數據表進行疊加、交叉分析才能發現。例如,由于人工錄入或其他原因,屬性數據中經緯度所示位置可能和其屬性中標注的地名不符,這種錯誤單純檢查屬性表是無法發現的,需通過疊加行政區劃空間數據,交叉分析經緯度所在位置與屬性項標注位置是否一致;再如房屋屬性表中包含了各類型房屋面積及房屋總面積,單純檢查房屋屬性表很難確定這些數字是否正確,通過將房屋屬性表與人口表進行交叉分析可得到行政區劃內的人均住宅面積,使用者可對人均住宅面積制定合理范圍,超出范圍后,計算機自動報警顯示,通過人機交互最終確定數據是否正確。
本軟件對數據邏輯一致性檢查、數據合理性部分檢查將主要利用數據交叉檢查法進行。
1.2.4 人機交互檢查
由于數據的不確定性,在目前情況下,有時還需要將數據進行分析、計算,將結果顯示在計算機上,通過人工判斷其正確與否。例如可對數據進行統計分析,找出其中遠遠超過或低于平均值的數據,對其進行判斷;或者將新采集的數據與影像數據進行疊加顯示,從而檢查新數據的采集精度。
本軟件對數據合理性部分檢查將主要利用人機交互檢查法進行。
2 系統設計與實現
地震應急基礎數據庫按照數據格式分,主要包含空間數據與屬性數據兩大類。整個數據庫以地市、區縣、鄉鎮等行政區劃空間數據為基礎,其余空間數據和屬性數據通過數據編碼與之對應關聯。因此數據的編碼正確與否是數據檢查的首要任務。對于數據庫,數據的合理性也十分重要。數據庫中的數據大多帶有自身的數據值,在數據收集時,某些專業數據的記錄方式和我們日常習慣不一樣,如果不經檢查,直接倒入數據庫,也會對系統的計算產出產生影響。所以通過對數據值本身的合理性檢查,可以初步檢驗數據的合理性。除數據編碼及數據合理性外,空間數據坐標是否符合規范要求、空間數據拓撲是否正確、數據的完整性、數據的邏輯一致性都是直接影響地震應急基礎數據庫使用的內容,也是我們檢查軟件設計的方向。
2.1 系統整體設計
根據系統目標及檢查內容,地震應急基礎數據檢查系統的總體結構如圖3所示。
(1)數據層。數據層由關系數據庫和基礎數據庫組成,其中關系數據庫用于存儲數據檢查的日志、檢查規則配置文件及系統文件。基礎數據庫用于存儲被檢查的空間數據及屬性數據。
(2)業務層。業務層包含了系統的各個檢查功能模塊,用以對被查數據的空間投影、空間拓撲、數據完整性、編碼關聯、編碼一致、數據合理性、邏輯一致性等進行檢查。
(3)表現層。即系統主程序界面,是與用戶交互的主界面,承載的系統的主要功能及數據加載、數據導出、日志查詢、版本顯示等功能。
2.2 檢查模塊設計
檢查模塊是整個系統的核心,其檢查效率及檢查結果正確性的高低,直接影響著整個系統的性能。整個系統的檢查模塊共有六個,如圖3業務層所示,各檢查模塊的檢查內容如下:
(1)數據編碼檢查
整個數據庫以地市、區縣、鄉鎮等行政區劃為基礎,其余空間數據和屬性數據與之對應關聯。空間數據的關聯主要通過經緯度的空間對應,屬性數據的關聯則主要通過編碼。空間數據與屬性數據、屬性數據與屬性數據之間的關聯關系主要依靠數據編碼實現,因此檢查數據關聯性就是檢查數據編碼之間的關聯性。地震應急基礎數據庫的數據編碼由14位數字組成,在數據庫中的數據類型為字符型(char),其代碼定義如圖4所示。
上圖所示代碼中,1-6位表示省、市、縣(市、區),采用《中華人民共和國行政區劃代碼(GB/T 2260-1995)》(中國國家標準化管理委員會,1995)中規定的代碼;7-9位表示鄉、鎮或街道辦事處代碼,采用《縣以下行政區劃代碼編制規則(GB 10114-88)》(中國國家標準化管理委員會,1989)的編碼方法(001-099表示街道辦事處,100-199表示鎮,200-399表示鄉);10-12位表示行政村、街區(國家統計局行政村、街區代碼規則)或重點目標代碼(重點目標代碼本身占前兩位,第三位補0),13—14位表示自然村或重點目標的序號(聶高眾等,2002)。
數據庫以地市、區縣、鄉鎮等行政區劃為基礎,其余空間數據和屬性數據與之對應關聯,因此,行政區代碼的準確性就至關重要。在行政區代碼中,也存在關聯。區縣代碼需要和地市代碼關聯、鄉鎮代碼需要和區縣代碼關聯、行政村代碼需要和鄉鎮代碼關聯(楊斌等,2011)。數據關聯檢查時,需先檢查行政區代碼,保證行政區代碼關聯正確。數據代碼關聯關系如圖5所示。
(2)數據合理性檢查
對于數據庫,數據的合理性也十分重要。壞數會大大破壞整個數據庫的穩定性與可靠性,對整個應用系統的產出也會產生不利影響,降低系統產出結果的正確性。根據前文介紹的數據檢查方法,數據合理性檢查主要通過以下三個面進行:
①模板規則檢查數據項本身的合理性
數據庫中,每一類數據所包含的數據項,每一個數據項的數據類型、數據長度等都不相同,通過研究數據規范,定義模板規則,可實現自動檢查所有數據的類型是否正確,數據長度是否符合規定等。
②用戶自定義檢查數據合理性
數據庫中的數據大多帶有自身的數據值,例如人口數、房屋面積、最高氣溫等。在數據收集時,某些專業數據的記錄方式和我們日常習慣不一樣,如果不經檢查,直接倒入數據庫,也會對系統的計算產出產生影響。所以通過用戶自定義數據值的合理范圍(如圖6所示),可以初步檢驗數據的合理性。
③數據交叉檢查數據合理性
通過數據之間的交叉計算,可進一步檢驗數據的合理性。例如數據庫中人口數據可通過統計年鑒等渠道獲得,數據值較為準確,通過以下公式:
房屋總面積/行政區劃內總人口=行政區劃內人均住宅面積
得出人均住宅面積,可對房屋數據進行一定程度的檢驗。
(3)邏輯一致性檢查
邏輯一致性主要是檢查空間數據在地理數據關系上的一致性,數據定義的統一性。即在同一個數據庫內,空間數據的數據定義應該保持一致。例如,部分收集到的表格數據在依據其標識的經緯度進行空間化后,會出現所在空間位置與屬性中標識不一致的情況,通過邏輯一致性檢查,可發現此類錯誤。
(4)空間投影檢查
此模塊主要檢查待查空間數據的空間投影是否正確。地震應急基礎數據庫收集到的數據投影有北京54、西安80、WGS84、克拉索夫斯基等多種地圖投影,要想保證整個數據庫的正確性,需對空間數據的投影進行檢查糾正。尤其是公里格網人口、公里格網房屋等格網數據,不同的空間投影,會造成格網數據與其他數據疊加運算時,產生極大誤差,直接影響后續業務系統的正常運行。
(5)空間拓撲檢查
拓撲檢查是空間數據檢查的重點,空間數據中行政區劃等面域是否閉合,道路等線性數據連接是否正確,空間數據是否正確的表達了目標之間的領接、包含等關系。
(6)數據完整性檢查
數據完整性檢查主要檢查空間數據及屬性數據的屬性項是否完整,是否存在缺項,或每一項內是否有空缺數據等。
3 應用示例與結果分析
系統以Arcengine平臺和C#語言為基礎,同時結合數據庫日常運行維護實踐經驗,實現了地震應急基礎數據庫的數據編碼檢查、數據合理性檢查、錯誤提示、數據輸出等功能,如圖7所示。
用戶界面上方是菜單欄,可對檢查數據進行編碼檢查、合理性檢查、數據提取、數據合并等操作。用戶界面左下方是數據配置區域,主要進行待檢查數據、檢查報告、檢查結果數據的配置;用戶界面右下方是檢查過程描述區域,用戶可在此查看檢查的詳細過程。數據檢查過程示意如圖8所示。
軟件對數據的檢查結果主要是數據檢查報告及檢查后輸出的檢查數據庫兩個成果,示意圖分見圖9、圖10。檢查報告以excel表格的形式,記錄了被檢查數據的數據名稱、檢查類型、錯誤類型、錯誤數目等信息。檢查后輸出的檢查數據庫為mdb數據,并在數據庫的每個數據表后,新增ErrorType字段記錄錯誤類型,方便數據維護人員查找修改。
圖9 數據檢查報告示意圖
Fig. 9 Data Inspection report
通過軟件的實際使用發現,軟件完成了系統設計的目標,實現了對地震應急基礎數據庫的數據編碼、空間數據坐標、數據合理性等的檢查。但由于影響數據質量因素是多階段、多方面的,從數據獲取到數據處理到數據輸出都有數據誤差的產生和擴散,本軟件只是結合地震應急基礎數據庫規范,對數據編碼及數據合理性的部分內容檢查進行了探討。其中數據交叉檢查目前只涉及了房屋、人口等較少的數據,今后需要不斷擴展數據交叉檢查范圍,提升數據相互驗證能力。
4 結語
數據質量檢查是一項系統工程,檢查的結果直接影響著數據庫質量,地震應急基礎數據庫又是地震應急指揮技術系統的核心,數據庫的質量直接影響著震后災害快速評估與指揮決策的準確性、可用性。目前地震應急基礎數據庫含79類數據,數據來源的多樣性以及數據處理標準的不規范,使得數據檢查不能忽略。本文研究探討了數據檢查的原則及方法,結合地震應急基礎數據庫,設計了數據檢查軟件的系統目標、系統架構及檢查模塊。并通過制定標準模板規則、用戶自定義規則等,使系統的擴展性、靈活性增強,在實際應用中取得了較好效果,提高了地震應急基礎數據庫質量,為地震應急指揮技術系統產出質量的提升,打下了堅實的基礎。
范大昭,2001.數字地圖矢量數據檢查的研究與實踐.碩士論文,中國人民解放軍信息工程大學測繪學院,28.
聶高眾,陳建英,李志強等,2002.地震應急基礎數據庫建設.地震,22(3):105—112.
楊斌,程紫燕,寧亞靈,2011.基于SQL語言的地震應急基礎數據庫數據關聯性一致性及可靠性檢查.山西地震,36—39.
中國國家標準化管理委員會,1995.《中華人民共和國行政區劃代碼》(GB/T 2260-1995)北京:中國標準出版社
中國國家標準化管理委員會,1989.《縣以下行政區劃代碼編制規則》(GB 10114-88)北京:中國標準出版社.
Design and Implementation of Basic Data Checking System of Earthquake Emergency
Yang Bin1, 2), Xu Bo1, 2)and Gao Xiang1, 2)
1) Earthquake Administration of Shanxi Province, Taiyuan 030021, China 2) Taiyuan Continental Rift Dynamics National Field Scientific Observation and Research Station, Taiyuan 030025, China
Earthquake database is the basis for rapid assessment and command decision after hazardous earthquakes, and the quality of the data command decision directly affects the accuracy and practicality. Since the database contains a number of data contents and diverse sources, the data checking is essential when the database is updated. In this paper, we studied the data checking contents and methods based on the database of earthquake emergency response, including the overall structure and module of the database, validation and implementation.
Earthquake; Data check; System design
[1] 基金項目 地震科技星火計劃項目(XH14009Y)、地震行業科研專項(201208018)、山西省基礎研究計劃項目(2012021017)和地震應急青年重點任務(CEA_EDEM-201403)共同資助
[收稿日期]2015-03-20
[作者簡介]楊斌,男,生于1981年。碩士,工程師。主要從事地震應急技術的研究。E-mail:ybsuning@163.com。
楊斌,徐博,高翔,2016.地震應急基礎數據檢查系統的設計與實現.震災防御技術,11(1):144—152.
doi:10.11899/zzfy20160116