張吉同 馮夢清
摘要:首先對井下人員定位系統(tǒng)的數(shù)據(jù)庫進行概要設(shè)計,畫出了系統(tǒng)的主要實體之間的E—R圖;然后對井下人員定位系統(tǒng)數(shù)據(jù)庫進行邏輯設(shè)計,建立了數(shù)據(jù)庫中主要的表結(jié)構(gòu);最后對數(shù)據(jù)庫的表根據(jù)系統(tǒng)的特點進行了優(yōu)化設(shè)計,將大表拆分為小表,以分散訪問,達到以空間換時間的目的,提高系統(tǒng)的訪問效率。
關(guān)鍵詞:人員定位;數(shù)據(jù)庫;優(yōu)化
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2016)18-0013-02
井下人員定位系統(tǒng)是利用無線射頻技術(shù)RFID、數(shù)據(jù)庫、通信和計算機技術(shù)來實現(xiàn)對井下人員的跟蹤定位信息的采集、分析處理、實時顯示、數(shù)據(jù)庫存儲、考勤管理及報表打印等功能。實現(xiàn)地面管理人員對井下人員實時分布、軌跡等進行實時管理,從而達到在災(zāi)變發(fā)生時為搶險救災(zāi)提供科學(xué)可靠的依據(jù)。
煤礦采用三八制或四六制工作方式,每天24小時不間斷的生產(chǎn),所以下井人員眾多,若要實現(xiàn)井下有效定位,滿足國家規(guī)定,井下基站也需要很多。所以系統(tǒng)每天都要產(chǎn)生大量的數(shù)據(jù)記錄,以一個年產(chǎn)300萬噸的煤礦為例,按三八制計算,每班大概需要500人下井,每人來回大概要經(jīng)過30個基站,假設(shè)每經(jīng)過一個基站產(chǎn)生一條記錄,每天產(chǎn)生3×500×30=45000,每月產(chǎn)生45000×30=1350000條記錄,按國家要求井下信息至少要保留6個月,1350000×6=8100000條記錄。所以,要對這些原始數(shù)據(jù)進行有效的管理利用,對數(shù)據(jù)庫的設(shè)計與優(yōu)化就顯得非常必要。
1數(shù)據(jù)庫設(shè)計
數(shù)據(jù)庫在一個信息管理應(yīng)用軟件系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫結(jié)構(gòu)設(shè)計的好壞將直接影響系統(tǒng)的效率以及實現(xiàn)的效果。合理的數(shù)據(jù)庫結(jié)構(gòu)設(shè)計可以提高數(shù)據(jù)存儲的效率,減少數(shù)據(jù)的冗余,保證數(shù)據(jù)的完整性和一致性。
1.1 數(shù)據(jù)庫概要設(shè)計
下井人員攜帶標識卡(tag標簽),經(jīng)過安裝有基站(讀卡器)的位置時,基站讀取人員所攜帶的標識卡,把標識卡的ID號和讀取時間上傳到監(jiān)控中心的數(shù)據(jù)采集主機上并保存到實時數(shù)據(jù)表中,系統(tǒng)依據(jù)系統(tǒng)所采集的原始數(shù)據(jù)再與其他相關(guān)的關(guān)進行關(guān)聯(lián)處理,生成一些其他相關(guān)信息表,并保存在相應(yīng)的數(shù)據(jù)庫中,供管理員用戶查詢利用。根據(jù)系統(tǒng)所涉及的實體以及它們之間的關(guān)系可以畫出系統(tǒng)實體關(guān)系(E—R)圖。系統(tǒng)的E—R圖如圖1所示。
1.2 數(shù)據(jù)庫邏輯設(shè)計
根據(jù)人員定位管理系統(tǒng)的功能及系統(tǒng)所涉及的實體以及它們之間的關(guān)系,建立以下主要表:管理員信息表、用戶信息表、部門信息表、基站信息表、識別卡信息表,以上這些表相對修改的機會較小,一般建立完成后變動很少,所以把這些表稱為靜態(tài)表;在系統(tǒng)中由于井下人員移動所產(chǎn)生的軌跡通過基站傳到監(jiān)控中心,監(jiān)控中心的數(shù)據(jù)采集主機就把這些信息保存在一個表中,這個表稱為軌跡表,這個表存儲員工在井下的行走軌跡,所以隨著時間的推移,這個表的數(shù)據(jù)量會急劇增加,而系統(tǒng)所查詢信息的生成都要依靠這個表而產(chǎn)生,所以這個表的大小直接影響系統(tǒng)的效率,這個表稱為動態(tài)表。以下列出系統(tǒng)部分表的結(jié)構(gòu)。
(1)基站信息表
基站信息表用來存儲基站的相關(guān)信息,其詳細表結(jié)構(gòu)如表1所示。
(2)識別卡信息表
識別卡信息表用來存儲識別卡的ID、編碼、電壓、當(dāng)前狀態(tài)、刪除標記以及所屬人的ID號信息,其具體表結(jié)構(gòu)如表2所示。
(3)井下人員軌跡信息表
井下人員的信息是系統(tǒng)的基站采集的,為了減少傳輸?shù)男畔⒘?,系統(tǒng)只采集了基站ID、識別卡ID和讀識別卡的時間,所以這個表的只有四個字段,其具體表結(jié)構(gòu)如表3所示。
2 數(shù)據(jù)庫優(yōu)化
數(shù)據(jù)庫設(shè)計應(yīng)滿足完整性、一致性、最小冗余等要求,但是在進行實際數(shù)據(jù)庫設(shè)計時并不一定要完全遵守數(shù)據(jù)庫設(shè)計規(guī)則,要根據(jù)系統(tǒng)實際需求進行設(shè)計。
2.1 表結(jié)構(gòu)的優(yōu)化
1)由于人員定位系統(tǒng)的特殊性,數(shù)據(jù)要求至少保存半年以上,特殊數(shù)據(jù)要保存至少一年以上,而且井下軌跡記錄不允許用戶進行修改,為了防止用戶對員工下井信息進行篡改,所以井下人員信息表增加eventID字段,用來記錄井下記錄的自增ID號,若用戶進行刪除或添加信息就會從ID號上反映出來。
2)人員定位的數(shù)據(jù)要保存一定的時間,而井下人員的軌跡及相關(guān)的統(tǒng)計考勤等信息都依賴于井下人員軌跡表。如一個人的下井軌跡是要通過井下人員軌跡表中的tagid與員工信息表中的cardid進行關(guān)聯(lián)才找到這個人的信息,再通過員工信息表中的departid找到這個人的部門的相關(guān)信息,通過tagid可以找到卡的編碼的相關(guān)信息,所以各個表之間都是通過相應(yīng)的id號進行關(guān)聯(lián)的,所以當(dāng)一個人離崗時,他的信息不可真的刪除,只能加一個刪除標記,以便系統(tǒng)能找到相關(guān)人員的歷史信息,同理他原來的卡的信息也不可直接刪除,只能加一個刪除標記,防止其他人的軌跡信息與現(xiàn)在卡號所對應(yīng)人的信息關(guān)聯(lián)在一起,導(dǎo)致數(shù)據(jù)前后的不一致。所以對數(shù)據(jù)庫中易導(dǎo)致數(shù)據(jù)前后不一致的表都增加了一個is_deleted字段,用來標記此記錄被刪除。
2.2 查詢的優(yōu)化
為了提高系統(tǒng)查詢的效率要對表中的關(guān)鍵字要建立索引,同時要盡量減少表之間的關(guān)聯(lián),表之間關(guān)聯(lián)條件的選擇也非常重要。
2.3 表的優(yōu)化
由于井下人員軌跡表隨著時間的增加數(shù)據(jù)會急驟增加,如果不對此表進行有效的分流,會嚴重影響系統(tǒng)的效率,甚至?xí)?dǎo)致系統(tǒng)的崩潰。監(jiān)控系統(tǒng)要實時統(tǒng)計當(dāng)前井下人員的分布及井下人員的實時軌跡,需要實時對井下人員軌跡表進行訪問,它的記錄條數(shù)直接影響系統(tǒng)的效率,所以要對這個表進行合理的分流,使其數(shù)據(jù)量降到合適的范圍,是我們設(shè)計時要考慮的問題。為了防止井下人員軌跡表單表的數(shù)據(jù)量過大,將這個大表拆分成小表以分散訪問,以空間換取時間。將表中的記錄按時間以月為單位進行分割,以月份命名。同時為了方便系統(tǒng)對每個工人的信息進行統(tǒng)計和考勤,并將當(dāng)前在井下的人員信息保存到一個表中,稱為實時表;對每個出井的人員把他的記錄信息進行統(tǒng)計,生成一條歷史記錄,這個表包含人員姓名、卡號、入井時間、出井時間以及相應(yīng)的班次,并把這條記錄保存至以月份命名的歷史表中。這樣就能達到把一個大表分為多個小表的目的,降低了單表的數(shù)據(jù)量,并通過建立冗余表的方式提高了系統(tǒng)的執(zhí)行效率。
3 結(jié)語
首先對井下人員定位系統(tǒng)的數(shù)據(jù)庫進行概要設(shè)計,畫出了系統(tǒng)的主要實體之間的E—R圖;然后對井下人員定位系統(tǒng)數(shù)據(jù)庫進行邏輯設(shè)計,建立了數(shù)據(jù)庫中主要表結(jié)構(gòu);最后根據(jù)系統(tǒng)的特點對數(shù)據(jù)庫的表進行了相應(yīng)的優(yōu)化設(shè)計,將大表拆分為小表以分散訪問,達到以空間換時間的目的,提高系統(tǒng)的訪問效率。所以在設(shè)計信息管理類系統(tǒng)時,應(yīng)結(jié)合數(shù)據(jù)庫設(shè)計規(guī)范及要求,同時也要根據(jù)系統(tǒng)的特點來合理地組織和設(shè)計數(shù)據(jù)庫,達到二者之間的平衡,實現(xiàn)系統(tǒng)的設(shè)計目的。
參考文獻:
[1]劉佳,朱慧,華鋼.井下人員定位管理系統(tǒng)數(shù)據(jù)模型設(shè)計[J].工礦自動化,2013(7):91-92
[2]陳小奎.井下人員定位管理系統(tǒng)數(shù)據(jù)庫設(shè)計及優(yōu)化[J].能源技術(shù)與管理,2007(6):133-134.
[3]杜文濤.基于WEB的井下人員定位信息系統(tǒng)的研究[D].西安科技大學(xué),2010.