MongoDB存儲(chǔ)服務(wù)方案設(shè)計(jì)_第1頁(yè)
MongoDB存儲(chǔ)服務(wù)方案設(shè)計(jì)_第2頁(yè)
MongoDB存儲(chǔ)服務(wù)方案設(shè)計(jì)_第3頁(yè)
MongoDB存儲(chǔ)服務(wù)方案設(shè)計(jì)_第4頁(yè)
MongoDB存儲(chǔ)服務(wù)方案設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩44頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、MongoDB存儲(chǔ)服務(wù)方案設(shè)計(jì)2012-03-14目錄1 .需求分析3.1.1 客車平臺(tái)和貨運(yùn)平臺(tái)現(xiàn)有需求31.2 現(xiàn)有平臺(tái)存儲(chǔ)服務(wù)上存在問(wèn)題52 .方案設(shè)計(jì)7.2.1 存儲(chǔ)服務(wù)方案設(shè)計(jì)目標(biāo)7.2.2 存儲(chǔ)方案設(shè)計(jì)細(xì)則 GPS實(shí)時(shí)數(shù)據(jù)存儲(chǔ)設(shè)計(jì)72.2.2 拍照數(shù)據(jù)存儲(chǔ)設(shè)計(jì) GPS歷史數(shù)據(jù)查詢?cè)O(shè)計(jì)92.2.4 GPS數(shù)據(jù)統(tǒng)計(jì)設(shè)計(jì)1.02.2.5 拍照數(shù)據(jù)發(fā)布和查詢?cè)O(shè)計(jì)1.12.3 存儲(chǔ)服務(wù)業(yè)務(wù)流程框架設(shè)計(jì)1.13 .方案部署架構(gòu)設(shè)計(jì)1.23.1 存儲(chǔ)服務(wù)(MongoDB部署架構(gòu)規(guī)劃設(shè)計(jì)123.2 存儲(chǔ)服務(wù)(MongoDB數(shù)據(jù)分片規(guī)劃設(shè)計(jì)143.3 存儲(chǔ)服務(wù)(Mongo

2、DB實(shí)例部署規(guī)劃設(shè)計(jì)153.4 存儲(chǔ)服務(wù)(MongoDB服務(wù)器硬件、網(wǎng)絡(luò)和操作系統(tǒng)規(guī)劃設(shè)計(jì)163.5 MongoDB版本規(guī)劃設(shè)計(jì)1.73.6 存儲(chǔ)服務(wù)(MongoDB運(yùn)營(yíng)監(jiān)控規(guī)劃設(shè)計(jì)174 .方案實(shí)施184.1 實(shí)施步驟1.84.2 方案整體實(shí)施計(jì)劃18附件1:存儲(chǔ)服務(wù)表(MongoDBCollection)結(jié)構(gòu)設(shè)計(jì)19附件2:存儲(chǔ)服務(wù)(MongoDB)對(duì)外接口統(tǒng)一定義262.1 更新類接口272.2 查詢類接口322.3 統(tǒng)計(jì)接口.40附件3:存儲(chǔ)服務(wù)(MongoDB)安裝部署說(shuō)明413.1 安裝MongoDB413.2 MongoDB分片酉己置423.2.1 分片服務(wù)器(sharding)

3、配置433.2.2 副本集(ReplicaSet)配置443.2.3 啟動(dòng)并配置三臺(tái)ConfigServer.443.2.4 部署并配置三臺(tái)RoutingServer.453.2.5 命令行添加分片45GPS數(shù)據(jù)存儲(chǔ)服務(wù)方案設(shè)計(jì)1 .需求分析1.1 客車平臺(tái)和貨運(yùn)平臺(tái)現(xiàn)有需求1)實(shí)時(shí)數(shù)據(jù)文件存儲(chǔ)類a.實(shí)時(shí)軌跡數(shù)據(jù):傳統(tǒng)文件方式存儲(chǔ),一條軌跡150B,每天上報(bào)8640次,一天大約為1M軌跡文件格式說(shuō)明:偏移經(jīng)度:偏移緯度:GPS時(shí)間:GPS速度:正北方向夾角:車輛狀態(tài):報(bào)警編碼:經(jīng)度:緯度:海拔:里程:累計(jì)油耗:發(fā)動(dòng)機(jī)運(yùn)行總時(shí)長(zhǎng):引擎轉(zhuǎn)速(發(fā)動(dòng)機(jī)轉(zhuǎn)速):位置基本信息狀態(tài)位:報(bào)區(qū)域/線路報(bào)警:冷卻

4、液溫度:蓄電池電壓:瞬時(shí)油耗:行駛記錄儀速度:機(jī)油壓力:大氣壓力:發(fā)動(dòng)機(jī)扭矩百分比:車輛信號(hào)狀態(tài):系統(tǒng)時(shí)間rn特點(diǎn):數(shù)據(jù)頻率高,數(shù)據(jù)量大。b.實(shí)時(shí)報(bào)警數(shù)據(jù):傳統(tǒng)文件方式存儲(chǔ),一條報(bào)警100B,每天上報(bào)8640次,一天大約為800K報(bào)警文件格式說(shuō)明:報(bào)警編碼:偏移經(jīng)度:偏移緯度:經(jīng)度:緯度:GPS時(shí)間:GPS速度:正北方向夾角:累計(jì)油耗:里程:報(bào)區(qū)域/線路報(bào)警:海拔:系統(tǒng)時(shí)間rn特點(diǎn):數(shù)據(jù)頻率高,數(shù)據(jù)量大。C.駕駛行為事件:傳統(tǒng)文件方式存儲(chǔ),一條駕駛行為事件100B,每天上報(bào)不周定,根據(jù)實(shí)際生產(chǎn)環(huán)境觀察,平均每天最大300K特點(diǎn):數(shù)據(jù)頻率不高,數(shù)據(jù)量小。d.發(fā)動(dòng)機(jī)負(fù)荷率:傳統(tǒng)文件方式存儲(chǔ),一條發(fā)

5、動(dòng)機(jī)負(fù)荷率200B,每天上報(bào)360次,一天大約為80K;特點(diǎn):數(shù)據(jù)頻率不高,數(shù)據(jù)量小。e.拍照數(shù)據(jù),圖片文件,每天上報(bào)數(shù)據(jù)量不定特點(diǎn):數(shù)據(jù)頻率不高,數(shù)據(jù)量小。f.盲區(qū)補(bǔ)傳軌跡文件:軌跡文件統(tǒng)計(jì)最大數(shù),這里不做統(tǒng)計(jì);g.盲區(qū)補(bǔ)傳報(bào)警文件:報(bào)警文件統(tǒng)計(jì)最大數(shù),這里不做統(tǒng)計(jì);2)實(shí)時(shí)數(shù)據(jù)傳統(tǒng)數(shù)據(jù)庫(kù)存儲(chǔ)類Oracle數(shù)據(jù)庫(kù)存儲(chǔ)A.存儲(chǔ)非法軌跡位置;B.更新車輛最后位置;C.存儲(chǔ)、更新車輛上下線;D.存儲(chǔ)、更新車輛報(bào)警;MYSQ數(shù)據(jù)庫(kù)存儲(chǔ)A.更新車輛最后位置B.存儲(chǔ)、更新車輛報(bào)警3)操作指令傳統(tǒng)數(shù)據(jù)庫(kù)類Oracle數(shù)據(jù)庫(kù)存儲(chǔ)A.存儲(chǔ)、更新下行指令,建議放在MongoDB中,用CappedCollecti

6、o昧存放。B.存儲(chǔ)車輛多媒體事件C.存儲(chǔ)車輛多媒體信息D.存儲(chǔ)車輛注冊(cè),建議放在Oracle數(shù)據(jù)庫(kù)中。E.存儲(chǔ)車輛鑒權(quán),建議放在Oracle數(shù)據(jù)庫(kù)中,同步到redis中供鑒權(quán)服務(wù)用。F.存儲(chǔ)車輛注銷,建議放在Oracle數(shù)據(jù)庫(kù)中。G.存儲(chǔ)車輛事件報(bào)告H.存儲(chǔ)車輛信息點(diǎn)播,建議放在Oracle數(shù)據(jù)庫(kù)中。I.存儲(chǔ)車輛電子運(yùn)單,建議放在Oracle數(shù)據(jù)庫(kù)中。J.存儲(chǔ)車輛駕駛員信息,建議放在Oracle數(shù)據(jù)庫(kù)中,同步到redis,防止二次訪問(wèn)數(shù)據(jù)庫(kù)。K.存儲(chǔ)車輛行駛記錄儀信息,建議放在Oracle數(shù)據(jù)庫(kù)中。L.存儲(chǔ)、更新車輛調(diào)度信息,建議放在Oracle數(shù)據(jù)庫(kù)中。M.更新車輛照片信息N.更新終端參數(shù)信

7、息O.更新路線信息,建議放在Oracle數(shù)據(jù)庫(kù)中。P.更新電子圍欄,建議放在Oracle數(shù)據(jù)庫(kù)中。Q.存儲(chǔ)、更新終端參數(shù)設(shè)置,建議放在Oracle數(shù)據(jù)庫(kù)中。R.更新終端版本號(hào),建議放在Oracle數(shù)據(jù)庫(kù)中。S.存儲(chǔ)多媒體數(shù)據(jù)檢索T.存儲(chǔ)上行透?jìng)餍畔.存儲(chǔ)數(shù)據(jù)壓縮透?jìng)鱒.更新提問(wèn)應(yīng)答MYSQ數(shù)據(jù)庫(kù)存儲(chǔ):A.存儲(chǔ)、更新下行指令,建議廢棄MySQL用redis來(lái)替代。B.存儲(chǔ)車輛多媒體信息,建議廢棄MySQL用redis來(lái)替代。4)歷史數(shù)據(jù)查詢統(tǒng)計(jì)類A.軌跡回放條件:GPS寸問(wèn)(開(kāi)始時(shí)間、接收時(shí)間)、VID;B.區(qū)域查車(當(dāng)前區(qū)域內(nèi)車輛)條件:車輛類型、車輛速度、是否報(bào)警;C.區(qū)域協(xié)查(歷史區(qū)域內(nèi)

8、車輛)條件:GPS寸問(wèn);D.歷史報(bào)警條件:類型、狀態(tài)、時(shí)間;1.2現(xiàn)有平臺(tái)存儲(chǔ)服務(wù)上存在問(wèn)題1) 盲區(qū)補(bǔ)傳數(shù)據(jù)分離問(wèn)題;2) 跨多天歷史軌跡查詢的問(wèn)題;3) 報(bào)警數(shù)據(jù)和GPS時(shí)數(shù)據(jù)分離的問(wèn)題;4) 區(qū)域查車、區(qū)域協(xié)查的準(zhǔn)確性和計(jì)算效率問(wèn)題;5) 報(bào)警數(shù)據(jù)、CAN、線數(shù)據(jù)統(tǒng)計(jì)分析問(wèn)題,MongoDB供MapReduce(一個(gè)大規(guī)模數(shù)據(jù)弁行計(jì)算技術(shù),源于google)服務(wù)來(lái)進(jìn)行統(tǒng)計(jì)分析;6) 拍照數(shù)據(jù)問(wèn)題(統(tǒng)一管理,方便訪問(wèn));7) 業(yè)務(wù)流程、數(shù)據(jù)流程合理性問(wèn)題;8) 設(shè)計(jì)質(zhì)量問(wèn)題,如下:3|165694816606456724140420020120312/172641|165694236606

