劉海強,陳曉晶,張興華,陳向飛
(1.中煤科工集團(tuán)常州研究院有限公司,江蘇 常州 213015;2.金陵科技學(xué)院 計算機工程學(xué)院,江蘇 南京 211169;3.中國礦業(yè)大學(xué) 信息與控制工程學(xué)院,江蘇 徐州 221116)
煤炭是關(guān)系我國國計民生的基礎(chǔ)產(chǎn)業(yè)[1]。煤礦生產(chǎn)中的不安全因素較多,環(huán)境惡劣,事故易發(fā)。近年來,隨著開采深度進(jìn)一步加大,煤礦安全隱患突出,安全事故尤其是重大、特大事故仍時有發(fā)生,安全形勢依然嚴(yán)峻[2]。
煤礦企業(yè)大多安裝了安全監(jiān)控系統(tǒng),隨著時間推移,存儲了大量安全監(jiān)控數(shù)據(jù)。現(xiàn)有煤礦安全監(jiān)控系統(tǒng)大多采用操作型數(shù)據(jù)存儲方式,主要面向事務(wù)處理,各種信息混合存儲,與煤礦安全生產(chǎn)密切相關(guān)的重點信息不明確,導(dǎo)致信息無法有效利用。另外,系統(tǒng)大多只具備數(shù)據(jù)采集、存儲和顯示功能,數(shù)據(jù)分析能力較差,不能提供更好的決策支持。
數(shù)據(jù)倉庫[3]是大數(shù)據(jù)技術(shù)的重要組成部分,集成了各種形式的應(yīng)用系統(tǒng),以事物發(fā)展的角度組織數(shù)據(jù)。數(shù)據(jù)倉庫是分析型數(shù)據(jù)存儲方式,支持?jǐn)?shù)據(jù)查詢,能夠為數(shù)據(jù)挖掘和決策分析提供良好的數(shù)據(jù)支持,逐漸成為大數(shù)據(jù)時代必然的數(shù)據(jù)管理技術(shù),特別是基于Hive 的數(shù)據(jù)倉庫技術(shù)備受關(guān)注。
大數(shù)據(jù)和數(shù)據(jù)倉庫技術(shù)被認(rèn)為是實現(xiàn)智能礦山的關(guān)鍵技術(shù),受到行業(yè)內(nèi)研究人員的關(guān)注[1,4]。張鵬[5]提出了煤礦大數(shù)據(jù)架構(gòu),其中包括基于數(shù)據(jù)倉庫的數(shù)據(jù)存儲模型,但并沒有研究實現(xiàn)數(shù)據(jù)倉庫的具體方法。孟光偉[6]建立了基于大數(shù)據(jù)技術(shù)的煤礦監(jiān)管服務(wù)平臺,提出使用Spark 技術(shù)實現(xiàn)數(shù)據(jù)統(tǒng)計分析,使用Hive 數(shù)據(jù)倉庫分主題存儲數(shù)據(jù),但沒有詳細(xì)研究數(shù)據(jù)倉庫的主題、邏輯模型等關(guān)鍵技術(shù)。張毅[7]從企業(yè)管理的角度分析了煤礦數(shù)據(jù)倉庫的優(yōu)勢,但與煤礦安全監(jiān)控數(shù)據(jù)分析的差別較大。賈國兵[8]將數(shù)據(jù)倉庫應(yīng)用于煤礦井下三維建模,開發(fā)了數(shù)據(jù)展示系統(tǒng),但未研究數(shù)據(jù)倉庫的實現(xiàn)技術(shù)。劉馨蕊[9]研究了基于數(shù)據(jù)倉庫的金屬礦山信息集成系統(tǒng),應(yīng)用Agent 方法建立了生產(chǎn)決策數(shù)據(jù)倉庫,但使用的數(shù)據(jù)源主要是產(chǎn)量等數(shù)據(jù),不適應(yīng)安全監(jiān)控分析需求。賈冬冬[10]研究了基于數(shù)據(jù)倉庫的沖擊地壓預(yù)警技術(shù),從不同角度挖掘沖擊地壓數(shù)據(jù)特征。侯杰等[11]研究了基于OLAP(On-line Analytical Processing,聯(lián)機分析處理)技術(shù)的煤礦生產(chǎn)管理系統(tǒng),但未研究數(shù)據(jù)倉庫的建設(shè)方法。總體而言,數(shù)據(jù)倉庫在礦業(yè)方面的應(yīng)用還處于理論研究和實踐摸索階段,對需求分析、主題設(shè)計和數(shù)據(jù)抽取方法等關(guān)鍵技術(shù)的研究較少。
本文研究面向煤礦安全監(jiān)控的數(shù)據(jù)倉庫關(guān)鍵技術(shù),包括主題設(shè)計、模型設(shè)計、ETL(Extract-Transformation-Loading,抽取、轉(zhuǎn)換和加載)策略設(shè)計等,為煤礦安全監(jiān)控數(shù)據(jù)挖掘和展示提供技術(shù)支撐。
數(shù)據(jù)倉庫是面向主題的、集成的、相對穩(wěn)定的、反映歷史變化的數(shù)據(jù)集合。一方面,它可應(yīng)用于決策支持,進(jìn)行分析型數(shù)據(jù)處理;另一方面,它集成了多個不同結(jié)構(gòu)的數(shù)據(jù)源,并根據(jù)主題進(jìn)行重組和存儲[12]。
數(shù)據(jù)倉庫具有以下4 個特點:
(1)面向主題。數(shù)據(jù)倉庫中的數(shù)據(jù)是根據(jù)主題存儲的,主題是用戶進(jìn)行分析和應(yīng)用時關(guān)心的方面,多個操作型數(shù)據(jù)源的數(shù)據(jù)構(gòu)成一個主題。
(2)集成。數(shù)據(jù)倉庫中的數(shù)據(jù)具有全局性和集成性,通過對分散的數(shù)據(jù)源中多種多樣的數(shù)據(jù)進(jìn)行預(yù)處理,建立統(tǒng)一的數(shù)據(jù)表達(dá)格式。
(3)非易失。數(shù)據(jù)倉庫中的數(shù)據(jù)主要面向分析查詢,數(shù)據(jù)源中的數(shù)據(jù)經(jīng)過抽取和清洗后進(jìn)入數(shù)據(jù)倉庫,被長期保留下來,很少修改和刪除,只是定期加載和查詢,不易丟失。
(4)隨時間變化。隨著生產(chǎn)推進(jìn),生產(chǎn)過程中不斷產(chǎn)生數(shù)據(jù)并被添加進(jìn)數(shù)據(jù)倉庫,因此,數(shù)據(jù)倉庫是隨時間變化的。匯總和分析這些數(shù)據(jù)能夠預(yù)測某個問題的發(fā)展趨勢。
數(shù)據(jù)倉庫是一個多層次的體系結(jié)構(gòu),包括數(shù)據(jù)源層、數(shù)據(jù)存儲與管理層、OLAP 與數(shù)據(jù)挖掘?qū)印⑶岸斯ぞ吲c應(yīng)用層[12],如圖1 所示。

