




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
目錄
摘要I
AbstractII
1緒論1
1.1背景與意義1
1.2現(xiàn)狀和發(fā)展趨勢(shì)2
1.3研究方案2
2需求分析4
2.1經(jīng)濟(jì)可行性4
2.2技術(shù)可行性4
2.3社會(huì)可行性6
3系統(tǒng)需求分析7
3.1系統(tǒng)目標(biāo)7
3.2系統(tǒng)功能分析7
3.2.1用戶注冊(cè)和用戶信息管理7
3.2.2設(shè)備注冊(cè)7
3.2.3設(shè)備管理8
3.2.4接入數(shù)據(jù)查看8
3.3系統(tǒng)功能結(jié)構(gòu)8
3.4系統(tǒng)功能描述和用例分析9
3.4.1系統(tǒng)的總用例圖9
3.4.2用戶信息管理9
3.4.3設(shè)備管理10
4云平臺(tái)數(shù)據(jù)庫(kù)設(shè)計(jì)12
4.1關(guān)系數(shù)據(jù)庫(kù)的選擇12
4.2緩存數(shù)據(jù)庫(kù)Redis的使用12
4.3數(shù)據(jù)庫(kù)E-R聯(lián)系圖13
4.4數(shù)據(jù)庫(kù)表的設(shè)計(jì)14
4.4.1概要說(shuō)明14
4.4.2用戶表t_users15
4.4.3設(shè)備類型表t_device_type15
4.4.4設(shè)備表t_device15
4.4.5消息記錄表t_message_info16
4.5數(shù)據(jù)庫(kù)實(shí)體類抽象17
5云平臺(tái)系統(tǒng)詳細(xì)設(shè)計(jì)18
5.1系統(tǒng)總體架構(gòu)的設(shè)計(jì)18
5.2系統(tǒng)開(kāi)發(fā)工具22
5.3系爭(zhēng)項(xiàng)目結(jié)構(gòu)的搭建23
6項(xiàng)目展示26
6.1登錄界面展示26
6.2個(gè)人信息展示頁(yè)26
6.3設(shè)備管理模塊展示27
6.4數(shù)據(jù)中心模塊界面展示29
7系統(tǒng)測(cè)試31
7.1可靠性測(cè)試31
7.2兼容性測(cè)試32
7.3測(cè)試用例32
7.3.1測(cè)試框架JUnit32
7.3.2DeviceServer消息收發(fā)測(cè)試33
參考文獻(xiàn)37
致謝38
摘要
當(dāng)今,環(huán)境問(wèn)題和居家安全越來(lái)越受到人們的關(guān)注。在工業(yè)或者民用建筑中
例如學(xué)校,酒店,小區(qū),工廠,甚至是每個(gè)家庭都會(huì)裝有空氣檢測(cè)的物聯(lián)網(wǎng)設(shè)備,
例如煙霧報(bào)警器,空氣凈化器,空氣質(zhì)量檢測(cè)儀等,讓人們能夠及時(shí)的對(duì)危急情
況作出處理,上述設(shè)備雖然能夠不間斷的檢測(cè)空氣中的狀況,但還是存在很多無(wú)
法忽視的缺點(diǎn)。
首先,這些設(shè)備一般都是單節(jié)點(diǎn)的,彼此之間相互獨(dú)立,因?yàn)樵O(shè)備可能會(huì)出
現(xiàn)各種故障,如果沒(méi)有一個(gè)好的系統(tǒng)能夠直接定位到出故障的設(shè)備,那么勢(shì)必會(huì)
帶來(lái)管理上的不便,嚴(yán)重的甚至可能影響到對(duì)災(zāi)情的及時(shí)警報(bào)。其次就是預(yù)警的
及時(shí)性,常規(guī)的煙霧報(bào)警器都是通過(guò)發(fā)出刺耳的響鈴聲來(lái)引起周?chē)说淖⒁?。?/p>
是對(duì)于家庭式的,很有可能出現(xiàn)當(dāng)警報(bào)響起時(shí)家中無(wú)人,這就使得煙霧報(bào)警器失
去了其本有的意義。最后只基于硬件設(shè)備本身功能而言,已經(jīng)遠(yuǎn)遠(yuǎn)不能夠滿足用
戶日常的生活需求,且有著許多使用上的不便。
針對(duì)以上傳統(tǒng)空氣硬件設(shè)備存在的問(wèn)題,搭建一個(gè)用戶空氣設(shè)備數(shù)據(jù)處理云
平臺(tái)。該平臺(tái)擁有設(shè)備狀態(tài)監(jiān)測(cè),設(shè)備數(shù)據(jù)可視化分析,消息及時(shí)預(yù)警等功能。
用戶可以直接通過(guò)云平臺(tái)系統(tǒng)查看其所有設(shè)備的運(yùn)行狀態(tài),這樣就可以及時(shí)定位
故障設(shè)備。空氣質(zhì)檢將檢測(cè)數(shù)據(jù)上傳至云平臺(tái)進(jìn)行存儲(chǔ),云平臺(tái)對(duì)原始數(shù)據(jù)進(jìn)行
二次處理,并將分析結(jié)果以更加人性化的方式展現(xiàn)給用戶。云平臺(tái)擁有消息通知
模塊,用戶可以根據(jù)設(shè)備檢測(cè)到的不同危機(jī)情況等級(jí),設(shè)置相應(yīng)的處理事件。例
如當(dāng)質(zhì)檢設(shè)備檢測(cè)到火災(zāi)發(fā)生時(shí),云平臺(tái)接受到此類事件,將自動(dòng)通過(guò)電話、短
信、郵件等方式對(duì)用戶進(jìn)行提醒。再例如當(dāng)空氣中PM2.5含量過(guò)高時(shí),提醒用
戶出門(mén)記得帶口罩,對(duì)于裝配有智能家居系統(tǒng)的用戶,甚至可以聯(lián)動(dòng)空氣凈化器
工作,維持空氣質(zhì)量的穩(wěn)定。
關(guān)鍵詞:空氣質(zhì)檢;云平臺(tái);設(shè)備管理;及時(shí)預(yù)警
Abstract
Today,environmentalissuesandhomesecurityaregettingmoreandmore
attention.Inindustrialorcivilbuildingssuchas.schools,hotels,communities,
factories,andeveneveryfamily,air-testedInternetofThings(IoT)devices(e.g.smoke
alarms,airpurifiers,airqualitydetectors,etc.)areinstalledsothatpeoplecanbe
timelydealingwithcriticalsituations,althoughtheaboveequipmentcancontinuously
detecttheconditionsintheair,therearestillmanyshortcomingsthatcannotbe
ignored.
Firstofall,thesedevicesaregenerallysingle-nodeandindependentfromeach
other,becausethedevicemayhavevariousfailures.Ifthereisnotagoodsystemthat
candirectlylocatethefaileddevice,itwillinevitablybringaboutmanagement
inconvenience.Serious,itmayevenaffectthetimelywarningofthedisaster.The
secondisthetimelinessofearlywarning.Conventionalsmokealarmsarecausedby
harshringingsoundstoattractpeople'sattention.Butforfamily-style,itisverylikely
thatnooneisathomewhenthealarmsounds,whichmakesthesmokealarmloseits
originalmeaning.Intheend,basedonlyonthefunctionofthehardwaredeviceitself,
itisfarfrombeingabletomeetthedailylifeneedsoftheuser,andtherearemany
inconveniencesinuse.
Aimingattheproblemsexistingintheabovetraditionalairhardwaredevices,a
user-friendlyairqualityprocessingcloudplatformbasedontheInternetofThings
wasconstructed.Theplatformhasthefunctionsofequipmentstatusmonitoring,
equipmentdatavisualizationanalysis,Userscandirectlychecktherunningstatusof
alltheirdevicesthroughthecloudplatformsystem,sothatfaultydevicescanbe
locatedintime.Theairqualityinspectionuploadstheinspectiondatatothecloud
platformforstorage.Thecloudplatformperformssecondaiyprocessingonthe
originaldataandpresentstheanalysisresultstotheuserinamorehumanemanner.
Thecloudplatformhasamessagenotificationmodule.Whenthedevicedetectsa
criticalsituation,itautomaticallyinformstheuserthroughinstantmessaging.
Keywords:AirQualityInspection;CloudPlatfbrm;EquipmentManagement
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
1緒論
1.1背景與意義
隨著社會(huì)經(jīng)濟(jì)的日趨發(fā)展和人們對(duì)生活品質(zhì)的不斷追求,環(huán)境問(wèn)題和居家安
全越來(lái)越受到人們的關(guān)注?,F(xiàn)如今,在工業(yè)或者民用建筑中例如學(xué)校,酒店,小
區(qū),工廠,甚至是每個(gè)家庭都會(huì)裝有空氣檢測(cè)的物聯(lián)網(wǎng)設(shè)備,例如煙霧報(bào)警器,
空氣凈化器,空氣質(zhì)量檢測(cè)儀等,讓人們能夠及時(shí)的對(duì)危急情況作出處理,特別
是火災(zāi),煤氣泄漏,有毒氣體等嚴(yán)重威脅到人們健康安全的情況。上述設(shè)備雖然
能夠不間斷的檢測(cè)空氣中的狀況,但還是存在很多無(wú)法忽視的缺點(diǎn)。
首先,這些設(shè)備一般都是單節(jié)點(diǎn)的,彼此之間相互獨(dú)立,假設(shè)一個(gè)小區(qū)裝有
數(shù)百的煙霧報(bào)警器,就需要耗費(fèi)大量的人力定期對(duì)這些設(shè)備進(jìn)行檢查,因?yàn)樵O(shè)備
可能會(huì)出現(xiàn)各種故障,如果沒(méi)有一個(gè)好的系統(tǒng)能夠直接定位到出故障的設(shè)備,那
么勢(shì)必會(huì)帶來(lái)管理上的不便,嚴(yán)重的甚至可能影響到及時(shí)對(duì)災(zāi)情進(jìn)行警報(bào)。
其次就是預(yù)警的及時(shí)性,常規(guī)的煙霧報(bào)警器都是通過(guò)發(fā)出刺耳的響鈴聲來(lái)引
起周?chē)说淖⒁?。但是?duì)于家庭式的,很有可能出現(xiàn)當(dāng)警報(bào)響起時(shí)家中無(wú)人,這
就使得煙霧報(bào)警器失去了其本有的意義。
最后只基于硬件設(shè)備本身功能而言,已經(jīng)遠(yuǎn)遠(yuǎn)不能夠滿足用戶日常的生活需
求,且有著許多使用上的不便。隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展以及處理器性能的不
斷強(qiáng)大,人們對(duì)產(chǎn)品的要求已經(jīng)不僅僅局限在其功能,而是深入到產(chǎn)品背后的服
務(wù)了。在以前處理器性能遠(yuǎn)不如現(xiàn)在強(qiáng)大,網(wǎng)絡(luò)帶寬資源昂貴且網(wǎng)絡(luò)延遲高的年
代,想要在設(shè)備本身的功能上進(jìn)行服務(wù)的擴(kuò)展顯得不太現(xiàn)實(shí),并且將大大提高生
產(chǎn)成本,這是企業(yè)所不能夠承受的。
針對(duì)以上傳統(tǒng)空氣硬件設(shè)備存在的這些問(wèn)題,提出搭建一個(gè)用戶空氣設(shè)備數(shù)
據(jù)處理云平臺(tái)。首先,該平臺(tái)支持海量空氣質(zhì)檢設(shè)備的的同時(shí)接入,云平臺(tái)系統(tǒng)
可以查看所有設(shè)備的運(yùn)行狀態(tài),能夠及時(shí)定位故障設(shè)備,從此遠(yuǎn)離人工定時(shí)檢查
這種低效的方式。其次空氣質(zhì)檢可以將檢測(cè)數(shù)據(jù)上傳至云平臺(tái)進(jìn)行存儲(chǔ),利用云
服務(wù)器強(qiáng)大的計(jì)算性能,對(duì)原始數(shù)據(jù)進(jìn)行二次處理,并將分析結(jié)果以更加人性化
的方式展現(xiàn)給用戶,給用戶帶來(lái)管理和使用上的方便。再者,云平臺(tái)擁有消息隊(duì)
列模塊,用戶可以根據(jù)設(shè)備檢測(cè)到的不同危機(jī)情況等級(jí),設(shè)置相應(yīng)的處理事件。
例如當(dāng)質(zhì)檢設(shè)備檢測(cè)到火災(zāi)發(fā)生時(shí),云平臺(tái)接受到此類事件,將自動(dòng)通過(guò)電話、
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
短信、郵件等方式對(duì)用戶進(jìn)行提醒。再例如當(dāng)空氣中PM2.5含量過(guò)高時(shí),提醒
用戶出門(mén)記得帶口罩,對(duì)于裝配有智能家居系統(tǒng)的用戶,甚至可以聯(lián)動(dòng)空氣凈化
器工作,維持空氣質(zhì)量的穩(wěn)定。
1.2現(xiàn)狀和發(fā)展趨勢(shì)
物聯(lián)網(wǎng)云平臺(tái)山已經(jīng)不是一個(gè)特別新奇的概念了。國(guó)內(nèi)幾大BAT對(duì)于物聯(lián)網(wǎng)
云平臺(tái)的建設(shè)早已經(jīng)有了戰(zhàn)略性的布局。基于云、大數(shù)據(jù)、硬件管理平臺(tái)等自身
傳統(tǒng)優(yōu)勢(shì),百度、阿里、騰訊發(fā)揮數(shù)據(jù)采集后的價(jià)值,以及大數(shù)據(jù)分析下的各種
衍生價(jià)值,成立QQ物聯(lián)、微信硬件平臺(tái)、阿里云IoT、百度云一天工一智能物
聯(lián)網(wǎng)平臺(tái)。BAT搭建的云平臺(tái)不特別針對(duì)某一種特定類型的物聯(lián)網(wǎng)設(shè)備,而是
作為一種中介平臺(tái),簡(jiǎn)化了一些開(kāi)發(fā)上的復(fù)雜度,比如制定了統(tǒng)一的數(shù)據(jù)傳輸協(xié)
議,屏蔽硬件設(shè)備和云應(yīng)用之間通信的復(fù)雜度等。但是企業(yè)依舊需要在開(kāi)發(fā)了物
聯(lián)網(wǎng)設(shè)備的基礎(chǔ)上獨(dú)立開(kāi)發(fā)云應(yīng)用來(lái)處理和管理自己的設(shè)備,只不過(guò)物聯(lián)網(wǎng)設(shè)備
和云應(yīng)用之間的通信通過(guò)統(tǒng)一的中介云平臺(tái)轉(zhuǎn)發(fā)而已。這樣也就導(dǎo)致了一個(gè)問(wèn)
題,對(duì)于很多功能不是特別復(fù)雜的物聯(lián)網(wǎng)設(shè)備來(lái)說(shuō),也需要企業(yè)獨(dú)立開(kāi)發(fā)云管理
平臺(tái),增加了開(kāi)發(fā)成本。本論文研究的物聯(lián)網(wǎng)云處理平臺(tái)只針對(duì)空氣質(zhì)檢領(lǐng)域,
對(duì)空氣質(zhì)量檢測(cè)儀、煙霧報(bào)警器等物聯(lián)網(wǎng)設(shè)備提供通用的云服務(wù),例如設(shè)備管理,
空氣檢測(cè)數(shù)據(jù)云端展示,全國(guó)天氣和空氣質(zhì)量數(shù)據(jù)的推送,消息訂閱等等。
1.3研究方案
空氣設(shè)備云平臺(tái)的系統(tǒng)總架構(gòu)圖如圖1-1所示。其中硬件設(shè)備指的是NB-IoT
Device,也就是空氣質(zhì)量檢測(cè)器,負(fù)責(zé)采集室內(nèi)煙霧、PM2.5、CO等數(shù)據(jù),并
通過(guò)NB-IoT⑶網(wǎng)絡(luò)將數(shù)據(jù)上傳到云平臺(tái)。同時(shí)接收云平臺(tái)下發(fā)的指令,并對(duì)其指
令進(jìn)行相應(yīng)的響應(yīng)。硬件設(shè)備和云平臺(tái)之間通過(guò)Internet進(jìn)行連接,硬件設(shè)備和
云平臺(tái)想要進(jìn)行數(shù)據(jù)的交換,必須要制定統(tǒng)一的通信方式和數(shù)據(jù)交換格式??紤]
到硬件設(shè)備要高響應(yīng)、低延遲、低功耗的特點(diǎn)。我們暫時(shí)選定TCP傳輸協(xié)議進(jìn)
行通信。自定義數(shù)據(jù)交換格式,通過(guò)DES對(duì)稱加密算法來(lái)對(duì)傳輸數(shù)據(jù)加密,保
證了傳輸?shù)陌踩?。最后是本論文的主要研究部分云系統(tǒng)的架構(gòu),也就是用戶空
氣質(zhì)量數(shù)據(jù)處理云平臺(tái)。
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
硬件API接口WEB展示層
消
權(quán)Redisg爰存日
息
限志
隊(duì)
控記
列
錄
數(shù)
數(shù)
制設(shè)
據(jù)
據(jù)
備
其
處
爬
管
它
取
理
理
模
模
模
模
塊
塊
塊
塊
圖1-1云平臺(tái)架構(gòu)圖
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
2需求分析
2.1經(jīng)濟(jì)可行性
在做任何一件事之前,我們都會(huì)考慮其投入產(chǎn)出比、效率、效力等,這個(gè)項(xiàng)
目消耗資源的成本以及其后期帶來(lái)的回報(bào)決定了項(xiàng)目意義。
開(kāi)發(fā)一個(gè)空氣設(shè)備處理云平臺(tái)也以下簡(jiǎn)稱空氣云??諝庠崎_(kāi)發(fā)目的明確,
旨在為空氣質(zhì)檢相關(guān)物聯(lián)網(wǎng)設(shè)備開(kāi)發(fā)一個(gè)具有通用性和可擴(kuò)展性的物聯(lián)網(wǎng)云平
臺(tái)??諝庠铺峁┮杂脩魹楹诵牡脑O(shè)備管理解決方案,該平臺(tái)為每個(gè)用戶都提供設(shè)
備注冊(cè)、設(shè)備管理、數(shù)據(jù)監(jiān)控、空氣數(shù)據(jù)爬取、消息預(yù)警等通用功能。其開(kāi)發(fā)成
本主要體在幾臺(tái)高性能服務(wù)器的租賃,而項(xiàng)目相關(guān)的開(kāi)發(fā)技術(shù)都是開(kāi)源且成熟
的,不需要成本。在開(kāi)發(fā)初期,只需要一臺(tái)服務(wù)器即可,可以隨著平臺(tái)并發(fā)量需
求的提高增加服務(wù)器數(shù)量,將數(shù)據(jù)庫(kù)、緩存、應(yīng)用部署在不同的服務(wù)器上,逐漸
升級(jí)系統(tǒng)架構(gòu)。所以其成本是宏觀可控的。
2.2技術(shù)可行性
從開(kāi)發(fā)的角度來(lái)說(shuō),技術(shù)可行性可以理解為技術(shù)選型和系統(tǒng)架構(gòu)。我們目標(biāo)
是開(kāi)發(fā)一個(gè)具有通用性和可擴(kuò)展性的空氣云,那么在做技術(shù)選型和系統(tǒng)架構(gòu)設(shè)計(jì)
時(shí)也應(yīng)該選擇一種主流的的編程語(yǔ)言,并且該編程語(yǔ)言的開(kāi)源社區(qū)擁有許多成熟
的項(xiàng)目和技術(shù)能夠幫助我們更加高效的開(kāi)發(fā)網(wǎng)站。云平臺(tái)使用Java作為開(kāi)發(fā)語(yǔ)
言,其版本為1.8。在TIOBE編程語(yǔ)言排行榜中,Java長(zhǎng)期位居榜首,Java生態(tài)
圈如圖2-1所示,在安卓開(kāi)發(fā)和Web領(lǐng)域中,它都有著舉足輕重的地位。
4
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
JavaLanciuaae
Tools&
ToolAPIs
PeDlOYment
UserInterface
Intearahon
Llbranes
OtherBase
Libraries
lanaandutil
BaseLibraries
JavaVirtualMachineJavaHotSpotClientandServerVM
圖2-1DescriptionofJavaConceptualDiagram
來(lái)源:ORACLEWEBSITEhttps://docs.oracle.eom/javase/8/docs/
云平臺(tái)采用的是當(dāng)前極為流行的MVC架構(gòu)設(shè)計(jì)⑷的,MVC將整個(gè)云平臺(tái)系
統(tǒng)分為三層,并加入了穿插于各層的權(quán)限控制、日志記錄、消息隊(duì)列功能。其中
硬件API接口和WEB展示層為控制層(Controller),Redis緩存和一些功能模塊
為服務(wù)層,最底層是系統(tǒng)的持久層,也就是數(shù)據(jù)的本地存儲(chǔ)。其中服務(wù)層和持久
層統(tǒng)稱為模型層(Model),層與層之間通過(guò)接口連接,保證了系統(tǒng)功能的高內(nèi)聚、
低耦合,方便以后進(jìn)行功能的擴(kuò)展。云平臺(tái)的技術(shù)棧如圖2-2所示。
系統(tǒng)技術(shù)棧
項(xiàng)目構(gòu)建MVC框架數(shù)據(jù)爬取框架數(shù)據(jù)庫(kù)曰志工具視圖層技術(shù)
GitSpringMVCGeccoMySQLLog4jHTML
MavenSpringRedisSlf4jCSS
MybatisJavaScript
Thymeleaf
圖2-2云平臺(tái)系統(tǒng)技術(shù)棧
其架構(gòu)的簡(jiǎn)要技術(shù)選型如下:
1.項(xiàng)目構(gòu)建和版本控制工具:采用Maven做項(xiàng)目構(gòu)建和依賴管理工具,使
用Git做版本控制。
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
2.MVC框架選擇:本平臺(tái)整體架構(gòu)采用SSM框架搭建,也就是JavaWeb
開(kāi)發(fā)中常用的SpringMVC+Spring+Mybatis組合。為了加快云平臺(tái)的響應(yīng)速度和
支持更高的并發(fā)數(shù),本平臺(tái)加入了數(shù)據(jù)緩沖層,采用了基于內(nèi)存的鍵值型數(shù)據(jù)庫(kù)
RediSo
3.數(shù)據(jù)爬取框架:為了給空氣質(zhì)量檢測(cè)儀推送全國(guó)天氣和空氣數(shù)據(jù),需要
空氣云定時(shí)從其它天氣網(wǎng)站中實(shí)時(shí)爬取天氣和空氣數(shù)據(jù)存儲(chǔ)到本地?cái)?shù)據(jù)庫(kù),硬件
設(shè)備可以通過(guò)硬件API接口來(lái)獲取這些數(shù)據(jù)。本平臺(tái)采取的數(shù)據(jù)爬取框架為
WebMagic,它能夠簡(jiǎn)化數(shù)據(jù)的爬取的過(guò)程。對(duì)于爬取一些簡(jiǎn)單頁(yè)面來(lái)說(shuō),它擁
有體積小,爬取迅速的優(yōu)點(diǎn)。
2.3社會(huì)可行性
針對(duì)傳統(tǒng)空氣檢測(cè)設(shè)備管理不便、及時(shí)性差、功能單一等現(xiàn)象,結(jié)合物聯(lián)網(wǎng)
和互聯(lián)網(wǎng)技術(shù),基于一種NB-IoT的空氣質(zhì)量檢測(cè)儀開(kāi)發(fā)的空氣設(shè)備數(shù)據(jù)處理云
平臺(tái)。能夠讓用戶方便的管理硬件設(shè)備,隨時(shí)隨地掌握消息動(dòng)態(tài),將“被動(dòng)”轉(zhuǎn)
化為“主動(dòng)”。
對(duì)于一個(gè)沒(méi)有擁有自己云平臺(tái)的空氣質(zhì)檢設(shè)備制造商來(lái)說(shuō),在如今都講究
“萬(wàn)物互聯(lián),服務(wù)為王”的時(shí)代,必然會(huì)逐漸喪失自己的核心競(jìng)爭(zhēng)力,但是一個(gè)
中小型企業(yè)如果需要培養(yǎng)自己的技術(shù)團(tuán)隊(duì)和運(yùn)營(yíng)團(tuán)隊(duì)去開(kāi)發(fā)和維護(hù)一個(gè)自己的
云平臺(tái),那么必然需要投入巨大的人力物力財(cái)力以及時(shí)間,這是很多小企業(yè)都無(wú)
法承受的代價(jià),如果擁有一個(gè)開(kāi)源的云平臺(tái),那么既可以大大減少預(yù)期投入,同
樣也能大大降低風(fēng)險(xiǎn)。
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
3系統(tǒng)需求分析
3.1系統(tǒng)目標(biāo)
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái),基于用戶來(lái)對(duì)各個(gè)空氣質(zhì)檢設(shè)備來(lái)進(jìn)行管
理,這里的用戶一般指質(zhì)檢設(shè)備的使用者,可能是個(gè)人、小區(qū)的管理者,因?yàn)槠?/p>
臺(tái)的設(shè)計(jì)初衷就是為了滿足多用戶同時(shí)在線對(duì)多種不同的設(shè)備進(jìn)行管理。他們可
以通過(guò)云平臺(tái)進(jìn)行設(shè)備注冊(cè)、設(shè)備查看、設(shè)備數(shù)據(jù)上傳等操作,此外,云平臺(tái)還
提供全國(guó)各區(qū)域的空氣和天氣數(shù)據(jù)的ResultfulAPI查看接口,對(duì)于可以通過(guò)
Internet連接到的云平臺(tái)的物聯(lián)網(wǎng)設(shè)備,可以在不用添加硬件相關(guān)模塊的基礎(chǔ)上,
直接獲取到相關(guān)空氣質(zhì)量和天氣數(shù)據(jù),可以進(jìn)一步降低成本。我們期望能夠搭建
一個(gè)高并發(fā)低延遲的系統(tǒng),能同時(shí)支持大量用戶和硬件設(shè)備的連接。用戶可以通
過(guò)人性化的后臺(tái)管理界面,隨時(shí)隨地掌握設(shè)備動(dòng)態(tài)。
3.2系統(tǒng)功能分析
3.2.1用戶注冊(cè)和用戶信息管理
幾乎任何后臺(tái)管理類系統(tǒng)都需要基于用戶來(lái)對(duì)于整個(gè)系統(tǒng)進(jìn)行操作,只有擁
有相應(yīng)角色的用戶才能夠?qū)ο鄳?yīng)功能菜單進(jìn)行操作。用戶注冊(cè)需要系統(tǒng)使用者提
供一些個(gè)人基本信息,云平臺(tái)將會(huì)根據(jù)這些信息為其生成一個(gè)僅供個(gè)人使用的賬
號(hào),密碼可由賬號(hào)使用者指定。
用戶信息管理模塊提供用戶對(duì)之前注冊(cè)的信息進(jìn)行修改和賬號(hào)密碼更改等
功能,因?yàn)榫W(wǎng)站所有的功能都是基于用戶來(lái)進(jìn)行展示的,每個(gè)用戶只能查看和管
理個(gè)人注冊(cè)的設(shè)備相關(guān)信息。
3.2.2設(shè)備注冊(cè)
云平臺(tái)的功能核心就是設(shè)備管理。在進(jìn)行設(shè)備管理之前我們需要設(shè)計(jì)一個(gè)安
全驗(yàn)證模塊,只有被云平臺(tái)授權(quán)的設(shè)備類型才能夠連接云平臺(tái)并被云平臺(tái)所管
理。設(shè)備注冊(cè)就是安全驗(yàn)證模塊的一部分,設(shè)備類型注冊(cè)需要用戶通過(guò)系統(tǒng)手動(dòng)
填寫(xiě)設(shè)備相關(guān)的一些基礎(chǔ)信息,例如設(shè)備名稱、設(shè)備類型、數(shù)據(jù)push方式、數(shù)
據(jù)pull方式等等,系統(tǒng)最后會(huì)根據(jù)該注冊(cè)信息為該設(shè)備類型生成唯一的設(shè)備類型
ID以及設(shè)備驗(yàn)證token,這樣當(dāng)該類型的設(shè)備連接云平臺(tái)時(shí),只需要根據(jù)該驗(yàn)證
7
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
token就可以證明其身份。
3.2.3設(shè)備管理
設(shè)備管理是用來(lái)查看該用戶已經(jīng)注冊(cè)的設(shè)備類型列表,可以查看和修改設(shè)備
的基本類型信息,除此之外,還能查看已經(jīng)接入平臺(tái)的設(shè)備列表,可以直接查看
到設(shè)備的當(dāng)前狀態(tài),上次狀態(tài)更新時(shí)間,設(shè)備消息預(yù)警級(jí)別等等。
3.2.4接入數(shù)據(jù)查看
已經(jīng)接入平臺(tái)的設(shè)備可以隨時(shí)向云平臺(tái)上傳其設(shè)備檢測(cè)數(shù)據(jù),云平臺(tái)會(huì)將其
組織化的存入數(shù)據(jù)庫(kù),設(shè)備上傳的數(shù)據(jù)需要符合平臺(tái)與設(shè)備通信約定的數(shù)據(jù)格
式,這樣云平臺(tái)才能對(duì)數(shù)據(jù)進(jìn)行正確的解析和最終展示。
3.3系統(tǒng)功能結(jié)構(gòu)
根據(jù)以上我們對(duì)云平臺(tái)主要功能的分析,我們可以得出系統(tǒng)的主要功能結(jié)
構(gòu),如圖3-1所示,云平臺(tái)主要包含了用戶管理、設(shè)備管理、數(shù)據(jù)爬取、數(shù)據(jù)接
設(shè)備消息直看
圖3-1系統(tǒng)功能結(jié)構(gòu)圖
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
3.4系統(tǒng)功能描述和用例分析
用例描述用來(lái)說(shuō)明一個(gè)功能的大概處理流程,可以較為準(zhǔn)確的去描述一個(gè)業(yè)
務(wù)功能。是客戶和開(kāi)發(fā)者之間良好的溝通橋梁。
3.4.1系統(tǒng)的總用例圖
本系統(tǒng)開(kāi)發(fā)初期會(huì)基于某一個(gè)用戶進(jìn)行開(kāi)發(fā),該用戶擁有系統(tǒng)所有功能模塊
的訪問(wèn)權(quán)限,其角色相當(dāng)于管理員,系統(tǒng)的總用例圖如圖3-2所示。
圖3-2云平臺(tái)系統(tǒng)總用例圖
3.4.2用戶信息管理
(1)功能描述
用戶信息查看:管理員或者用戶登錄云平臺(tái)進(jìn)入個(gè)人中心主頁(yè)可以看到個(gè)人
信息。
用戶信息修改:當(dāng)用戶注冊(cè)信息變化時(shí),用戶可以通過(guò)此功能進(jìn)行修改個(gè)人
信息。
密碼修改:當(dāng)密碼泄露或者系統(tǒng)賬號(hào)安全預(yù)警時(shí),用戶可以修改登錄密碼,
保障賬號(hào)的安全。
(2)用例描述
用戶信息管理用例的參與者是用戶或者管理員,其詳細(xì)用例描述如表3-1所
示
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
表3-1用戶信息管理用例
內(nèi)容說(shuō)明
用例編號(hào)UserinfoManagement
用例名稱云平臺(tái)用戶個(gè)人信息管理
用例說(shuō)明對(duì)個(gè)人信息進(jìn)行查看、編輯、修改個(gè)人密碼
參與者用戶或者管理員
前置條件用戶登錄云平臺(tái)的個(gè)人中心頁(yè)面
基本事件流1.用戶點(diǎn)擊個(gè)人信息頁(yè)面,這時(shí)會(huì)顯示用戶個(gè)人信息。如果沒(méi)
有顯示,跳至al。
2.用戶點(diǎn)擊修改按鈕,這時(shí)會(huì)彈出消息模態(tài)框,用戶可以修改
自己的相關(guān)信息,點(diǎn)擊保存按鈕,模態(tài)框消失,彈框提示保
存成功,否則跳至a2。
3.用戶點(diǎn)擊修改密碼按鈕,這時(shí)會(huì)彈出修改密碼模態(tài)框,按照
流程進(jìn)行密碼更改。點(diǎn)擊確認(rèn),原密碼輸入正確密碼修改成
功,自動(dòng)提示重登,否則跳至a3。
異常事故流al.提示框:功能異常,請(qǐng)刷新頁(yè)面重試。
a2.提示框:保存失敗,提示失敗原因。
a3.提示框:修改失敗,提示失敗原因。
后置條件用戶成功完成相關(guān)操作
3.4.3設(shè)備管理
(1)功能描述
設(shè)備類型注冊(cè):用戶需要添加連接云平臺(tái)設(shè)備基本信息,云平臺(tái)會(huì)為此生成
唯一的驗(yàn)證token,空氣質(zhì)檢設(shè)備可以根據(jù)此token通過(guò)驗(yàn)證,連接云平臺(tái)。
設(shè)備列表:顯示曾連接過(guò)云平臺(tái)的空氣質(zhì)檢設(shè)備列表,會(huì)顯示設(shè)備的基本信
息,同時(shí)還可以修改預(yù)警級(jí)別,開(kāi)啟下線預(yù)警,加入設(shè)備黑名單等等功能。
設(shè)備數(shù)據(jù)查看:空氣質(zhì)檢設(shè)備和云平臺(tái)機(jī)建立穩(wěn)定連接后,就可以向云平臺(tái)
上傳自己的設(shè)備數(shù)據(jù),用戶可以在云平臺(tái)上查看設(shè)備數(shù)據(jù)。
(2)用例描述
用例描述主要包含了參與者、前置條件、基本事件流的說(shuō)明,設(shè)備類型注冊(cè)
的用例描述如表3-2所示,設(shè)備列表的用例描述如表3-3所示。
表3-2設(shè)備類型注冊(cè)用例
內(nèi)容說(shuō)明
用例編號(hào)DeviceTypeRegister
用例名稱設(shè)備類型注冊(cè)
用例說(shuō)明用戶添加被管理的設(shè)備的基本類型信息
參與者用戶或者管理員
前置條件進(jìn)入設(shè)備類型管理頁(yè)面
10
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
基本事件流1.用戶點(diǎn)擊列表右上角的添加按鈕,彈出設(shè)備注冊(cè)模態(tài)框,用戶
填寫(xiě)要注冊(cè)設(shè)備類型的基本信息。
2.用戶填寫(xiě)設(shè)備基本信息完成后,點(diǎn)擊確認(rèn)添加按鈕,模態(tài)框消
失,彈框提醒,設(shè)備類型添加成功,然后刷新列表。否則跳至
3.1o
3.用戶點(diǎn)擊列表任何設(shè)備類型記錄中的修改按鈕,觸發(fā)設(shè)備類型
信息修改功能。彈出修改模態(tài)框,模塊框會(huì)加載之前設(shè)備注冊(cè)
的相關(guān)信息。否則調(diào)至a2。用戶修改相關(guān)信息,點(diǎn)擊保存完成
修改,模態(tài)框消失,提示保存成功,否則跳至a3。
異常事故流al.提示框:設(shè)備注冊(cè)失敗,提示失敗原因。
a2.提示框:加載信息失敗,請(qǐng)刷新頁(yè)面重試。
a3.提示框:修改失敗,提示失敗原因。
后置條件用戶成功完成相關(guān)操作
表3-3設(shè)備列表用例
內(nèi)容說(shuō)明
用例編號(hào)DeviceList
用例名稱設(shè)備列表
用例說(shuō)明用戶通過(guò)設(shè)備列表管理設(shè)備
參與者用戶或者管理員
前置條件進(jìn)入設(shè)備列表頁(yè)面
基本事件流1.用戶可以根據(jù)查詢條件篩選設(shè)備,點(diǎn)擊查詢按鈕,列表刷新,
顯示篩選結(jié)果。否則跳至al。
2.在線設(shè)備可以查看其實(shí)時(shí)數(shù)據(jù),對(duì)于在線設(shè)備,右側(cè)有查看按
鈕,點(diǎn)擊查看按鈕,進(jìn)入數(shù)據(jù)詳情頁(yè)。否則跳至a2。
3.點(diǎn)擊加入黑名單按鈕,云平臺(tái)將會(huì)禁止該設(shè)備連接云平臺(tái),
設(shè)備狀態(tài)之前如果為在線狀態(tài),這時(shí)會(huì)變?yōu)橐严戮€。
異常事故流al.提示框:查詢失敗,請(qǐng)刷新頁(yè)面后重試。
a2.提示框:實(shí)時(shí)數(shù)據(jù)加載失敗,請(qǐng)檢查設(shè)備狀態(tài)。
后置條件用戶成功完成相關(guān)操作
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
4云平臺(tái)數(shù)據(jù)庫(kù)設(shè)計(jì)
4.1關(guān)系數(shù)據(jù)庫(kù)的選擇
空氣云選用的是MySQL數(shù)據(jù)庫(kù),MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)管理系
統(tǒng)以其體積小,速度快,應(yīng)用成本較低,是開(kāi)發(fā)中小型項(xiàng)目的首選。相比其它
類型的數(shù)據(jù)庫(kù),它有以下幾個(gè)特點(diǎn):
1.功能強(qiáng)大,能夠滿足幾乎所有的開(kāi)發(fā)需求,并且開(kāi)源免費(fèi)。
2.支持多種存儲(chǔ)引擎,可根據(jù)開(kāi)發(fā)場(chǎng)景的不同為表選用合適的存儲(chǔ)引擎,提
高數(shù)據(jù)庫(kù)的性能。
3.安裝簡(jiǎn)單,擴(kuò)展容易,迎合了企業(yè)敏捷開(kāi)發(fā)產(chǎn)品快速迭代的需求,可根據(jù)
業(yè)務(wù)量的逐漸提升逐漸改變數(shù)據(jù)庫(kù)的架構(gòu),從數(shù)據(jù)庫(kù)分區(qū)、分表到主從搭
建、讀寫(xiě)分離,都可以用比較小的成本去實(shí)現(xiàn)。
在真正的企業(yè)級(jí)開(kāi)發(fā)中一般都是搭建數(shù)據(jù)庫(kù)主從集群,開(kāi)發(fā)階段使用兩臺(tái)云
數(shù)據(jù)庫(kù),一主一從,讀寫(xiě)分離,這樣能夠有效提高數(shù)據(jù)庫(kù)的讀寫(xiě)性能,避免產(chǎn)生
10性能瓶頸。云平臺(tái)的數(shù)據(jù)庫(kù)架構(gòu)是單機(jī)架構(gòu),這也是根據(jù)目前系統(tǒng)大小和并
發(fā)量來(lái)決定的,如果對(duì)小系統(tǒng)使用數(shù)據(jù)庫(kù)集群,不僅不會(huì)提高網(wǎng)站的并發(fā)量,還
有可能增加網(wǎng)站的響應(yīng)時(shí)間。因?yàn)橹挥性诰W(wǎng)站并發(fā)量極大,數(shù)據(jù)庫(kù)成為瓶頸的情
況下升級(jí)數(shù)據(jù)庫(kù)架構(gòu)才會(huì)有意義,否則只會(huì)增加應(yīng)用服務(wù)器的壓力(數(shù)據(jù)庫(kù)架構(gòu)
越復(fù)雜,業(yè)務(wù)層所做的處理就越多),反而降低了網(wǎng)站的并發(fā)量。
4.2緩存數(shù)據(jù)庫(kù)Redis的使用
為了避免數(shù)據(jù)庫(kù)壓力過(guò)大,云平臺(tái)引入當(dāng)下十分流行的Key-Value緩存數(shù)據(jù)
庫(kù)⑹Redis,對(duì)于一些頁(yè)面可以極大降低訪問(wèn)延遲。
用戶每瀏覽一個(gè)頁(yè)面,瀏覽器可能需要向應(yīng)用服務(wù)器發(fā)起幾十個(gè)請(qǐng)求。除去
一些靜態(tài)資源,如CSS、JS、圖片等,其它的請(qǐng)求每次都需要連接數(shù)據(jù)庫(kù)去讀寫(xiě)
數(shù)據(jù)。網(wǎng)站并發(fā)量比較小的時(shí)候,應(yīng)用服務(wù)器和數(shù)據(jù)庫(kù)都?jí)蚝芸斓奶幚碚?qǐng)求并將
響應(yīng)結(jié)果返回給用戶。但隨著用戶并發(fā)量的增大,數(shù)據(jù)庫(kù)表記錄的快速增長(zhǎng),數(shù)
據(jù)庫(kù)的查詢時(shí)間會(huì)逐漸變長(zhǎng),查詢性能越來(lái)越差,每個(gè)用戶請(qǐng)求的處理時(shí)間越來(lái)
越長(zhǎng),并發(fā)的請(qǐng)求數(shù)又在增加,在這種情況下,應(yīng)用服務(wù)器可能因?yàn)榇罅空?qǐng)求的
堆積而被壓垮宕機(jī)。
12
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
[請(qǐng)求返回J
圖4-1緩存命中流程圖
如圖4-1所示,開(kāi)發(fā)的最佳實(shí)踐是減少對(duì)數(shù)據(jù)庫(kù)的訪問(wèn),將短時(shí)間內(nèi)不會(huì)改
變的數(shù)據(jù)進(jìn)行緩存,用戶第一次請(qǐng)求該數(shù)據(jù)時(shí)訪問(wèn)數(shù)據(jù)庫(kù)獲取,然后將該數(shù)據(jù)進(jìn)
行緩存。用戶下次獲取該數(shù)據(jù)時(shí)直接命中緩沖,避免了查詢數(shù)據(jù)庫(kù)。一次請(qǐng)求使
用緩沖和不使用緩存其性能可以相差十多倍。
4.3數(shù)據(jù)庫(kù)E-R聯(lián)系圖
數(shù)據(jù)庫(kù)E-R圖可以很好的用來(lái)表示現(xiàn)實(shí)世界的概念模型。可以讓開(kāi)發(fā)人員
在不熟悉數(shù)據(jù)庫(kù)的情況下更快了解業(yè)務(wù)中的各實(shí)體對(duì)象的相關(guān)聯(lián)系,是軟件開(kāi)發(fā)
數(shù)據(jù)庫(kù)設(shè)計(jì)中不可或缺的一個(gè)階段,開(kāi)發(fā)者根據(jù)總體E-R聯(lián)系圖在代碼中建立
對(duì)應(yīng)的Entity對(duì)象,云平臺(tái)的主要實(shí)體-聯(lián)系圖如圖4-2所示。
圖4-2系統(tǒng)主要關(guān)系E-R圖
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
4.4數(shù)據(jù)庫(kù)表的設(shè)計(jì)
4.4.1概要說(shuō)明
合理的表結(jié)構(gòu)能夠減少冗余數(shù)據(jù)的產(chǎn)生,提高數(shù)據(jù)庫(kù)查詢速度。一般來(lái)說(shuō)數(shù)
據(jù)庫(kù)表的設(shè)計(jì)需要滿足第三范式,這樣表數(shù)據(jù)的冗余會(huì)最少,但是在企業(yè)級(jí)開(kāi)發(fā)
中很少會(huì)這樣設(shè)計(jì)。因?yàn)閲?yán)格按照三范式來(lái)設(shè)計(jì)表的話,那么一個(gè)數(shù)據(jù)的查詢可
能要連接三張表以上,這樣會(huì)導(dǎo)致嚴(yán)重的性能問(wèn)題。云平臺(tái)期望設(shè)計(jì)一個(gè)高可靠、
低延遲的后臺(tái)系統(tǒng),那么數(shù)據(jù)庫(kù)的設(shè)計(jì)就顯得十分重要,本平臺(tái)數(shù)據(jù)庫(kù)設(shè)計(jì)概要
規(guī)則如下:
1.每個(gè)表都設(shè)置ID字段用作主鍵,主鍵生成策略使用UUID,也就是全局
唯一ID,便于后期數(shù)據(jù)庫(kù)架構(gòu)進(jìn)行升級(jí),分區(qū)分表等等不會(huì)遇到主鍵不唯一的
問(wèn)題。
2.數(shù)據(jù)庫(kù)不設(shè)置外鍵,也不建立其它約束,如非空、唯一等。實(shí)體與實(shí)體
之間的關(guān)系通過(guò)業(yè)務(wù)層來(lái)保證。這樣在開(kāi)發(fā)初期能夠避免因?yàn)閿?shù)據(jù)約束問(wèn)題導(dǎo)致
的各種數(shù)據(jù)庫(kù)異常發(fā)生,而最重要的一點(diǎn)是,表的約束越多,那么每次CRUD
操作數(shù)據(jù)庫(kù)都需要去檢查數(shù)據(jù)是否滿足約束條件,增加了數(shù)據(jù)庫(kù)資源消耗,降低
了數(shù)據(jù)庫(kù)性能。我們把約束性檢查交給業(yè)務(wù)層,也就將壓力給了應(yīng)用服務(wù)器,但
往往數(shù)據(jù)庫(kù)的性能瓶頸要比應(yīng)用服務(wù)器來(lái)的快。
3.對(duì)于經(jīng)常需要連表查詢的字段進(jìn)行適當(dāng)冗余,這樣可以只查詢單表便能
得到需要的數(shù)據(jù)。
4.幾乎每張表都需要設(shè)置表4-1中的通用數(shù)據(jù)庫(kù)字段,以方便業(yè)務(wù)后期擴(kuò)
展和權(quán)限控制,之后表詳細(xì)設(shè)計(jì)中將不會(huì)列出該表中的通用字段。
表4-1通用數(shù)據(jù)庫(kù)字段說(shuō)明
字段名稱類型長(zhǎng)度字段說(shuō)明
create_timedatetime默認(rèn)創(chuàng)建時(shí)間
create_byvarchar36創(chuàng)建者ID
update_timedatetime默認(rèn)更新時(shí)間
update_byvarchar36更新者ID
del_flagbit1刪除標(biāo)志,0未刪除,1己刪除
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
4.4.2用戶表t_users
用戶表可以說(shuō)是系統(tǒng)最核心的一張表,任何業(yè)務(wù)和功能都需要基于用戶細(xì)粒
度去開(kāi)發(fā)。詳細(xì)表結(jié)構(gòu)設(shè)計(jì)如下:
表4-2用戶表字段說(shuō)明
字段名稱類型長(zhǎng)度字段說(shuō)明
user__idvarchar36用戶ID
user_namevarchar30用戶昵稱
sexbit1性別,0:男,1:女
organization_namevarchar50組織名稱,(公司、小區(qū))
4.4.3設(shè)備類型表t_device_type
設(shè)備類型表主要用于設(shè)備類型的注冊(cè),每個(gè)和云平臺(tái)連接的設(shè)備都對(duì)應(yīng)唯一
的設(shè)備類型,通過(guò)該表可以知道設(shè)備的一些約定配置。云平臺(tái)憑借這些約定配置
來(lái)和設(shè)備進(jìn)行通信。
表4-3設(shè)備類型表字段說(shuō)明
字段名稱類型長(zhǎng)度字段說(shuō)明
type_idvarchar36設(shè)備類型ID
設(shè)備驗(yàn)證token,設(shè)備連接安全驗(yàn)
access_tokenvarchar36
證
type_namevarchar10類型名稱
connect_typeint1連接類型,0:TCP,l:UDP,2:HTTP
默認(rèn)預(yù)警級(jí)別:0:無(wú),1:下線預(yù)警,
warning_typeint1
2:數(shù)據(jù)異常預(yù)警
waming_keyvarchar30異常數(shù)據(jù)關(guān)鍵字
warning_wayint1預(yù)警方式:1:郵箱2:短信3:電話
4.4.4設(shè)備表t_device
設(shè)備表用作記錄連接云平臺(tái)設(shè)備的相關(guān)信息。通過(guò)這張表我們能夠知道設(shè)備
的一些基本狀態(tài)、連接記錄、統(tǒng)計(jì)信息。
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
表格4-4設(shè)備表字段說(shuō)明
字段名稱類型長(zhǎng)度字段說(shuō)明
device_idvarchar36設(shè)備ID
device_typevarchar36業(yè)務(wù)邏輯中設(shè)備類型ID
設(shè)備名稱,默認(rèn)為類型名
device_namevarchar36
稱+自動(dòng)增長(zhǎng)編號(hào)
connect_addressvarchar50記錄設(shè)備連接IP
custom_warn_gradeint1自定義預(yù)警類型
last_connect_timedatetime默認(rèn)最后一次連接時(shí)間
heartbeat_gapint1設(shè)備心跳間隔,單位秒
是否加入黑名單。0:false,1:
blacklistbit1
true
4.4.5消息記錄表t_message_info
消息記錄表用來(lái)存放設(shè)備的上傳數(shù)據(jù),數(shù)據(jù)異常消息記錄,設(shè)備下線記錄等
等。
表格4-5消息記錄表字段說(shuō)明
字段名稱類型長(zhǎng)度字段說(shuō)明
msg_idvarchar36記錄ID
device_idvarchar36設(shè)備id,業(yè)務(wù)邏輯上的外鍵
消息類型:1.上線2.異常下線3.
msg_typeint1
設(shè)備數(shù)據(jù)。
msg_bodyvarchar10000消息體,以json格式去存儲(chǔ)。
用戶空氣設(shè)備數(shù)據(jù)處理云平臺(tái)
4.5數(shù)據(jù)庫(kù)實(shí)體類抽象
平臺(tái)實(shí)體類及關(guān)系圖如圖4-3所示。
消息記泉表
msg_id
devlce_narr?edevice_id
connect_addressrrtsg_type
customwarngarde
rr?SRbody
last_conr?ect_time
heartbeatgap
改笛炎型表
Id
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 國(guó)際關(guān)系學(xué)院《工程力學(xué)與機(jī)械設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 河北環(huán)境工程學(xué)院《護(hù)理學(xué)基礎(chǔ)技術(shù)(一)》2023-2024學(xué)年第二學(xué)期期末試卷
- 南京航空航天大學(xué)金城學(xué)院《細(xì)胞生物學(xué)課程設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣州城市職業(yè)學(xué)院《戰(zhàn)略管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東新安職業(yè)技術(shù)學(xué)院《生物化學(xué)及實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 長(zhǎng)春師范大學(xué)《汽車(chē)底盤(pán)構(gòu)造與維修》2023-2024學(xué)年第二學(xué)期期末試卷
- 山西華澳商貿(mào)職業(yè)學(xué)院《移動(dòng)通信技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 大學(xué)生畢業(yè)實(shí)習(xí)計(jì)劃
- 大一新生軍訓(xùn)心得感悟(28篇)
- 農(nóng)村亂占耕地建房問(wèn)題整治工作匯報(bào)范文(3篇)
- 農(nóng)村公路質(zhì)量監(jiān)督管理及措施
- 小學(xué)體積單位換算練習(xí)100道及答案
- 第7課《誰(shuí)是最可愛(ài)的人》公開(kāi)課一等獎(jiǎng)創(chuàng)新教學(xué)設(shè)計(jì)-2
- 人音版四年級(jí)音樂(lè)下冊(cè)全冊(cè)教學(xué)設(shè)計(jì)教案表格式
- 骨盆骨折小講課護(hù)理課件
- 渣土車(chē)司機(jī)安全培訓(xùn)
- 分布式儲(chǔ)能系統(tǒng)的成本效益評(píng)估
- 二次函數(shù)(最全的中考二次函數(shù)知識(shí)點(diǎn)總結(jié))
- 建筑衛(wèi)生陶瓷生產(chǎn)英文資料
- 網(wǎng)絡(luò)意識(shí)形態(tài)安全
- 人工智能的倫理問(wèn)題及其治理研究
評(píng)論
0/150
提交評(píng)論