9、454524141519920120312/1726429) 集群、負(fù)載均衡問(wèn)題;10)高可用性問(wèn)題(在線擴(kuò)容、故障轉(zhuǎn)移);11)運(yùn)營(yíng)監(jiān)控問(wèn)題(存儲(chǔ)實(shí)例監(jiān)控);2.方案設(shè)計(jì)2.1 存儲(chǔ)服務(wù)方案設(shè)計(jì)目標(biāo)利用MongoDB一體化解決GPS;時(shí)數(shù)據(jù)(高并發(fā))存儲(chǔ)和相關(guān)的查詢統(tǒng)計(jì)業(yè)務(wù)(如歷史軌跡查詢),并解決存儲(chǔ)服務(wù)的長(zhǎng)期運(yùn)營(yíng)的高可用性問(wèn)題。具體包括:A.解決GP砥時(shí)位置信息存儲(chǔ)問(wèn)題(高并發(fā)寫(xiě)、高速查詢、高速統(tǒng)計(jì)分析);B.解決GPS艮警數(shù)據(jù)存儲(chǔ)問(wèn)題(高并發(fā)寫(xiě)、高速查詢、統(tǒng)計(jì)分析);C.解決司機(jī)駕駛行為數(shù)據(jù)存儲(chǔ)問(wèn)題(高并發(fā)寫(xiě)、高速查詢、統(tǒng)計(jì)分析);D.解決拍照數(shù)據(jù)存儲(chǔ)問(wèn)題(高并發(fā)寫(xiě)、自動(dòng)發(fā)布、高速查詢

10、);E.解決區(qū)域查車、區(qū)域協(xié)查等運(yùn)算量大的業(yè)務(wù)統(tǒng)計(jì)問(wèn)題;F.解決存儲(chǔ)服務(wù)高可用性問(wèn)題(如負(fù)載均衡、線性擴(kuò)容、故障轉(zhuǎn)移、災(zāi)備恢復(fù)、服務(wù)監(jiān)控等);最終目標(biāo):簡(jiǎn)化現(xiàn)有平臺(tái)業(yè)務(wù)流程,減少故障節(jié)點(diǎn),提高存儲(chǔ)服務(wù)的高可用性。2.2 存儲(chǔ)方案設(shè)計(jì)細(xì)則2.2.1 GPS實(shí)時(shí)數(shù)據(jù)存儲(chǔ)設(shè)計(jì)針對(duì)GP砥時(shí)數(shù)據(jù)存儲(chǔ),存儲(chǔ)服務(wù)提供C/C+珞戶端接口,供通信系統(tǒng)調(diào)用,可以直接把GP漱據(jù)存放在MongoD升,而調(diào)用者無(wú)需關(guān)系MongoDB勺性能和負(fù)載問(wèn)題。MongoD睬用目前通用的JSONB式,并提供JSONB式的解析和組裝包,支持C/C+、Java、JavaScript、Flex等眾多主流開(kāi)發(fā)語(yǔ)言,方便平臺(tái)各層面來(lái)使用。針