圖1 數(shù)據(jù)倉庫體系結(jié)構(gòu)Fig.1 Structure of data warehouse
(1)數(shù)據(jù)源層。數(shù)據(jù)源包括內(nèi)部數(shù)據(jù)和外部數(shù)據(jù)。內(nèi)部數(shù)據(jù)是指關(guān)系型數(shù)據(jù)庫中存儲的數(shù)據(jù)和資料,本文主要是指在煤礦長期生產(chǎn)過程中,煤礦安全監(jiān)控系統(tǒng)存儲的安全監(jiān)控數(shù)據(jù)、網(wǎng)絡(luò)管理數(shù)據(jù)、配置管理數(shù)據(jù)和人員管理數(shù)據(jù),這些數(shù)據(jù)可能存儲于不同的部門、系統(tǒng)平臺或物理位置。外部數(shù)據(jù)是與煤礦安全生產(chǎn)相關(guān)的法律法規(guī)和外部歸類文檔等。
(2)數(shù)據(jù)存儲與管理層。該層將從數(shù)據(jù)源層抽取的各類型數(shù)據(jù)進(jìn)行轉(zhuǎn)換和清洗,按照主題以確定的物理結(jié)構(gòu)存儲。數(shù)據(jù)倉庫使用元數(shù)據(jù)描述數(shù)據(jù)及管理和維護(hù)數(shù)據(jù)所需的信息,根據(jù)元數(shù)據(jù)進(jìn)行數(shù)據(jù)檢測和維護(hù)。數(shù)據(jù)倉庫根據(jù)不同部門的業(yè)務(wù)需求,建立特定的數(shù)據(jù)集市。數(shù)據(jù)集市之間互相配合,以滿足用戶的業(yè)務(wù)需求,組成一個完整的數(shù)據(jù)倉庫。
(3)OLAP 與數(shù)據(jù)挖掘?qū)印?shù)據(jù)倉庫使用OLAP進(jìn)行數(shù)據(jù)挖掘。OLAP 提供切片、切塊、鉆取、旋轉(zhuǎn)等數(shù)據(jù)分析方法,從多角度匯總和抽象數(shù)據(jù),通過聚集查詢技術(shù)提取用戶所需信息。根據(jù)數(shù)據(jù)存儲方式不同,OLAP 可分為關(guān)系型、多維型和混合型。關(guān)系型OLAP 將細(xì)節(jié)數(shù)據(jù)和聚合后的數(shù)據(jù)均存儲在關(guān)系型數(shù)據(jù)庫中,數(shù)據(jù)量大時查詢效率較低。多維型OLAP 將細(xì)節(jié)數(shù)據(jù)和聚合后的數(shù)據(jù)均存儲在多維數(shù)組中,查詢效率較高,但生成多維數(shù)組所需時間較長。混合型OLAP 將細(xì)節(jié)數(shù)據(jù)存儲在關(guān)系型數(shù)據(jù)庫中,將聚合后的數(shù)據(jù)存儲在多維數(shù)組中,查詢效率較關(guān)系型OLAP 高,較多維型OLAP 低,生成多維數(shù)組所需時間較關(guān)系型OLAP 多,較多維型OLAP 少。針對煤礦安全監(jiān)控數(shù)據(jù)特點,本文采用混合型OLAP 存儲數(shù)據(jù)。
(4)前端工具與應(yīng)用層。該層應(yīng)用可視化工具進(jìn)行數(shù)據(jù)展示,為用戶提供決策支持等業(yè)務(wù)功能,包括數(shù)據(jù)查詢、數(shù)據(jù)分析、數(shù)據(jù)報表等。
數(shù)據(jù)倉庫是面向主題的,其業(yè)務(wù)需求決定業(yè)務(wù)主題。針對煤礦安全監(jiān)控的業(yè)務(wù)需求,設(shè)計了超限分析、調(diào)校分析、異常數(shù)據(jù)分析、測點網(wǎng)絡(luò)中斷分析和人員管理分析五大主題,見表1。對應(yīng)功能結(jié)構(gòu)如圖2 所示。

