999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于WLAN大數(shù)據(jù)和Hive數(shù)據(jù)倉庫的高校人流溯源系統(tǒng)設(shè)計與實現(xiàn)

2021-12-09 06:37:44徐悅偉夏凌云
微型電腦應(yīng)用 2021年11期
關(guān)鍵詞:用戶系統(tǒng)

徐悅偉, 夏凌云

(中國石油大學(xué)(華東) 1.黨委辦公室、校長辦公室;2.信息化建設(shè)處, 山東 青島 266580)

0 引言

高校作為典型的人群活動和聚集地,人員活動和軌跡具備以下特點。(1)活動區(qū)域較為封閉,廣大師生的工作生活區(qū)域大多都集中在校園內(nèi)部。(2)人員交流頻繁且隨機,除了固定的宿舍成員接觸外,學(xué)生和老師的上課、自習(xí)、餐飲、鍛煉等時段均可能產(chǎn)生大量的隨機人員交流。因此在出現(xiàn)公共衛(wèi)生事件時,能通過某些方法和機制對人群接觸情況和流動情況進(jìn)行快速追溯和分析對于疾病防控顯得尤為重要。

但是當(dāng)前在高校內(nèi)部進(jìn)行人員的快速追溯和分析,還存在著一些問題。尤其是高校內(nèi)部人員在封閉空間的活動與常見鏈狀活動軌跡有很大的不同,呈現(xiàn)的是宿舍、教學(xué)樓等多場所進(jìn)行活動的網(wǎng)狀軌跡。網(wǎng)狀軌跡帶來的主要挑戰(zhàn)有兩個:一是難以采樣。教學(xué)樓和餐廳之類的場所,聚集性和流動性都很高,難以保證手工打卡數(shù)據(jù)完備性的同時,也不利于正常教學(xué)生活的進(jìn)行;二是分析難。人員在校內(nèi)的網(wǎng)狀活動軌跡的記錄將會不停累積海量的位置數(shù)據(jù),數(shù)據(jù)的存儲和關(guān)聯(lián)分析的難度非常大。如圖1所示。

鏈狀活動軌跡

為此,本文提出一種基于WLAN數(shù)據(jù)和Hive數(shù)據(jù)倉庫的高校公共衛(wèi)生事件人流溯源系統(tǒng),通過校園認(rèn)證系統(tǒng)和無線網(wǎng)絡(luò)管理系統(tǒng)實現(xiàn)位置的初步采集[1],并通過Hadoop框架中的Flume、HDFS、MapReduce、Hive等組件,利用分布式計算技術(shù)實現(xiàn)對用戶海量位置數(shù)據(jù)的快速同步、存儲、建倉和分析。

2 相關(guān)技術(shù)及系統(tǒng)介紹

2.1 校園無線網(wǎng)定位技術(shù)

在前期工作中,我們實現(xiàn)了如何利用校園無線網(wǎng)絡(luò)中的無線控制器和無線接入點定期捕獲用戶無線設(shè)備MAC地址和位置的對應(yīng)關(guān)系,并對接認(rèn)證系統(tǒng)找出MAC地址和用戶身份的對應(yīng)關(guān)系,形成“身份-MAC-位置”的關(guān)聯(lián)信息,以日志文件的形式保存在無線定位服務(wù)系統(tǒng)中[1]。

2.2 Hadoop大數(shù)據(jù)框架

Hadoop是一個Apache基金會主持的分布式計算基礎(chǔ)架構(gòu),主要基于HDFS分布式文件系統(tǒng)和MapReduce分布式計算模型,并與各種傳輸、查詢、計算、分析等組件組成的1個海量數(shù)據(jù)處理的技術(shù)框架。整個Hadoop框架具備高效、可靠、成本低等特點,已成為當(dāng)前大數(shù)據(jù)技術(shù)的首選實現(xiàn)框架[2]。

本系統(tǒng)中主要使用了HDFS、MapReduce、Flume、Hive組件。HDFS、MapReduce作為最常見的基礎(chǔ)組件在其他文獻(xiàn)已有詳細(xì)的論述,在此不再贅述。

2.3 CDH發(fā)行版

Hadoop作為一個開源生態(tài)框架,存在著生態(tài)組件分支較多,版本不一的問題。因此對于非大數(shù)據(jù)底層技術(shù)方向的研究人員來說,使用成熟的、便利的第三方發(fā)行版本可以使自身更聚焦于業(yè)務(wù)。本項目選擇的CDH發(fā)行版[3]是由Cloudera公司發(fā)行的較為常用的免費開源版本,能滿足大多數(shù)情況下的大數(shù)據(jù)存儲和分析需求。