11、對(duì)MongoDB勺數(shù)據(jù)格式特點(diǎn),我們把GP豉時(shí)數(shù)據(jù)格式定義為標(biāo)準(zhǔn)JSON格式,其定義如下:1) GPS實(shí)時(shí)數(shù)據(jù)格式定義詳見(jiàn)“附件1“和”附件2”相關(guān)定義。2)司機(jī)駕駛行為數(shù)據(jù)司機(jī)駕駛行為現(xiàn)有平臺(tái)的數(shù)據(jù)格式:駕駛行為類型|起始位置緯度起始位置經(jīng)度北起始位置高度起始位置速度起始位置方向起始位置時(shí)間|結(jié)束位置緯度結(jié)束位置經(jīng)度北結(jié)束位置高度結(jié)束位置速度結(jié)束位置方向結(jié)束位置時(shí)間。具體數(shù)據(jù)樣例:3|165694816606456724140420020120312/172641|165694236606454524141519920120312/172642。3)發(fā)動(dòng)機(jī)負(fù)荷率數(shù)據(jù)格式:無(wú)固定格式(BASE

12、6名得到)具體數(shù)據(jù):-1600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000MongoD嗷據(jù)庫(kù)格式定義(JSON"VID”:311,"TS":ISODate("2012-02-17T14:22:46.777Z”),"DAT":"-16000000

13、00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000JSON&式說(shuō)明:車輛編號(hào)(VID)、時(shí)間戳(DS、負(fù)荷數(shù)據(jù)(DAT。2.2.2 拍照數(shù)據(jù)存儲(chǔ)設(shè)計(jì)MongoDB供GridFS特性,用來(lái)存儲(chǔ)大文件,如圖片文件和視頻文件。由通信平臺(tái)產(chǎn)生的有效拍照?qǐng)D片,可以連同屬性信息(如車機(jī)ID、時(shí)間戳、圖片ID、訪問(wèn)路徑(http)一

14、起直接存儲(chǔ)在MongoDB,方便前端應(yīng)用查詢。"VID":311,"TS":ISODate("2012-02-17T14:22:46.777Z"),FID":filel”,HP":http:3:270001/file.jpg”,"DAT":60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

15、000000000000000000000000000000000000000000000000”JSON格式說(shuō)明:車輛編號(hào)(VID)、時(shí)間戳(DS)、文彳名(FID)、發(fā)布路徑(HP)、圖片數(shù)據(jù)(DAT。2.2.3 GPS歷史數(shù)據(jù)查詢?cè)O(shè)計(jì)GP繳據(jù)查詢主要包括:實(shí)時(shí)數(shù)據(jù)查詢和歷史數(shù)據(jù)查詢。為解決海量GP漱據(jù)查詢的效率和并發(fā)負(fù)載問(wèn)題,在設(shè)計(jì)時(shí)考慮從3各方面來(lái)設(shè)計(jì)和優(yōu)化:1) 創(chuàng)建數(shù)據(jù)索引MongoD或持對(duì)數(shù)據(jù)進(jìn)行索引,即可在設(shè)計(jì)之初就設(shè)計(jì)好索引,也可在運(yùn)營(yíng)期間來(lái)對(duì)數(shù)據(jù)的索引進(jìn)行調(diào)整,建議在采用前者。針對(duì)歷史軌跡數(shù)據(jù)的查詢需求條件:車機(jī)ID,起止時(shí)間,可以對(duì)“VID"、“TS'字

16、段創(chuàng)建索引,來(lái)提高GPS9J史軌跡數(shù)據(jù)的查詢效率。針對(duì)報(bào)警查詢查詢需求:起止時(shí)間和報(bào)警狀態(tài),可以對(duì)“TS'字段、"VS字段創(chuàng)建索引。2) 數(shù)據(jù)讀寫(xiě)分離和負(fù)載均衡設(shè)計(jì)在MongoDEK務(wù)部署方案中,我們采用多服務(wù)器集群,讀寫(xiě)分離的部署架構(gòu),即通過(guò)部署多個(gè)寫(xiě)服務(wù)和多個(gè)讀服務(wù),來(lái)解決GP繳據(jù)存儲(chǔ)的效率和服務(wù)可靠性、可擴(kuò)展性問(wèn)題。3) 內(nèi)存數(shù)據(jù)MongoD的提高數(shù)據(jù)查詢的效率,也采用了內(nèi)存機(jī)制,把大量的熱點(diǎn)數(shù)據(jù)放在內(nèi)存中,來(lái)提高數(shù)據(jù)查詢的命中率,我們可以利用這個(gè)特性來(lái)滿足車輛位置查詢的需求。4) GP嗽據(jù)查詢接口設(shè)計(jì)a.車輛位置查詢接口提供查詢車輛最新位置信息,查詢條件為車輛ID,具

17、體實(shí)現(xiàn)主要是通過(guò)MongoDB的緩存機(jī)制來(lái)完成。可提供Java和JavaScript接口,供上層應(yīng)用調(diào)用。注:此處與實(shí)時(shí)服務(wù)的功能有些重復(fù),建議由實(shí)時(shí)服務(wù)來(lái)統(tǒng)一提供。b.歷史軌跡查詢接口設(shè)計(jì)提供查詢每輛車的歷史軌跡數(shù)據(jù),查詢條件為:車輛ID、開(kāi)始時(shí)間、結(jié)束時(shí)間。返回集應(yīng)包含去除除Can總線后的數(shù)據(jù)。可提供Java和JavaScript接口,供上層應(yīng)用調(diào)用。注:查詢返回的數(shù)據(jù)集結(jié)果盡量簡(jiǎn)潔,針對(duì)每類業(yè)務(wù)要求的訪問(wèn),不必要的信息要剔除掉,減少網(wǎng)絡(luò)壓力、提高查詢效率。c.報(bào)警數(shù)據(jù)查詢2.2.4 GPS數(shù)據(jù)統(tǒng)計(jì)設(shè)計(jì)1) 快照功能提供查詢某個(gè)區(qū)域內(nèi)、某段時(shí)間、都有哪些車輛,查詢條件為。提供查詢某個(gè)區(qū)域內(nèi)