圖2 煤礦安全監(jiān)控數(shù)據(jù)倉庫功能結(jié)構(gòu)Fig.2 Functional structure of coal mine safety monitoring data warehouse

表1 煤礦安全監(jiān)控數(shù)據(jù)倉庫主題Table 1 Subjects of coal mine safety monitoring data warehouse
超限是導(dǎo)致煤礦安全事故的重要原因,對超限數(shù)據(jù)的采集和分析是煤礦安全監(jiān)控工作的重點。調(diào)校是重要的煤礦井下設(shè)備維護(hù)操作,目的是保障設(shè)備安全使用和監(jiān)控數(shù)據(jù)準(zhǔn)確。
煤礦安全監(jiān)控系統(tǒng)記錄了大量超限和調(diào)校信息,二者混合存儲在一起。在數(shù)據(jù)倉庫建設(shè)過程中,有必要建立超限和調(diào)校分析主題,將二者提取出來單獨存儲,為數(shù)據(jù)挖掘提供基礎(chǔ)。
超限分析主題可實現(xiàn)超限程度分析、超限原因分析和測點安全性分析。調(diào)校分析主題可實現(xiàn)調(diào)校是否準(zhǔn)時分析。
煤礦生產(chǎn)過程中,安全狀態(tài)下瓦斯?jié)舛茸兓话闶瞧椒€(wěn)的,且數(shù)值較小。當(dāng)井下環(huán)境變化或設(shè)備出現(xiàn)故障時,瓦斯?jié)舛缺O(jiān)測值會出現(xiàn)異常,如監(jiān)測值突然變大或變小等。這種異常變化可能是瓦斯突出的前兆,是煤礦安全監(jiān)控工作需重點關(guān)注的信息。因此,有必要設(shè)計瓦斯?jié)舛犬惓?shù)據(jù)分析主題,根據(jù)瓦斯?jié)舛茸兓?guī)律,將瓦斯?jié)舛犬惓?shù)據(jù)提取出來,為分析異常原因、異常數(shù)據(jù)變化趨勢、超限預(yù)警提供數(shù)據(jù)支持。
異常數(shù)據(jù)分析主題可實現(xiàn)異常原因分析和異常趨勢分析。
煤礦井下安裝有大量傳感器,采集數(shù)據(jù)通過通信網(wǎng)絡(luò)傳輸至地面服務(wù)器進(jìn)行存儲和顯示。如果通信網(wǎng)絡(luò)出現(xiàn)故障,則監(jiān)控數(shù)據(jù)無法上傳至地面,該情況下盲目生產(chǎn)容易引發(fā)安全事故。因此,有必要建立測點網(wǎng)絡(luò)中斷分析主題,提取測點網(wǎng)絡(luò)斷線的時間、持續(xù)時間、恢復(fù)時間及該測點的配置信息等進(jìn)行主題存儲。
測點網(wǎng)絡(luò)中斷分析主題可實現(xiàn)中斷程度分析、中斷原因分析和測點網(wǎng)絡(luò)穩(wěn)定性分析。
煤礦安全監(jiān)控系統(tǒng)中存儲了大量的員工操作數(shù)據(jù),包括對故障的處理、對安全事故的處理、對設(shè)備的檢修和維護(hù)等。分析這些數(shù)據(jù)能發(fā)現(xiàn)員工工作過程中存在的問題,評估和考核員工的工作能力,以增強員工的責(zé)任感和緊迫感,提升企業(yè)的管理水平,從而保證安全生產(chǎn),減少因人為因素引發(fā)的事故。因此,有必要建立人員管理分析主題,為煤礦企業(yè)管理提供決策依據(jù)。
人員管理分析主題可實現(xiàn)人員工作能力分析和工作職責(zé)分析。
數(shù)據(jù)倉庫邏輯模型設(shè)計即關(guān)系模型設(shè)計。數(shù)據(jù)倉庫的常用設(shè)計模型包括雪花模型、星型模型和事實星座模型等[13]。
根據(jù)煤礦安全監(jiān)控數(shù)據(jù)倉庫的特點,本文采用事實星座模型。在該模型中,每個主題設(shè)計1 個事實表。事實表具有自身維度和共享維度,表之間通過共享維度交換信息。
事實星座模型根據(jù)主題設(shè)計數(shù)據(jù)表(包括事實表和維度表)的關(guān)系模式,把信息組織到結(jié)構(gòu)中[14]。煤礦安全監(jiān)控數(shù)據(jù)倉庫的邏輯模型如圖3-圖7 所示。