2.4 Hive數(shù)據(jù)倉庫工具

Hive是Hadoop框架中的一個數(shù)據(jù)倉庫工具[4],主要功能如下。

(1) 將存儲在HDFS中的半結(jié)構(gòu)化的數(shù)據(jù)文件映射為數(shù)據(jù)表,數(shù)據(jù)分析人員可以直接使用類SQL語句來對HDFS內(nèi)數(shù)據(jù)文件進(jìn)行讀取和分析。

(2) 將數(shù)據(jù)分析人員讀取數(shù)據(jù)時采用SQL語句轉(zhuǎn)化為MapReduce任務(wù)來執(zhí)行,使查詢數(shù)據(jù)過程可以充分和便利地利用Hadoop大數(shù)據(jù)并行處理優(yōu)勢。

因此Hive的優(yōu)勢是可以很好地利用HDFS和MapReduce的分布式大數(shù)據(jù)處理能力的同時,沿用關(guān)系型數(shù)據(jù)庫的分析方式和經(jīng)驗進(jìn)行高效的在線數(shù)據(jù)分析。Hive對數(shù)據(jù)動態(tài)有寫入支持不佳、不支持流式數(shù)據(jù)實時處理的劣勢,對只需進(jìn)行日志數(shù)據(jù)進(jìn)行建倉和不定期查找的本項目來說不構(gòu)成較大影響。

2.5 Flume日志收集工具

Flume是CDH發(fā)行版中常用的日志收集工具[3],可將各業(yè)務(wù)系統(tǒng)的文件通過采集、聚合、傳輸、寫入的流程寫入到HDFS文件系統(tǒng)內(nèi),供其他Hadoop組件讀取和調(diào)用。

3 系統(tǒng)實現(xiàn)

3.1 系統(tǒng)總體框架設(shè)計

系統(tǒng)的總體框架如圖2所示。

圖2 系統(tǒng)總體框架設(shè)計

(1) 用戶接入層:所有用戶在該層接入校園無線網(wǎng)絡(luò),并不斷產(chǎn)生并更新接入設(shè)備(MAC)和位置(AP)的對應(yīng)關(guān)系。

(2) 數(shù)據(jù)采集層:該層通過定期采集用戶接入層的MAC-位置對應(yīng)關(guān)系數(shù)據(jù),對接校園網(wǎng)認(rèn)證系統(tǒng)中的“MAC-學(xué)工號”關(guān)系,將數(shù)據(jù)關(guān)聯(lián)為“學(xué)工號-位置”的數(shù)據(jù)記錄,實質(zhì)就是用戶位置信息表。每條數(shù)據(jù)加上采樣時間后,以文本文件的形式存放于定位系統(tǒng)的日志文件中。

(3) 數(shù)據(jù)同步層:該層通過Flume將數(shù)據(jù)采集層作為數(shù)據(jù)源,HDFS作為保存節(jié)點,通過定時任務(wù)將定位日志數(shù)據(jù)定期匯總采集到HDFS中進(jìn)行存儲。

(4) 數(shù)據(jù)存儲層:本層利用HDFS文件系統(tǒng)對不停同步過來的位置日志數(shù)據(jù)進(jìn)行分布式存儲,同時HDFS也是后期進(jìn)行數(shù)據(jù)分析的基礎(chǔ)文件系統(tǒng)。

(5) 數(shù)據(jù)封裝層:數(shù)據(jù)封裝層使用數(shù)倉工具Hive,將所有日志文件封裝為支持類SQL查詢的數(shù)據(jù)表,以便后期查詢[5]。

(6) 數(shù)據(jù)分析層:分析人員可以按傳統(tǒng)模式設(shè)計查詢的SQL語句,并通過命令行方式輸入查詢語句,Hive會將SQL語句自動解析為MapReduce語句去讀取封裝好的數(shù)據(jù)倉庫數(shù)據(jù),并返回最終期望的查詢結(jié)果。

3.2 系統(tǒng)部署與配置

系統(tǒng)中的用戶接入層和數(shù)據(jù)采集層已在前期完成了部署和使用[1],并將位置信息存放在固定文件夾,文件采用“,”符號分隔不同數(shù)據(jù)項,用“ ”符號作為數(shù)據(jù)條目間的劃分。本系統(tǒng)的部署和配置還有以下關(guān)鍵步驟。

3.2.1 CDH的安裝