18、、某段時(shí)間、都有哪些類型的報(bào)警車輛。2) 報(bào)警統(tǒng)計(jì)可以按報(bào)警類別來(lái)統(tǒng)計(jì)某個(gè)時(shí)間段內(nèi)都有哪些報(bào)警車輛??梢越y(tǒng)計(jì)某輛車在某段時(shí)間內(nèi)的報(bào)警次數(shù)統(tǒng)計(jì),可按總計(jì)、按報(bào)警類別來(lái)統(tǒng)計(jì)。2.2.5 拍照數(shù)據(jù)發(fā)布和查詢?cè)O(shè)計(jì)通值平臺(tái)通過(guò)MongoDB勺插件,與Nginx應(yīng)用服務(wù)代理集成,可以直接把存儲(chǔ)在MongoDBH勺數(shù)據(jù)發(fā)布成Http圖片服務(wù),供WetS用層調(diào)用。在具體應(yīng)用中的業(yè)務(wù)流程如下:NginxSquid.Yarn單國(guó)片isbJ*'Utrftix'服務(wù)耨方案說(shuō)明:A.解決圖片文件儲(chǔ)存儲(chǔ)分布的問(wèn)題,可以利用MongoDBGgps數(shù)據(jù)、圖片數(shù)據(jù)、視頻數(shù)據(jù)等都存儲(chǔ)在一起,方便管理和維護(hù);B.解

19、決圖片文件便利訪問(wèn)的問(wèn)題,如文件的屬性,文件的存儲(chǔ),文件的訪問(wèn)路徑都作為一條記錄存儲(chǔ)在MongoDB,方便上層應(yīng)用獲取;C.解決圖片高效訪問(wèn)的問(wèn)題,如利用Nginx解決圖片資源并發(fā)訪問(wèn)的問(wèn)題,禾U用Squid/Varnishd緩存服務(wù)來(lái)解決二次訪問(wèn)MongoDB勺問(wèn)題;2.3 存儲(chǔ)服務(wù)業(yè)務(wù)流程框架設(shè)計(jì)就用18M_J跳門(mén)“npt接口IWeb前端融作、C+/J接口I客戶端:*、,速操作E!MJ飄a接口實(shí)時(shí)服務(wù)L-fkJ或,寫(xiě)操作MongoDB存?zhèn)≠YJava接口,讀操作*lB>liBl,-!匚+僂口H與操作查詢分析服先MongoDB?儲(chǔ)服務(wù)提供C+/C儂口、Java接口和JavaScript

20、接口,分別為通訊層、服務(wù)層和應(yīng)用層提供存儲(chǔ)服務(wù)。3.方案部署架構(gòu)設(shè)計(jì)3.1 存儲(chǔ)服務(wù)(MongoDB部署架構(gòu)規(guī)劃設(shè)計(jì)為保證MongoDB的高可用性(高并發(fā)、高可擴(kuò)展性、高穩(wěn)定性),我們采用了ReplicaSet+Sharding部署架構(gòu),這是一種可以水平擴(kuò)展的模式,在數(shù)據(jù)量很大時(shí)特給力,實(shí)際大規(guī)模應(yīng)用一般會(huì)采用這種架構(gòu)去構(gòu)建MongoDB存儲(chǔ)系統(tǒng)。MongoDBf儲(chǔ)服務(wù)方案部署架構(gòu)設(shè)計(jì),如下圖所示:MongoD存儲(chǔ)服務(wù)集群架構(gòu)設(shè)計(jì)架構(gòu)圖說(shuō)明:A.分片cluster:分別在3臺(tái)服務(wù)器(見(jiàn)上圖Server-1,Server-3,Server-5)運(yùn)行一個(gè)mongod實(shí)例(見(jiàn)上圖mongodshar

21、d_11,mongodshard_21,mongodshard_31)。B.副本集:分別在3臺(tái)服務(wù)器(見(jiàn)上圖Server-2,Server-4,Server-6)運(yùn)行一個(gè)mongod實(shí)例(稱為mongodshard12,mongodshard22,mongodshard32),其中:Server-2的mongodshard12是Server-2的mongodshard_11的副本。Server-4的mongodshard22是Server-2的mongodshard_21的副本。Server-2的mongodshard31是Server-2的mongodshard_31的副本。C. 2臺(tái)服務(wù)器

22、,每臺(tái)服務(wù)器(見(jiàn)上圖Server-1、Server-3)運(yùn)行一個(gè)mongod實(shí)例,作為2個(gè)coMig,其作用是config雙機(jī)熱備。D. 3臺(tái)服務(wù)器,每臺(tái)服務(wù)器(見(jiàn)上圖Server-2,Server-4,Server-6)運(yùn)行一個(gè)mongos路由進(jìn)程,用于客戶端連接。E.線性擴(kuò)展:可以同時(shí)增加2臺(tái)服務(wù)器(見(jiàn)上圖Server-5、Server-6),其一個(gè)作為分片,另一個(gè)作為分片的副本和路由。備注說(shuō)明:1) mongod實(shí)例:用于存儲(chǔ)實(shí)際的數(shù)據(jù)塊,實(shí)際生產(chǎn)環(huán)境中一個(gè)shardserver角色可由幾臺(tái)服務(wù)器組個(gè)一個(gè)relicaset承擔(dān),防止主機(jī)單點(diǎn)故障。2) ConfigServer存儲(chǔ)分片集群

23、的的元數(shù)據(jù),其中包括在每個(gè)mongod實(shí)例的基本信息和塊信息。每個(gè)配置服務(wù)器所有塊的元數(shù)據(jù)的副本。通過(guò)兩次提交來(lái)確保在配置服務(wù)器信息與塊數(shù)據(jù)的一致性。3) mongos可以被看作是一個(gè)數(shù)據(jù)和請(qǐng)求分發(fā)的中心,使單一的mongod實(shí)例組成互相關(guān)聯(lián)的集群。當(dāng)接收客戶端請(qǐng)求,mongos根據(jù)ConfigServer路由到相應(yīng)的mongod實(shí)例(可能是一組mongod),處理并返回結(jié)果。mongos進(jìn)程沒(méi)有持久狀態(tài),在mongos啟動(dòng)時(shí)和配置服務(wù)器建立連接并獲取狀態(tài),當(dāng)配置服務(wù)器發(fā)生任何變化時(shí),會(huì)將之傳播到每個(gè)mongos進(jìn)程。3.2 存儲(chǔ)服務(wù)(MongoDB數(shù)據(jù)分片規(guī)劃設(shè)計(jì)1)什么叫分片以及分片的作用