圖3 超限分析主題邏輯模型Fig.3 Logical model of overrun analysis subject

圖4 調(diào)校分析主題邏輯模型Fig.4 Logical model of calibration analysis subject

圖5 異常數(shù)據(jù)分析主題邏輯模型Fig.5 Logical model of abnormal data analysis subject

圖6 測點網(wǎng)絡(luò)中斷分析主題邏輯模型Fig.6 Logical model of analysis subject for measuring point network interrupt

圖7 人員管理分析主題邏輯模型Fig.7 Logical model of personnel management analysis subject
為了描述細(xì)節(jié)信息,煤礦安全監(jiān)控數(shù)據(jù)倉庫將維度劃分為:①類型維度,包括甲烷、CO、風(fēng)速、溫度、濕度等。②原因維度,為事故或故障原因,包括放炮、通風(fēng)故障、線路問題等。③操作維度,為工作人員對故障所做的操作,包括斷電、檢修、記錄等。④故障類型維度,為各種故障,包括超限、異常、上傳網(wǎng)絡(luò)中斷等。⑤效果維度,為工作人員對故障的處理效果,包括優(yōu)、良、中、差等。⑥測點維度,為某位置的1 個或多個測點。⑦時間維度,為某具體時間點或時間段。⑧工作人員維度,為某1 位或幾位員工的信息,包括編號、部門、職稱等。
根據(jù)用戶權(quán)限和關(guān)心的細(xì)節(jié)設(shè)計煤礦安全監(jiān)控數(shù)據(jù)倉庫的粒度[15]。時間粒度分為年、月、日、時、分、秒;監(jiān)管粒度分為集團(tuán)公司、礦、工作面、測點等。
物理模型是數(shù)據(jù)的存儲結(jié)構(gòu),對應(yīng)邏輯模型中的主題維度[16]。由邏輯模型可知,煤礦安全監(jiān)控數(shù)據(jù)倉庫涉及的維度主要有時間、測點、類型、工作人員、原因、操作、故障類型、效果。
物理模型使用SQL Server 建立表的主鍵和外鍵聚簇索引,根據(jù)應(yīng)用情況建立非聚簇索引,以獲取更強的查詢性能。以超限分析主題為例,其事實表和維度表見表2-表7。其他主題物理模型設(shè)計與此類似。