CDH提供了一個官方的自動化部署和運維工具Cloudera Manager,具備完善的CDH集群的自動安裝、集中管理基于集群的監(jiān)控和告警功能。通過Cloudera Manager安裝CDH主要分為3大步驟。

(1) 服務(wù)器和操作系統(tǒng)準(zhǔn)備:主要內(nèi)容包含準(zhǔn)備3臺安裝好的Linux系統(tǒng)服務(wù)器,并配置好服務(wù)器時間服務(wù)、Hosts域名解析、相互的免密碼登錄、防火墻和SELinux等基礎(chǔ)配置。

(2) 安裝Cloudera Manager:在服務(wù)器上安裝MySQL數(shù)據(jù)庫、Oracle JDK1.8、Httpd服務(wù),以便安裝者通過Web瀏覽器圖形化操作Cloudera Manager。通過Yum安裝Cloudera Manager,并在各臺服務(wù)器配置啟動項配置,啟動Cloudera Manager服務(wù)。

(3) 安裝CDH:通過Cloudera Manager的Web管理端在圖形化界面上按提示輸入安裝參數(shù)。由于我們本項目需求的組件比較少,因此僅需選擇核心Hadoop服務(wù)組合即可,包含Hadoop框架最常用和必須的HDFS、YARN(內(nèi)含MapReduce2)、Zookeeper(分布式組件協(xié)調(diào))、Oozie(Hadoop工作流調(diào)度引擎)、HUE(Hadoop圖形化UI)以及Hive組件進(jìn)行自動安裝直到結(jié)束。

3.2.2 Flume安裝和配置

安裝好集群后,需要分別在Hadoop集群和無線定位系統(tǒng)服務(wù)器上安裝FlumeAgent來實現(xiàn)數(shù)據(jù)同步。在CDHHadoop集群的“集群”-“操作”下選擇“添加服務(wù)”,按提示選擇在主節(jié)點安裝Flume組件。在無線定位系統(tǒng)服務(wù)器端可直接使用Flume安裝包來安裝FlumeAgent。

每個FlumeAgent都分為3個部分:Source、Channel、Sink。Source代表數(shù)據(jù)流的源頭;Channel代表數(shù)據(jù)傳輸?shù)木彺婧凸艿?Sink代表數(shù)據(jù)傳輸?shù)慕K點。可以通過將一個Agent的Sink和另外一個Agent的Source進(jìn)行來實現(xiàn)多個Agent之間的數(shù)據(jù)流串聯(lián)同步。我們在無線定位服務(wù)器端和Hadoop集群端分別安裝FlumeAgent,并將無線定位服務(wù)器的Sink和Hadoop集群的Source通過Avro的網(wǎng)絡(luò)RPC方式進(jìn)行串聯(lián),實現(xiàn)普通Log數(shù)據(jù)文件到Hadoop分布式文件系統(tǒng)的傳輸。實現(xiàn)方案和配置[6]如圖3所示。

圖3 通過Flume實現(xiàn)數(shù)據(jù)同步

3.2.3 Hive建倉

完成上述配置后,在定位服務(wù)器和Hadoop集群上啟動Flume進(jìn)程,即可開啟數(shù)據(jù)同步。隨后的Hive建倉和查詢需要在HiveShell內(nèi)進(jìn)行,過程如下。

(1) 創(chuàng)建數(shù)據(jù)倉庫search

hive>create database search;

(2) 創(chuàng)建外部數(shù)據(jù)表lbs,包含3個數(shù)據(jù)項:user、ap、time,同時指定數(shù)據(jù)項之間分隔符為逗號,數(shù)據(jù)行之間分隔符為回車符。

hive>create EXTERNAL table lbs(user string,apstring,time string,)

>ROW FORMAT DELIMITED

>FIELDS TERMINATED BY ','

>LINES TERMINATED BY ' '

>stored as textfile;

(3) 將hdfs://Locationlog/下的所有Log文件與Lbs表進(jìn)行關(guān)聯(lián)

hive>LOAD DATA INPATH 'hdfs://Locationlog/' INTO TABLE lbs;

至此,使用SQL語句“select * from lbs”,即可發(fā)現(xiàn)日志數(shù)據(jù)已加載至Hive中Search數(shù)據(jù)庫的Lbs數(shù)據(jù)表中。

3.2.4 分布式查詢

我們可以通過SQL語句來指定各種查詢條件和關(guān)聯(lián)條件,Hive將會把SQL語句自動轉(zhuǎn)換為MapReduce語句,在海量的日志數(shù)據(jù)中進(jìn)行分布式查找并返回結(jié)果。最終實現(xiàn)諸如“查找某個時間階段內(nèi)處于同一個AP下的所有用戶”,或者“追溯某些用戶、空間或時間的關(guān)聯(lián)性”等系統(tǒng)設(shè)計目標(biāo)。