24、?數(shù)據(jù)分割以及在不同機(jī)器存儲(chǔ)數(shù)據(jù)的過(guò)程稱之為分片。通過(guò)在多臺(tái)機(jī)器上分割數(shù)據(jù),使得數(shù)據(jù)庫(kù)系統(tǒng)能存儲(chǔ)更多的數(shù)據(jù),和處理更多的負(fù)載,在此過(guò)程中不需要更多更強(qiáng)大的機(jī)器。MongoD分片的基本概念是分割集群成更小的塊,或是文檔。這些分檔可以分布于很多的shards,這樣每個(gè)shard負(fù)載總數(shù)據(jù)集得子集。舉個(gè)例子,思考一下。當(dāng)你從集合選擇一個(gè)key安裝分片時(shí),并使用key分割數(shù)據(jù)。這個(gè)key稱為shardkey。假設(shè)你有一個(gè)聯(lián)系人的集合。如果我們選擇“姓”作為shardkey,那么一個(gè)分片可以存儲(chǔ)“姓”以A-F開(kāi)頭的,下一個(gè)分片可以存儲(chǔ)“姓”以G-P開(kāi)頭的,最后一個(gè)分片存儲(chǔ)“姓”以Q-Z開(kāi)頭的。當(dāng)你添加和

25、刪除分片時(shí),MongoD而重新做數(shù)據(jù)的負(fù)載,這樣每個(gè)分片會(huì)獲取一定量的流量和實(shí)際量的數(shù)據(jù)。所以在決定什么開(kāi)始分片呢?考慮一下幾個(gè)因素:目前的機(jī)器的磁盤(pán)什么時(shí)候用完;希望比單一的mongo毗理速度更快;希望在內(nèi)存中保留更多的數(shù)據(jù)以改善性能;3.3 存儲(chǔ)服務(wù)(MongoDB實(shí)例部署規(guī)劃設(shè)計(jì)由于本方案是:規(guī)劃用4到6臺(tái)服務(wù)器,多個(gè)MongoDB6個(gè)mongod實(shí)例、2個(gè)config實(shí)例、3各mongos實(shí)例)實(shí)例同時(shí)運(yùn)行在這些服務(wù)器上,所以在部署前需要先規(guī)劃好服務(wù)器的IP地址、實(shí)例的名稱、實(shí)例的分布(在那臺(tái)服務(wù)器上)、實(shí)例的端口等,然后再實(shí)施。本方案的MongoD嗷據(jù)庫(kù)實(shí)例部署規(guī)劃如下表所示:IP服

26、務(wù)名及端口Server_1="mongodb01”(內(nèi)網(wǎng))(外網(wǎng))mongodshard_11:27017mongodconfig_1:20000Server_2="mongodb02'(內(nèi)網(wǎng))(外網(wǎng))mongodshard_12:27018mongos_1:30000Server_3="mongodb03'(內(nèi)網(wǎng))(外網(wǎng))mongodshard_21:27017mongodconfig_2:20000Server_4="mo

27、ngodb。,(內(nèi)網(wǎng))(外網(wǎng))mongodshard_22:27018mongos_2:30000Server_5="mongodb05'(內(nèi)網(wǎng))(外網(wǎng))mongodshard_31:27017Server_6="mongodb06'(內(nèi)網(wǎng))(外網(wǎng))mongodshard_32:27018mongos_3:300003.4 存儲(chǔ)服務(wù)(MongoDB服務(wù)器硬件、網(wǎng)絡(luò)和操作系統(tǒng)規(guī)劃設(shè)計(jì)1)服務(wù)器硬件規(guī)劃要求服務(wù)器內(nèi)存:至少:16G,32G標(biāo)配,越大越

28、好。硬盤(pán)存儲(chǔ)空間:1T以上,非RAID格式,越大越好。注:不建議用磁盤(pán)陣列。服務(wù)器CPU至少4核以上,標(biāo)配8核,核越多越好CPU網(wǎng)卡:千兆網(wǎng)卡,雙網(wǎng)卡;2)網(wǎng)絡(luò)規(guī)劃要求MongoDB服務(wù)器集群在一個(gè)獨(dú)立的網(wǎng)段內(nèi)。集群服務(wù)器用千兆交換機(jī)連接。3)操作系統(tǒng)REDHADLinux64位企業(yè)版操作系統(tǒng),支持中文字符編碼。A.關(guān)閉文件系統(tǒng)/分區(qū)的atime選項(xiàng)Vi/etc/fstab在對(duì)應(yīng)的分區(qū)項(xiàng)后面添加noatime,nodiratimeLABEL=/1/ext3defaults11LABEL=/data1/dataext4defaults,noatime,nodiratime12B.設(shè)置文件句柄4k

29、+,目前該配置已經(jīng)集成到啟動(dòng)腳本中。vi/etc/security/limit.conf* softnproc65536* hardnproc65536* softnofile65536* hardnofile65536C.不要使用largevmpage(不要使用大內(nèi)存頁(yè)選項(xiàng))Linux大內(nèi)存頁(yè)參考:D.用dmesg查看主機(jī)的信息。E.linux文件系統(tǒng)的選擇Mongodb采用預(yù)分配的大文件來(lái)存儲(chǔ)數(shù)據(jù),我們推薦:ext3,xfs.F.Linux系統(tǒng)內(nèi)核版本網(wǎng)絡(luò)上對(duì)2.6.33-31以及2.6.32的表現(xiàn)持懷疑度,而強(qiáng)力推薦2.6.36G.線程堆棧的尺寸默認(rèn)的線程堆棧尺寸為10M調(diào)整為1M,已經(jīng)

30、集成在啟動(dòng)腳本中。3.5 MongoDB版本規(guī)劃設(shè)計(jì)版本號(hào):2.0.3forLiunx64位。注:偶數(shù)的版本是穩(wěn)定版,奇數(shù)是開(kāi)發(fā)版,例如,1.2開(kāi)頭的是穩(wěn)定版(1.2.03.5.1 ,1.2.2等等),1.3開(kāi)頭的開(kāi)發(fā)版(1.3.0,1.3.1,1.3.2等。3.6 存儲(chǔ)服務(wù)(MongoDB運(yùn)營(yíng)監(jiān)控規(guī)劃設(shè)計(jì)4.方案實(shí)施4.1 實(shí)施步驟1) 方案設(shè)計(jì)2) 方案評(píng)審3) 設(shè)計(jì)驗(yàn)證4) 結(jié)論評(píng)估5) 上線實(shí)施4.2 方案整體實(shí)施計(jì)劃附件1:存儲(chǔ)服務(wù)表(MongoDBCollection)結(jié)構(gòu)設(shè)計(jì)1. GP軟時(shí)數(shù)據(jù)存儲(chǔ)集合(表)結(jié)構(gòu)定義表名:gps_his_infos。作用:用于存儲(chǔ)車機(jī)實(shí)時(shí)上傳GP激