表2 超限分析主題事實表Table 2 Fact table of overrun analysis subject

表3 超限分析主題測點維度表Table 3 Monitoring point dimension table of overrun analysis subject

表4 超限分析主題類型維度表Table 4 Type dimension table of overrun analysis subject

表5 超限分析主題原因維度表Table 5 Reason dimension table of overrun analysis subject

表6 超限分析主題操作維度表Table 6 Operation dimension table of overrun analysis subject

表7 超限分析主題工作人員維度表Table 7 Personnel dimension table of overrun analysis subject
煤礦安全監(jiān)控數(shù)據(jù)倉庫將不同數(shù)據(jù)源中的數(shù)據(jù)集中到數(shù)據(jù)倉庫數(shù)據(jù)集,需對數(shù)據(jù)進(jìn)行ETL 操作。煤礦安全監(jiān)控數(shù)據(jù)倉庫的數(shù)據(jù)來源、格式存在很大差異,如在歷史數(shù)據(jù)庫中,安全監(jiān)控數(shù)據(jù)源分布于集團(tuán)公司下屬企業(yè),網(wǎng)絡(luò)安全管理數(shù)據(jù)源位于網(wǎng)絡(luò)管理部門。ETL 需最大程度地保證數(shù)據(jù)一致性,提高數(shù)據(jù)質(zhì)量。
ETL 程序與數(shù)據(jù)源通過網(wǎng)絡(luò)連接,使用ADO(ActiveX Data Objects,ActiveX 數(shù)據(jù)對象)和ODBC(Open Database Connectivity,開放數(shù)據(jù)庫連接)連接數(shù)據(jù)源和數(shù)據(jù)倉庫[14],通過抽取程序完成數(shù)據(jù)抽取,在程序處理模塊完成轉(zhuǎn)換和清洗,然后將數(shù)據(jù)加載至數(shù)據(jù)倉庫,如圖8 所示。

圖8 煤礦安全監(jiān)控數(shù)據(jù)倉庫ETL 實現(xiàn)流程Fig.8 ETL realization flow of coal mine safety monitoring data warehouse
數(shù)據(jù)抽取是從數(shù)據(jù)源中抽取數(shù)據(jù),通過一定規(guī)則判斷是否為所需數(shù)據(jù),若是則添加進(jìn)數(shù)據(jù)倉庫。煤礦安全監(jiān)控數(shù)據(jù)倉庫按主題進(jìn)行數(shù)據(jù)抽取,流程如圖9 所示。