3.3 應(yīng)用效果

根據(jù)以上方式搭建的Hive數(shù)倉,結(jié)合前期的“AC-AP-位置”管理模塊和Echarts圖表模塊,在實際中得到了很好的應(yīng)用。在Hive數(shù)倉基礎(chǔ)上搭建的WLAN終端軌跡記錄和分析系統(tǒng),實現(xiàn)了根據(jù)采樣時間點顯示人員聚集熱力圖,以及按人快速搜索查詢同AP下匯集人員功能,如圖4所示。

圖4 人員聚集熱力圖

4 總結(jié)

本方案提出了一個通用可行的系統(tǒng)設(shè)計和實現(xiàn)方法,將海量的位置數(shù)據(jù)導(dǎo)入Hadoop并建立數(shù)據(jù)倉庫,實現(xiàn)分布式、并行的數(shù)據(jù)查找和分析,使高校內(nèi)部人員流動的數(shù)據(jù)化溯源的快速實現(xiàn)成為可能。其中大數(shù)據(jù)框架搭建和數(shù)據(jù)同步與建倉的方法,也可以推廣到其他非實時流式數(shù)據(jù)處理的海量數(shù)據(jù)挖掘和分析的場景。在下一步工作中,我們還需優(yōu)化Hive中數(shù)據(jù)的分區(qū)加載和使用,以提高數(shù)據(jù)查找和分析效率,同時優(yōu)化和豐富人流追溯的SQL語句,來實現(xiàn)更完善的和更個性化的查找需求。

猜你喜歡
用戶系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
Camera360:拍出5億用戶
主站蜘蛛池模板: 69综合网| 久久国产免费观看| 久青草免费在线视频| 亚洲欧美日韩中文字幕在线| 亚洲黄网视频| 四虎影视国产精品| 久久精品丝袜| 中文字幕人妻av一区二区| 欧美激情综合一区二区| 国产精品一区二区在线播放| 精品第一国产综合精品Aⅴ| 欧美激情,国产精品| 九九热视频精品在线| 色悠久久综合| 欧美成人免费一区在线播放| 亚洲美女久久| 91精品国产福利| 最新日本中文字幕| 欧美一区二区三区不卡免费| a级毛片毛片免费观看久潮| 亚洲第一天堂无码专区| 欧美a级完整在线观看| 亚洲性一区| 日本亚洲欧美在线| 欧美天天干| 中文字幕永久视频| 欧美成人午夜视频| 亚洲欧美国产高清va在线播放| 欧美啪啪网| 亚洲乱码精品久久久久..| 国产精品九九视频| 国产JIZzJIzz视频全部免费| 天天爽免费视频| 热这里只有精品国产热门精品| 国产高清在线观看91精品| 国产欧美在线观看视频| 久久久精品无码一区二区三区| 婷婷99视频精品全部在线观看| 欧美精品一区在线看| 久久精品国产亚洲AV忘忧草18| 91在线免费公开视频| 国产精品短篇二区| 在线观看无码a∨| 高清精品美女在线播放| 99久视频| 热re99久久精品国99热| 亚洲欧美一区二区三区蜜芽| 波多野结衣第一页| 国产精品所毛片视频| 亚洲天堂视频在线免费观看| 亚洲国产综合精品一区| 久久精品无码一区二区日韩免费| av在线手机播放| 亚洲欧美日韩另类在线一| 原味小视频在线www国产| 无码乱人伦一区二区亚洲一| 成人av手机在线观看| 国内丰满少妇猛烈精品播| 免费看久久精品99| 久久久国产精品无码专区| 亚洲国产精品日韩欧美一区| 日本免费福利视频| 强奷白丝美女在线观看| 国产精品一区二区国产主播| 国产精品九九视频| 欧美成人看片一区二区三区| 亚洲欧美日韩视频一区| 在线观看国产精品第一区免费| 国产成人精品日本亚洲77美色| 精品视频在线观看你懂的一区 | 欧美亚洲综合免费精品高清在线观看| 97国产成人无码精品久久久| 久久精品国产精品国产一区| 亚洲swag精品自拍一区| 国产成人超碰无码| 亚洲第一香蕉视频| 在线观看无码av五月花| 国国产a国产片免费麻豆| 亚洲婷婷六月| 欧美高清日韩| 无码av免费不卡在线观看| 欧美日韩午夜视频在线观看|