31、據(jù),并供前端應(yīng)用查詢和統(tǒng)計(jì)。具體表結(jié)構(gòu)信息如下所示:編號(hào)字段名稱中義對(duì)照別名字段類型是否索引備注1VID車輛IDA整數(shù)是2TSGPS寸問(wèn)B整數(shù)是不包含時(shí)區(qū)13LON經(jīng)度C整數(shù)是偏移后的4LAT緯度D整數(shù)是偏移后的5SP速度E整數(shù)DIR方向F整數(shù)7ALT海拔高度G整數(shù)8VS車輛狀態(tài)G整數(shù)9AC報(bào)警編碼H報(bào)警編碼子集合9.1S1緊急報(bào)警S1整數(shù):9.2S2超速報(bào)警S2整數(shù)9.3S3疲勞駕駛S3整數(shù)9.4S4預(yù)警S4整數(shù)r9.5S5導(dǎo)航模塊故障S5整數(shù)9.6S6導(dǎo)航系統(tǒng)天線未接S6整數(shù)r9.7S7導(dǎo)航天線短路S7整數(shù)9.8S8終端主電源欠壓S8整數(shù)9.9S9終端主電源掉電S9整數(shù)r9.10S10終端

32、顯示屏故障S10整數(shù)r9.11S11語(yǔ)音模塊故障S11整數(shù)9.12S12攝像頭故障S12整數(shù)9.13S13當(dāng)天累計(jì)駕駛超時(shí)S13整數(shù)9.14S14超時(shí)停車S14整數(shù)r9.15S15進(jìn)出區(qū)域S15整數(shù):9.16S16進(jìn)出路線S16整數(shù)9.17S17路線行駛時(shí)間不S17整數(shù)足/過(guò)長(zhǎng)9.18S18路線偏移報(bào)警S18整數(shù)9.19S19車輛速度傳感器故障S19整數(shù):9.20S20車輛油量異常S20整數(shù)9.21S21車輛被盜S21整數(shù)9.22S22車輛非法點(diǎn)火S22整數(shù)P9.23S23車輛非法位移S23整數(shù)9.24S24碰撞側(cè)翻報(bào)警S24整數(shù)9.25S25嚴(yán)重故障S25整數(shù)P9.26S26制動(dòng)氣壓報(bào)警S2

33、6整數(shù)P9.27S27油壓報(bào)警S27整數(shù)9.28S28水位低報(bào)警S28整數(shù)9.29S29制動(dòng)蹄片磨損報(bào)壁S29整數(shù)9.30S30空濾堵塞報(bào)警S30整數(shù)9.31S31緩速器高溫報(bào)警信號(hào)S31整數(shù)9.32S32倉(cāng)溫報(bào)警信號(hào)S32整數(shù)9.33S33機(jī)濾堵塞信號(hào)S33整數(shù)P9.34S34燃油堵塞信號(hào)S34整數(shù)9.35S35機(jī)油溫度報(bào)警信號(hào)S35整數(shù)P9.36S36燃油警告S36整數(shù)9.37S37空檔滑行告警S37整數(shù)9.38S38超長(zhǎng)怠速告警S38整數(shù)P9.39S39怠速空調(diào)告警S39整數(shù)9.40S40發(fā)動(dòng)機(jī)超轉(zhuǎn)告警S40整數(shù)9.41S41急加速報(bào)警S41整數(shù)9.42S42急減速報(bào)警S42整數(shù)9.43

34、S43門(mén)開(kāi)報(bào)警S43整數(shù)9.44S44冷卻液溫度過(guò)高報(bào)警S44整數(shù)9.45S45蓄電池電壓報(bào)警S45整數(shù)9.46S46ABS故障告警S46整數(shù)P9.47S47關(guān)鍵點(diǎn)報(bào)警S47整數(shù);10LO經(jīng)度I整數(shù)原始經(jīng)度11LA緯度J整數(shù)原始緯度;12MIL里程L整數(shù)TOW累計(jì)油耗M整數(shù)14ETT發(fā)動(dòng)機(jī)運(yùn)行時(shí)長(zhǎng)N整數(shù);15ER引擎轉(zhuǎn)速O整數(shù)16LS位置狀態(tài)位P整數(shù)17ALS區(qū)域/線路報(bào)警Q字符串:18CT冷卻液溫度R整數(shù)19SBV蓄電池電壓S整數(shù)20IOW瞬時(shí)油耗T整數(shù)121RSP記錄儀速度U整數(shù)22SD機(jī)油壓力V整數(shù)23AD大氣壓力W整數(shù)24ENP發(fā)動(dòng)機(jī)扭矩百分比X整數(shù)25DS車輛信號(hào)狀態(tài)Y整數(shù):26ST

35、系統(tǒng)時(shí)間Z整數(shù)建議:為節(jié)省GPS5時(shí)數(shù)據(jù)的存儲(chǔ)空間,我們建議采用英文首字符縮寫(xiě)方式來(lái)定義每個(gè)字段的名稱,當(dāng)然也可以用a、b、c、d來(lái)表示每個(gè)字段的名稱,這樣的好處是節(jié)省存儲(chǔ)空間,缺點(diǎn)是可讀性差,但可以通過(guò)相關(guān)查詢接口函數(shù)還原數(shù)據(jù)項(xiàng)可讀性差的問(wèn)題。2. GPS艮警歷史數(shù)據(jù)存儲(chǔ)集合(表)結(jié)構(gòu)定義表名:alarm_his_infos。作用:用于車輛報(bào)警事件信息的集合(表),包括報(bào)警位置、報(bào)警時(shí)間、報(bào)警附加信息、報(bào)警處理信息等。具體表結(jié)構(gòu)信息如下所示:編號(hào)字段名稱中義對(duì)照別名字段類型是否索引備注1AID報(bào)警IDA整數(shù)是2VID車輛IDB整數(shù)是;3VNO車牌號(hào)C字符串是4DID當(dāng)班司機(jī)編號(hào)D整數(shù)5STS

36、報(bào)警開(kāi)始時(shí)間E1整數(shù)是;6SLON經(jīng)度(起始位置)F1整數(shù)偏移后的7SLAT緯度(起始位置)G1整數(shù)偏移后的8SSP速度(起始位置)H1整數(shù)9SDIR方向(起始位置)I1整數(shù)10SALT海拔(起始位置)J1整數(shù)11SMIL里程(起始位置)K1整數(shù)12STOW累計(jì)油耗(起始位置)L1整數(shù)13ETS報(bào)警結(jié)束時(shí)間E2整數(shù)是114ELON經(jīng)度(結(jié)束位置)F2整數(shù)偏移后的15ELAT緯度(結(jié)束位置)G2整數(shù)偏移后的16ESP速度(結(jié)束包置)H2整數(shù)117EDIR方向(結(jié)束位置)I2整數(shù)18EALT海拔(結(jié)束位置)J2整數(shù)19EMIL里程(結(jié)束位置)K2整數(shù)20ETOW累計(jì)油耗(結(jié)束位置)L2整數(shù)21AT