圖9 煤礦安全監(jiān)控數(shù)據(jù)倉庫數(shù)據(jù)抽取流程Fig.9 Data extraction flow of coal mine safety monitoring data warehouse
超限和調(diào)校數(shù)據(jù)主要來源于煤礦安全監(jiān)控系統(tǒng)報警數(shù)據(jù)表。從該表中抽取這2 種數(shù)據(jù)即是對這2 種數(shù)據(jù)進(jìn)行分離。根據(jù)調(diào)校時瓦斯?jié)舛茸兓?guī)律(本文為先降至0,再快速上升,然后快速下降,最大值約為2.0×10-6,整個過程持續(xù)約1 min),得到調(diào)校數(shù)據(jù)分離標(biāo)準(zhǔn)為最大值2.0×10-6且持續(xù)1 min。
異常數(shù)據(jù)可根據(jù)瓦斯?jié)舛缺O(jiān)測值是否突然變化來判斷,對異常數(shù)據(jù)抽取需要對異常狀態(tài)和數(shù)據(jù)是否屬于同一異常狀態(tài)進(jìn)行判斷。
對異常狀態(tài)的判斷主要考慮相鄰數(shù)據(jù)間的變化斜率指標(biāo)kv。設(shè)瓦斯?jié)舛茸兓瘯r間序列為T={t1,t2,···,tn},數(shù)值序列Y={y1,y2,···,yn},其 中tm,ym分別為第m個數(shù)據(jù)采樣時刻及對應(yīng)采樣值,m=1,2,…,n,n為采樣點數(shù),則kv=|ym-ym-1|/|tm-tm-1|。設(shè)置斜率門限為K,當(dāng)kv>K時,則判定當(dāng)前數(shù)據(jù)和前一數(shù)據(jù)為異常數(shù)據(jù)。K根據(jù)煤礦安全生產(chǎn)規(guī)定和煤礦具體安全生產(chǎn)情況來確定。

