曾 濤,劉淑影
(1.阜陽師范大學(xué) 信息化中心,安徽 阜陽 236037;2.阜陽師范大學(xué) 計算機與信息工程學(xué)院,安徽 阜陽 236037)
隨著教育信息化的發(fā)展,學(xué)校的數(shù)字信息系統(tǒng)越來越多,如教務(wù)系統(tǒng)、請假系統(tǒng)、宿舍門禁刷卡系統(tǒng)、一卡通消費系統(tǒng)、學(xué)工系統(tǒng)等已實現(xiàn)系統(tǒng)化和數(shù)字化,有效利用已存在的這些數(shù)字信息,使各系統(tǒng)中的數(shù)據(jù)真正實現(xiàn)其價值,最終實現(xiàn)智慧校園的建設(shè)[1,2]。在開學(xué)期間,特別是在疫情期間,學(xué)生的安全管理已成為學(xué)校重點關(guān)注的問題,而夜間學(xué)生是否在宿舍是學(xué)生存在安全隱患的重中之重,目前學(xué)校對學(xué)生的夜間住宿情況一般是采取不定時查巡宿舍的方式來查看學(xué)生的住宿情況,但是人工監(jiān)督方法存在很多缺點和不足,為此,設(shè)計一個基于大數(shù)據(jù)的學(xué)生宿舍門禁預(yù)警平臺,可及時推送學(xué)生在校情況的預(yù)警信息[3,4]。
人工查宿舍的方法一般由學(xué)校組織,人員包括輔導(dǎo)員、院領(lǐng)導(dǎo)、學(xué)生處工作人員、教務(wù)處工作人員等,在查宿舍之前需要協(xié)調(diào)多個部門,并提前通知宿管人員,避免非查宿舍人員進入宿舍。該方法的實施要求參與查宿舍的人員都有時間,消息不能被學(xué)生提前知道,并且查宿舍時還要考慮到男女宿舍問題,男老師不便進入女生宿舍,女老師不便進入男生宿舍等問題。另外查宿舍不能每天都去,不能發(fā)現(xiàn)全部的問題,往往在查宿舍之前,學(xué)生就已經(jīng)做好了應(yīng)對準(zhǔn)備,不能保證查宿舍結(jié)果的真實性。
在查完宿舍后,學(xué)生在心理上以為老師的監(jiān)督結(jié)束了,老師一走,后面學(xué)生夜間再外出,老師就無法得知,甚至可能一個學(xué)生連續(xù)幾天都不在宿舍,老師也無法得知。
大數(shù)據(jù)是指大量網(wǎng)絡(luò)行為數(shù)據(jù),也稱海量數(shù)據(jù),是互聯(lián)網(wǎng)、物聯(lián)網(wǎng)等在使用過程中產(chǎn)生、積聚的,表現(xiàn)為數(shù)據(jù)的大量化、數(shù)據(jù)來源和格式的多樣化、數(shù)據(jù)形式的多元化。通過對海量數(shù)據(jù)進行分類、加工和處理,能創(chuàng)造新的有價值、可預(yù)見性的、前瞻性的科學(xué)決策信息[5]。使用校內(nèi)大數(shù)據(jù)平臺對學(xué)生在校數(shù)據(jù)信息進行采集,可準(zhǔn)確分析得到學(xué)生的在校情況。利用學(xué)校已建立的移動應(yīng)用校園企業(yè)號平臺,根據(jù)微信企業(yè)號提供的公共接口可以快速、低成本地接入到微信中?;诖髷?shù)據(jù)的學(xué)生宿舍門禁預(yù)警平臺通過獲取學(xué)生每日行為信息,對獲取的大數(shù)據(jù)進行分析,得出有異常行為學(xué)生的信息,然后調(diào)用校園微信企業(yè)號消息推送接口,向有異常行為的學(xué)生的輔導(dǎo)員和學(xué)生處管理人員推送學(xué)生的異常信息。利用大數(shù)據(jù)在學(xué)生宿舍預(yù)警平臺中的應(yīng)用完全可以解決人工查宿舍難、信息不準(zhǔn)、統(tǒng)計不便等難題。
利用分布式文件系統(tǒng)HDFS(Hadoop Distributed FileSystem)和MapReduce并行計算框架為核心的Hadoop大數(shù)據(jù)處理技術(shù)[6,9],和數(shù)據(jù)源、ETL工具(DCI數(shù)據(jù)抽取整合)、分布式數(shù)據(jù)存儲、數(shù)據(jù)分析和可視化等模塊,搭建高校大數(shù)據(jù)平臺框架[7-9]。
宿舍門禁預(yù)警平臺的數(shù)據(jù)采集模塊通過采集門禁系統(tǒng)中的刷卡信息、學(xué)工系統(tǒng)中的輔導(dǎo)員信息、請假系統(tǒng)中的請假信息、校內(nèi)的上網(wǎng)時間信息等,根據(jù)學(xué)校相關(guān)的規(guī)定設(shè)置相應(yīng)條件,然后對這些數(shù)據(jù)進行分析得到符合條件的異常數(shù)據(jù),再調(diào)用預(yù)警平臺信息發(fā)送模塊,將異常學(xué)生的相關(guān)信息發(fā)送到對應(yīng)輔導(dǎo)員、院領(lǐng)導(dǎo)和學(xué)生處人員的微信中。平臺總體設(shè)計如圖1所示[9]。
圖1 平臺總體設(shè)計
采用基于ETL的DCI工具采集各個信息系統(tǒng)中的原始數(shù)據(jù),對采集的原始數(shù)據(jù)進行一系列的清洗與轉(zhuǎn)換[10],使數(shù)據(jù)成為學(xué)生宿舍門禁預(yù)警平臺能夠分析和處理的數(shù)據(jù)。
3.2.1 數(shù)據(jù)采集的來源
(1)學(xué)生宿舍門禁刷卡信息:包括學(xué)生所在宿舍、學(xué)號、姓名、性別、刷卡時間、進出類型等;
(2)學(xué)工系統(tǒng)中學(xué)生的班級信息:包括學(xué)生的年級、班級、學(xué)院、專業(yè)、輔導(dǎo)員等信息;
(3)學(xué)生請假信息:包括學(xué)生的請假開始時間和結(jié)束時間等;
(4)申請外宿信息:包括學(xué)生外宿的開始時間和結(jié)束時間等;
(5)一卡通消費信息:包括學(xué)生消費的地點(食堂、澡堂、超市)、消費的時間等;
(6)上網(wǎng)信息:包括學(xué)生上網(wǎng)認(rèn)證的時間和結(jié)束時間等。
3.2.2 數(shù)據(jù)采集的實現(xiàn)
該平臺使用ETL工具采集數(shù)據(jù)可保持兩個或兩個以上數(shù)據(jù)庫之間的數(shù)據(jù)同步。通常情況下同步數(shù)據(jù)是有時間限制(當(dāng)A庫發(fā)生變化時B庫需要在最短的時間內(nèi)響應(yīng))的,因此ETL工具進行批量數(shù)據(jù)處理時,會有一個時間差。門禁預(yù)警平臺采用3分鐘的時間差的方式采集數(shù)據(jù),即每隔3分鐘向數(shù)據(jù)資源中心請求一次數(shù)據(jù)。
從采集到的數(shù)據(jù)中提取出異常信息,然后通過發(fā)送模塊發(fā)送給對應(yīng)管理人員。通過大數(shù)據(jù)分析對采集到的數(shù)據(jù)進行分析,以確認(rèn)哪些數(shù)據(jù)屬于異常數(shù)據(jù),并根據(jù)相關(guān)規(guī)定,最終篩選出可以確認(rèn)為住宿異常學(xué)生的信息。
3.3.1 預(yù)警數(shù)據(jù)的確認(rèn)
假設(shè)學(xué)校規(guī)定在夜間時間T1到Tn之間是必須在宿舍,即早上T1時間后可以離開宿舍,晚上Tn時間必須返回宿舍,則
(1)在當(dāng)天的早上T1到當(dāng)天晚上Tn時間內(nèi),學(xué)生最后一次刷卡是進入宿舍且時間為Tk,如果在當(dāng)天晚上Tn到第二天早上T12時間沒有刷卡記錄,說明該學(xué)生夜間在校,否則說明學(xué)生有夜間出入;
(2)在當(dāng)天的早上T1到當(dāng)天晚上Tn時間內(nèi),學(xué)生最后一次刷卡是出宿舍且時間為Tk,如果在當(dāng)天晚上Tn到第二天早上T12時間沒有刷卡記錄,說明該學(xué)生夜間未歸,若有刷卡信息說明學(xué)生未按時間回宿舍;
(3)判定為夜間出入還是夜間未歸,設(shè)夜間時間Tm∈(Tn~T12),若Tn到Tm內(nèi)最后一次刷卡時間為進入,則認(rèn)定該學(xué)生為夜間出入,若Tn到Tm內(nèi)最后一次刷卡時間為出或沒有刷卡記錄則認(rèn)定為夜間未歸;
(4)判定連續(xù)夜間未歸,若連續(xù)幾天都被判定為夜間未歸,則被判定為連續(xù)夜間未歸,并記錄天數(shù)。
如學(xué)校規(guī)定23:40:00學(xué)生必須回到宿舍,對于夜間23:40:00~05:00:00之間存在刷卡記錄的學(xué)生,確認(rèn)為異常信息,根據(jù)其刷卡進出的類型,確認(rèn)預(yù)警類型為夜間進和夜間出;比如20:00外出,03:00:00返回,則預(yù)警“夜間進出”,如果23:40:00到05:00:00之間有多次刷卡記錄,則多次預(yù)警,每次刷卡均預(yù)警。夜間有外出記錄,到03:00:00之前未返回,則預(yù)警“夜間未歸”。
3.3.2 預(yù)警數(shù)據(jù)的篩選
根據(jù)大數(shù)據(jù)平臺采集到的學(xué)生的一卡通吃飯、打水、超市消費和洗澡時間、校內(nèi)上網(wǎng)認(rèn)證時間、請假時間、申請外宿時間等,篩選分析出存在的異常信息,然后將這些數(shù)據(jù)通過預(yù)警平臺發(fā)送出去。
根據(jù)人員的角色不同,分別對輔導(dǎo)員、分管學(xué)生的學(xué)院領(lǐng)導(dǎo)、學(xué)生處負(fù)責(zé)人員及相關(guān)領(lǐng)導(dǎo)配置不同的權(quán)限如圖2所示。
圖2 權(quán)限管理
采用分級授權(quán)功能,學(xué)生處可以授權(quán)給校領(lǐng)導(dǎo)和學(xué)院分管學(xué)生的領(lǐng)導(dǎo),學(xué)院分管學(xué)生領(lǐng)導(dǎo)可以授權(quán)給輔導(dǎo)員。輔導(dǎo)員、院系領(lǐng)導(dǎo)、學(xué)生處領(lǐng)導(dǎo)、校領(lǐng)導(dǎo)可根據(jù)授權(quán)角色查看不同范圍的信息,輔導(dǎo)員查看本班級的學(xué)生預(yù)警信息,并可對預(yù)警信息進行處置,院系領(lǐng)導(dǎo)查看本院系的學(xué)生預(yù)警信息,學(xué)生處領(lǐng)導(dǎo)和校領(lǐng)導(dǎo)查看全校的學(xué)生預(yù)警信息。
預(yù)警信息的發(fā)送是將采集并過濾后的異常數(shù)據(jù)發(fā)送到相關(guān)人員的微信上。將預(yù)警信息及時發(fā)送給輔導(dǎo)員,讓輔導(dǎo)員及時知道學(xué)生異常進出宿舍的信息,這是保障和預(yù)防學(xué)生出現(xiàn)安全問題的一個重要方法。預(yù)警信息發(fā)送包括發(fā)送服務(wù)模塊和調(diào)用微信企業(yè)號公共信息發(fā)送接口模塊和信息接收模塊,即將組織好的數(shù)據(jù)發(fā)送到應(yīng)用平臺,根據(jù)配置的相關(guān)權(quán)限,將不同的信息發(fā)送給不同權(quán)限的人員。
3.5.1 發(fā)送服務(wù)模塊
發(fā)送服務(wù)采用編寫定時任務(wù)完成,每隔3分鐘讀取數(shù)據(jù)庫中的新出現(xiàn)的預(yù)警數(shù)據(jù),然后根據(jù)配置的權(quán)限發(fā)送出去,保證數(shù)據(jù)發(fā)送的及時性。如圖3所示。
圖3 門禁預(yù)警信息發(fā)送
3.5.2 調(diào)用發(fā)送接口模塊
在微信企業(yè)號平臺的應(yīng)用管理中配置學(xué)生宿舍門禁預(yù)警模塊,如圖4所示。發(fā)送程序調(diào)用微信企業(yè)號提供的統(tǒng)一接口函數(shù),包括獲取企業(yè)號的accessToken方法GetQYAccessToken(string corpid(企業(yè)號ID),corpsecret(管理組密鑰))和信息推送方法SendQYMessage(corpid,corpsecret,paramData(提交的數(shù)據(jù)json),dataEncode(編碼方式))。
圖4 發(fā)送接口模塊
3.5.3 信息接收模塊
微信企業(yè)號平臺中學(xué)生宿舍門禁預(yù)警模塊配置好之后,設(shè)置查看范圍(包括輔導(dǎo)員、學(xué)生處人員等)后,這些人員就可以在企業(yè)號中看到此模塊。當(dāng)有預(yù)警信息產(chǎn)生時,預(yù)警平臺會把學(xué)生的預(yù)警信息發(fā)送到其輔導(dǎo)員的微信上,如圖5所示。
圖5 預(yù)警信息
當(dāng)輔導(dǎo)員接收學(xué)生的預(yù)警信息后,可及時聯(lián)系學(xué)生,了解其夜間進出的原因、或夜間未歸的原因,并在線記錄結(jié)果,如圖6所示。通過預(yù)警查詢可以查到每天發(fā)生的預(yù)警信息,實時掌握學(xué)生的異常行為,統(tǒng)計學(xué)生的違規(guī)次數(shù),及時警告和提醒學(xué)生。
圖6 預(yù)警信息查詢
預(yù)警平臺服務(wù)器在VMware vSphere6.0虛擬化平臺上搭建,服務(wù)器系統(tǒng)安裝Windows Server 2008 R2,服務(wù)器系統(tǒng)配置2顆4核CPU、16GB內(nèi)存、500GB磁盤,網(wǎng)絡(luò)配置校內(nèi)網(wǎng)IP可連接到校內(nèi)數(shù)據(jù)中心和各信息系統(tǒng)。平臺運行在IIS7.5上、數(shù)據(jù)庫使用Microsoft SQL Server 2008 R2。
使用校內(nèi)學(xué)生15天內(nèi)的真實刷卡、消費、上網(wǎng)認(rèn)證等記錄,測試平臺為保護學(xué)生的信息,將測試平臺中的姓名、學(xué)號和輔導(dǎo)員信息做了修改。通過DCI數(shù)據(jù)抽取和整合獲取相關(guān)信息系統(tǒng)數(shù)據(jù),預(yù)警平臺對數(shù)據(jù)加工處理和篩選出異常信息后,調(diào)用企業(yè)號消息接口推送到相關(guān)的人員微信中。
通過對預(yù)警平臺的異常信息判斷的準(zhǔn)確性、推送信息的及時性、數(shù)據(jù)接收的完整性,平臺運行的穩(wěn)定性進行測試。平臺在運行中可以準(zhǔn)確地判斷學(xué)生的異常信息,然后將異常信息及時地推送給對應(yīng)的輔導(dǎo)員,預(yù)警平臺抽取的各系統(tǒng)數(shù)據(jù)與原始數(shù)據(jù)一致。預(yù)警平臺中的數(shù)據(jù)使輔導(dǎo)員對學(xué)生的處理有理有據(jù),使得學(xué)生的夜間違規(guī)現(xiàn)象明顯減少。
在實際使用過程中,基于大數(shù)據(jù)的學(xué)生宿舍門禁預(yù)警平臺性能穩(wěn)定、信息推送及時準(zhǔn)確。通過微信企業(yè)號接收學(xué)生的預(yù)警信息,使輔導(dǎo)員和學(xué)校相關(guān)人員及時、準(zhǔn)確掌握到學(xué)生夜間休息情況。相比人工查宿舍的方法,預(yù)警平臺的使用使學(xué)生的夜間住宿信息更可靠、更穩(wěn)定、處理更及時,提高了檢查發(fā)現(xiàn)風(fēng)險隱患的能力,確保了學(xué)生的人身安全,增強了對學(xué)生的管理水平。