37、報(bào)警類型編碼M整數(shù)詳見(jiàn)報(bào)警編碼對(duì)照表22AS報(bào)警源N整數(shù)1:車載終端,2:企業(yè)監(jiān)控平臺(tái),3:政府監(jiān)管平臺(tái),9:其它23BS基本狀態(tài)O1整數(shù)24ES擴(kuò)展?fàn)顟B(tài)O2整數(shù)25SAA報(bào)警附加信息(開(kāi)始位置)P1字符串26EAA報(bào)警附加信息(結(jié)束位置)P2字符串27ATS報(bào)警時(shí)間/系統(tǒng)時(shí)問(wèn)Q整數(shù)建議和系統(tǒng)時(shí)問(wèn)合并28APS報(bào)警處理狀態(tài)R整數(shù)是-1:未處理;0:不作處理;1:將來(lái)處理;2:處理完畢,9UID報(bào)警處理人S整數(shù):30APTS報(bào)警處理時(shí)間T整數(shù)是31TODO督辦狀態(tài)U整數(shù)0:未督辦;1:內(nèi)部督辦;2:監(jiān)管平臺(tái)督辦建議:為節(jié)省車輛報(bào)警數(shù)據(jù)的存儲(chǔ)空間,我們建議采用英文首字符縮寫(xiě)方式來(lái)定義每個(gè)字段的名稱

38、,當(dāng)然也可以用a、b、c、d來(lái)表示每個(gè)字段的名稱,這樣的好處是節(jié)省存儲(chǔ)空間,缺點(diǎn)是可讀性差,但可以通過(guò)相關(guān)查詢接口函數(shù)還原數(shù)據(jù)項(xiàng)可讀性差的問(wèn)題。注:(1)報(bào)警類型編碼對(duì)照表,如下表所示:報(bào)警類型報(bào)警編號(hào)緊急報(bào)警0超速報(bào)警1疲勞駕駛2預(yù)警3導(dǎo)航模塊故障4導(dǎo)航系統(tǒng)天線未接5導(dǎo)航天線短路6終端主電源欠壓7終端主電源掉電8終端顯示屏故障9語(yǔ)音模塊故障10攝像頭故障11當(dāng)天累計(jì)駕駛超時(shí)18超時(shí)停車19進(jìn)出區(qū)域20進(jìn)出路線21路線行駛時(shí)間不足/過(guò)長(zhǎng)22路線偏移報(bào)警23車輛速度傳感器故障24車輛油量異常25車輛被盜26車輛非法點(diǎn)火27車輛非法位移28碰撞側(cè)翻報(bào)警29嚴(yán)重故障32制動(dòng)氣壓報(bào)警33油壓報(bào)警34水

39、位低報(bào)警35制動(dòng)蹄片磨損報(bào)警36空濾堵塞報(bào)警37緩速器高溫報(bào)警信號(hào)38倉(cāng)溫報(bào)警信號(hào)39機(jī)濾堵塞信號(hào)40燃油堵塞信號(hào)41機(jī)油溫度報(bào)警信號(hào)42燃油警告43空檔滑行告警44超長(zhǎng)怠速告警45怠速空調(diào)告警461發(fā)動(dòng)機(jī)超轉(zhuǎn)告警47急加速報(bào)警48急減速報(bào)警49門(mén)開(kāi)報(bào)警50冷卻液溫度過(guò)高報(bào)警51蓄電池電壓報(bào)警52ABS障葉53關(guān)鍵點(diǎn)報(bào)警220(2)報(bào)警附加信息編碼定義1 .超速報(bào)警,格式:位置類型|區(qū)域或路段ID類型:0:無(wú)特定位置;1:圓型區(qū)域;2:矩形區(qū)域;3:多邊形區(qū)域;4:路段當(dāng)類型為0時(shí),無(wú)區(qū)域ID或路段ID值2 .進(jìn)出區(qū)域/路段報(bào)警附加信息類型,格式:位置類型|區(qū)域或線路ID|方向類型:0:無(wú)特定

40、位置;1:圓型區(qū)域;2:矩形區(qū)域;3:多邊形區(qū)域;4:路線方向:0:進(jìn),1:出3 .路線行駛時(shí)間不足/過(guò)長(zhǎng),格式:路段ID|路段行駛時(shí)間|結(jié)果結(jié)果:0:不足,1:過(guò)長(zhǎng)3 .司機(jī)駕駛行為事件存儲(chǔ)集合(表)結(jié)構(gòu)定義表名:driver_action_infos。作用:用于存儲(chǔ)司機(jī)駕駛行為數(shù)據(jù)的表。具體表結(jié)構(gòu)信息如下所示:編號(hào)字段名稱中義對(duì)照別名字段類型是否索引備注1VID車輛IDA整數(shù)是2AID駕駛行為類型B整數(shù)是詳見(jiàn)卜表3STSGPS寸間(起始位置)C整數(shù)是不包含時(shí)區(qū)4SLON經(jīng)度(起始位置)D整數(shù)偏移后的15SLAT緯度(起始位置)E整數(shù)偏移后的6SSP速度(起始位置)F整數(shù)7SALT海拔(起始

41、位置)G整數(shù)18SDIR方向(起始位置)H整數(shù)9ETSGPS寸間(結(jié)束位置)I整數(shù)是不包含時(shí)區(qū)10ELON經(jīng)度(結(jié)束位置)J整數(shù)偏移后的:11:ELAT緯度(結(jié)束位置)K整數(shù)偏移后的12ESP速度(結(jié)束包置)L整數(shù)13EALT海拔高度(結(jié)束位置)M整數(shù)14EDIR方向(結(jié)束位置)N整數(shù)15ST系統(tǒng)時(shí)間O整數(shù)注:駕駛行為類型定義:駕駛行為類型仃為編p加熱器工作1空調(diào)工作2發(fā)動(dòng)機(jī)超轉(zhuǎn)3過(guò)長(zhǎng)怠速4超經(jīng)濟(jì)區(qū)運(yùn)行5空檔滑行6怠速空調(diào)7二檔起步8檔位不當(dāng)9超速10疲勞駕駛114 .發(fā)動(dòng)機(jī)負(fù)荷率存儲(chǔ)集合(表)結(jié)構(gòu)定義表名:engine_load_infos。作用:用于存儲(chǔ)車輛的發(fā)動(dòng)機(jī)負(fù)荷率數(shù)據(jù)的集合(表)具

42、體表結(jié)構(gòu)信息如下所示:編號(hào)字段名稱中義對(duì)照別名字段類型是否索引備注1VID車輛IDA整數(shù)是2TS時(shí)間C整數(shù)是不包含時(shí)區(qū)3DAT負(fù)荷數(shù)據(jù)D字符串5 .拍照數(shù)據(jù)存儲(chǔ)集合(表)結(jié)構(gòu)定義表名:photo_infos。作用:用于存儲(chǔ)車輛的拍照?qǐng)D片數(shù)據(jù)的集合(表)具體表結(jié)構(gòu)信息如下所示:編號(hào)字段名稱中義對(duì)照別名字段類型是否索引備注1VID車輛ID1A整數(shù)是2TS拍照時(shí)間B整數(shù)是不包含時(shí)區(qū)3FN文件名C字符串4HP發(fā)布地址D字符串15:DAT圖片E二進(jìn)制對(duì)象6 .上下行指令數(shù)據(jù)集合結(jié)構(gòu)定義表名:up_down_command_infos作用:用于存儲(chǔ)車輛的拍照?qǐng)D片數(shù)據(jù)的集合(表)具體表結(jié)構(gòu)信息如下所示:附件