測點網(wǎng)絡(luò)中斷數(shù)據(jù)主要來源于煤礦安全監(jiān)控系統(tǒng)的安全監(jiān)控數(shù)據(jù)表和配置管理數(shù)據(jù)表。安全監(jiān)控數(shù)據(jù)斷線和接通時狀態(tài)字段設(shè)置為特殊值,可根據(jù)該字段值對斷線數(shù)據(jù)進(jìn)行抽取。
人員管理數(shù)據(jù)主要是工作人員的操作,可抽取安全監(jiān)控數(shù)據(jù)表、網(wǎng)絡(luò)管理數(shù)據(jù)表、配置管理數(shù)據(jù)表和人員管理數(shù)據(jù)表中的操作信息和個人信息。人員管理以1 個工作人員對應(yīng)1 個表的方式來組織,將一段時間內(nèi)該人員的操作添加進(jìn)該表,以便對該人員的工作情況和工作能力進(jìn)行分析。
煤礦安全監(jiān)控數(shù)據(jù)源分散,存儲格式不同,需整理且轉(zhuǎn)換為相同格式才能進(jìn)行統(tǒng)一存儲,該工作在數(shù)據(jù)轉(zhuǎn)換階段完成。煤礦安全監(jiān)控數(shù)據(jù)倉庫的數(shù)據(jù)轉(zhuǎn)換過程包括格式轉(zhuǎn)換、數(shù)據(jù)清洗和數(shù)據(jù)排序。
(1)格式轉(zhuǎn)換分為字段轉(zhuǎn)換、數(shù)值轉(zhuǎn)換和表示方法轉(zhuǎn)換。字段轉(zhuǎn)換是針對同一對象在不同數(shù)據(jù)源的數(shù)據(jù)表中使用不同字段表示的情況,如測點類型字段在報警數(shù)據(jù)表中可能為Stype,在超限主題事實表中可能為Type,在數(shù)據(jù)轉(zhuǎn)換過程中對這些字段進(jìn)行統(tǒng)一表示。數(shù)值轉(zhuǎn)換是針對不同系統(tǒng)中數(shù)據(jù)存儲采用不同的單位或數(shù)據(jù)類型的情況,在數(shù)據(jù)轉(zhuǎn)換時進(jìn)行單位和數(shù)據(jù)類型的統(tǒng)一,如將瓦斯?jié)舛葦?shù)據(jù)從float 型轉(zhuǎn)換為real 型。表示方法轉(zhuǎn)換即統(tǒng)一數(shù)據(jù)的表示格式,如將日期和時間格式統(tǒng)一為yyyy-mmdd hh:mm:ss。
(2)數(shù)據(jù)清洗包括重復(fù)記錄清洗和錯誤數(shù)據(jù)清洗。重復(fù)記錄清洗是針對不同系統(tǒng)中存儲的重復(fù)數(shù)據(jù)進(jìn)行判斷,只抽取1 條記錄,同時判斷抽取的數(shù)據(jù)是否已存在于目標(biāo)數(shù)據(jù)倉庫中,對重復(fù)記錄舍棄。錯誤數(shù)據(jù)清洗是針對抽取數(shù)據(jù)中存在的明顯錯誤,如數(shù)據(jù)類型不對、數(shù)值為空、日期超過當(dāng)前日期等進(jìn)行彌補,無法彌補的則舍棄。錯誤數(shù)據(jù)彌補方式:①將其記錄到特定文件,等待數(shù)據(jù)倉庫管理人員處理。② 賦一個缺省值,如一段時間內(nèi)的平均值、最可能的預(yù)測值等。
(3)數(shù)據(jù)排序是針對瓦斯超限、網(wǎng)絡(luò)通斷等有時間順序的數(shù)據(jù),存入數(shù)據(jù)倉庫時根據(jù)時間戳進(jìn)行數(shù)據(jù)排序。
數(shù)據(jù)轉(zhuǎn)換后需將其加載進(jìn)數(shù)據(jù)倉庫,過程包括預(yù)加載、加載和加載后處理。預(yù)加載是指從數(shù)據(jù)庫中找到需添加、更新的記錄及添加的目標(biāo)地址,將其寫入預(yù)處理文件,之后由加載程序加載到數(shù)據(jù)倉庫中。加載是指調(diào)用批量加載工具添加和更新數(shù)據(jù),并記錄加載日志。加載后處理主要是刪除不需要的冗余文件和臨時表。
數(shù)據(jù)加載設(shè)計主要是數(shù)據(jù)追加方法的設(shè)計。數(shù)據(jù)追加包括直接追加、覆蓋追加和更新追加。直接追加是直接將數(shù)據(jù)添加進(jìn)數(shù)據(jù)表;覆蓋追加是當(dāng)新抽取的數(shù)據(jù)包含所有歷史數(shù)據(jù)時,直接覆蓋歷史數(shù)據(jù);更新追加是針對需要進(jìn)行狀態(tài)更新的數(shù)據(jù),對歷史狀態(tài)數(shù)據(jù)和當(dāng)前狀態(tài)數(shù)據(jù)進(jìn)行比較,更新數(shù)據(jù)后追加。
根據(jù)煤礦安全監(jiān)控數(shù)據(jù)倉庫的數(shù)據(jù)特點選擇數(shù)據(jù)追加方式。配置管理數(shù)據(jù)和人員管理數(shù)據(jù)量少、變化小,可將之前的數(shù)據(jù)覆蓋,可采用覆蓋追加策略;安全監(jiān)控數(shù)據(jù)和網(wǎng)絡(luò)管理數(shù)據(jù)要記錄連續(xù)的變化狀態(tài),需比較當(dāng)前狀態(tài)數(shù)據(jù)和歷史狀態(tài)數(shù)據(jù),將更新的數(shù)據(jù)添加至數(shù)據(jù)倉庫,因此采用更新追加策略。
(1)對面向煤礦安全監(jiān)控的數(shù)據(jù)倉庫進(jìn)行了功能分析,根據(jù)煤礦安全監(jiān)控業(yè)務(wù)需求,建立了超限分析、調(diào)校分析、異常數(shù)據(jù)分析、測點網(wǎng)絡(luò)中斷分析和人員管理分析五大業(yè)務(wù)主題。
(2)設(shè)計了煤礦安全監(jiān)控數(shù)據(jù)倉庫的邏輯模型和物理模型。針對煤礦安全監(jiān)控數(shù)據(jù)倉庫的特點,使用事實星座模型建立了邏輯模型,分主題設(shè)計了事實表和維度表,設(shè)計了邏輯模型的維度和粒度。
(3)設(shè)計了煤礦安全監(jiān)控數(shù)據(jù)倉庫的ETL 策略。針對數(shù)據(jù)來源和業(yè)務(wù)需求,分主題進(jìn)行數(shù)據(jù)抽取,設(shè)計了不同主題數(shù)據(jù)抽取的規(guī)則;對形式各異數(shù)據(jù)進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換、清洗和數(shù)據(jù)排序;設(shè)計了數(shù)據(jù)加載策略,分為預(yù)加載、加載和加載后處理3 個階段,在數(shù)據(jù)追加時根據(jù)數(shù)據(jù)特點,采用覆蓋追加和更新追加結(jié)合的方式。