43、2:存儲(chǔ)服務(wù)(MongoDB)對(duì)外接口統(tǒng)一定義存儲(chǔ)服務(wù)的對(duì)外統(tǒng)一接口分為3大類:更新類接口、查詢接口和統(tǒng)計(jì)類接口由于寫(xiě)操作接口跟通信服務(wù)緊密相關(guān),所以優(yōu)先提供C+談型的接口。查詢和統(tǒng)計(jì)接口跟上層服務(wù)和應(yīng)用緊密相關(guān),所以提供Java類型的接口和JavaScript接口,這里優(yōu)先提供Java接口2.1更新類接口1) GPS實(shí)時(shí)位置數(shù)據(jù)更新接口A.GP或時(shí)數(shù)據(jù)插入操作接口intinsertGPS(BSONObj&gpsData);注:BSONOjMongoDBC+客戶端驅(qū)動(dòng)的BSON據(jù)的基本對(duì)象。gpsData參數(shù)的聲明類型為BSONObj其具體格式定義如下"A" : 1

44、175,B” : ISODate("2012-02-17T14:22:46")"C" : 69838489,"D" : 23946431,"E" : 59,"F" : 234,G”: 1225,"VS" : “s1” :“s2” :s3s4 :a _ l »s5a _ c, s6 :“s7” :"_ c »s8s9 :s10s11:s12:s13:s14:s15“s16” :“s17” :/車輛ID/GPS時(shí)間/經(jīng)度/緯度/速度/方向/海拔高度/

45、車輛狀態(tài)子類(嵌套)/緊急報(bào)警/超速報(bào)警/疲勞駕駛/預(yù)警/導(dǎo)航模塊故障/導(dǎo)航系統(tǒng)天線未接/導(dǎo)航天線短路/終端主電源欠壓/終端主電源掉電/終端顯示屏故障/語(yǔ)音模塊故障/攝像頭故障/當(dāng)天累計(jì)駕駛超時(shí)/超時(shí)停車/進(jìn)出區(qū)域/進(jìn)出路線/路線行駛時(shí)間不足/過(guò)長(zhǎng)“s18”:/路線偏移報(bào)警“s19”/車輛速度傳感器故障“s20”/車輛油量異常“s21”/車輛被盜“s22”/車輛非法點(diǎn)火“s23”/車輛非法位移“s24”/碰撞側(cè)翻報(bào)警“s25”/嚴(yán)重故障“s26”/制動(dòng)氣壓報(bào)警“s27”/油壓報(bào)警“s28”/水位低報(bào)警“s29”/制動(dòng)蹄片磨損報(bào)警“s30”/空濾堵塞報(bào)警“s31”/緩速器高溫報(bào)警信號(hào)“s32”/

46、倉(cāng)溫報(bào)警信號(hào)“s33”/機(jī)濾堵塞信號(hào)“s34”/燃油堵塞信號(hào)“s35”/機(jī)油溫度報(bào)警信號(hào)“s36”/燃油警告“s37”/空檔滑行告警“s38”/超長(zhǎng)怠速告警“s39”/怠速空調(diào)告警“s40”/發(fā)動(dòng)機(jī)超轉(zhuǎn)告警“s41”/急加速報(bào)警“s42”/急減速報(bào)警“s43”/門(mén)開(kāi)報(bào)警“s44”/冷卻液溫度過(guò)高報(bào)警“s45”/蓄電池電壓報(bào)警“s47”/ABS故障告警“s47”/關(guān)鍵點(diǎn)報(bào)警"H":395454,/經(jīng)度"I":1393444,/緯度J:143544,/海拔高度K”:235679087,/里程L":,2/位置基本信息狀態(tài)位M”:區(qū)域:進(jìn)“,/區(qū)域/線

47、路報(bào)警N”55,/行駛記錄儀速度O”2,/車輛信號(hào)狀態(tài)P”:ISODate("2012-02-17T14:22:46"),/系統(tǒng)時(shí)間CAN”:/CAN總線數(shù)據(jù)子類(嵌套)C1”:135/累計(jì)油耗C2”:135/發(fā)動(dòng)機(jī)運(yùn)行總時(shí)長(zhǎng)C3”:135/引擎轉(zhuǎn)速C4”:135,/冷卻液溫度C5”:135,/蓄電池電壓C6”:135,/瞬時(shí)油耗C7”:135,/機(jī)油壓力C8”:135,/大氣壓力C9”:135,/發(fā)動(dòng)機(jī)扭矩百分比2)車輛報(bào)警數(shù)據(jù)更新接口A.車輛報(bào)警數(shù)據(jù)插入操作接口intinsertAlarmData(BSONObj&alarmData)alarmData參數(shù)的聲明

48、類型為BSONObj其具體格式定義如下:/車輛ID/車牌號(hào)碼/當(dāng)班司機(jī)編號(hào)/報(bào)警開(kāi)始位置信息(子類)/報(bào)警開(kāi)始時(shí)間(GPS寸間)/經(jīng)度/緯度/速度/方向/海拔高度/里程/油耗"A":1175,B":"京B126765"),C”:3376,“P1”:看1":ISODate("2012-02-17T14:22:46")"a2":69838489,"a3":23946431,"a4”:59,"a5”:234,看6”:1225,"a7”:234,看8”:

49、1225,P2”:/報(bào)警結(jié)束位置信息(子類)/報(bào)警結(jié)束時(shí)間(GPS寸間)/經(jīng)度/緯度/速度/方向/海拔高度/里程看1":ISODate("2012-02-17T14:22:46")"a2":69838489,"a3":23946431,"a4”:59,"a5”:234,看6”:1225,"a7”:234,看8”:1225,/油耗AC" : 395454,E” : ISODate("2012-02-17T14:22:46")"F" : 1,G” : 1243544,H” : 235679087,“ AA” : “al”開(kāi)始位置附加信息”“2” :結(jié)束位置附加信息”r : 2,J':李四”,K : ISODate("2012-02-17T14:22:46")L” : 2,/報(bào)警類型編碼(索引)/系統(tǒng)時(shí)間/報(bào)警源/基本狀態(tài)/擴(kuò)展?fàn)顟B(tài)報(bào)警附加信息(子集)/開(kāi)始位置/結(jié)束位置/報(bào)警處理狀態(tài)/報(bào)警處理人/報(bào)警處理時(shí)間/報(bào)警督辦狀態(tài)B.車輛報(bào)警數(shù)據(jù)更新接口intupdateAlarmDat

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論