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

基于分區(qū)存儲(chǔ)的AIS系統(tǒng)航行安全數(shù)據(jù)庫(kù)設(shè)計(jì)

2018-11-01 09:15:18,,
船海工程 2018年5期
關(guān)鍵詞:數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)

,,

(中船航海科技有限責(zé)任公司,北京 100070)

船舶目標(biāo)自動(dòng)識(shí)別系統(tǒng)(AIS系統(tǒng)),通過船與船、船與岸之間傳遞航行信息,增強(qiáng)了海上生命安全、航海效率、航海安全的能力,提高了船舶駕駛員的獲知信息的質(zhì)量[1]。國(guó)際海事組織對(duì)大中型船舶配備AIS系統(tǒng)作出了強(qiáng)制安裝規(guī)定[2]。目前AIS系統(tǒng)在大中型船舶中已經(jīng)得到廣泛應(yīng)用,但市場(chǎng)上的常用AIS系統(tǒng)并不記錄航行數(shù)據(jù)[3],通常解決方法有:①使用Ecdis(電子海圖)設(shè)備進(jìn)行數(shù)據(jù)記錄[4-5];②使用VDR擴(kuò)展接口記錄數(shù)據(jù);③通過AIS接收設(shè)備擴(kuò)展存儲(chǔ)接口進(jìn)行數(shù)據(jù)記錄。 這3種方法遇到的困難都有所不同,VDR作為記錄航行信息重要設(shè)備,日常使用并不對(duì)外提供數(shù)據(jù)接口,Ecdis記錄航行數(shù)據(jù)也是解決方法,但是對(duì)于一些小船來說使用Ecdis較為復(fù)雜。因此文中提供了一種記錄AIS數(shù)據(jù)的解決方案,采用在船用AIS系統(tǒng)中增加航行安全數(shù)據(jù)庫(kù)記錄模塊,負(fù)責(zé)對(duì)收到的AIS目標(biāo)進(jìn)行處理,存儲(chǔ)航行過程中的AIS目標(biāo)數(shù)據(jù),包括速度、位置、船號(hào)、呼號(hào),并利用分區(qū)分表記錄提高船只的數(shù)據(jù)存儲(chǔ)能力和查詢效率,可用來進(jìn)行航行回放、航行總結(jié),并且可以根據(jù)實(shí)際數(shù)據(jù)和雷達(dá)數(shù)據(jù)進(jìn)行融合,進(jìn)一步提升船舶航行安全。

1 航行安全數(shù)據(jù)庫(kù)設(shè)計(jì)

1.1 數(shù)據(jù)庫(kù)選擇及原理

文中的AIS接收設(shè)備采用了嵌入式Linux系統(tǒng),根據(jù)調(diào)查目前通用的數(shù)據(jù)庫(kù)系統(tǒng)有oracle、sqlserver、mysql、sqslite、postgresql等[6]。Oracle和sqlserver比較適用于大型應(yīng)用,sqllite只在內(nèi)存中保存數(shù)據(jù),并不能對(duì)數(shù)據(jù)進(jìn)行持久化操作,因此在嵌入式安裝條件下可以選擇數(shù)據(jù)庫(kù)有mysql以及postgresql2種[7],但mysql已經(jīng)商業(yè)化,使用mysql未來可能會(huì)被收取費(fèi)用,因此選擇postgresql數(shù)據(jù)庫(kù)進(jìn)行航行安全數(shù)據(jù)庫(kù)設(shè)計(jì)。

1.2 分區(qū)分表的由來

根據(jù)長(zhǎng)期統(tǒng)計(jì)數(shù)據(jù),判斷90 d是一個(gè)比較合理的記錄時(shí)長(zhǎng),超過這個(gè)時(shí)長(zhǎng)航行安全數(shù)據(jù)庫(kù)可以進(jìn)行數(shù)據(jù)回滾。如果AIS目標(biāo)數(shù)據(jù)長(zhǎng)時(shí)間存儲(chǔ)不進(jìn)行數(shù)據(jù)分區(qū),數(shù)據(jù)實(shí)用性較差,而且長(zhǎng)期在一個(gè)表格中進(jìn)行記錄,算法的內(nèi)存消耗以及算法的磁盤 I/O 消耗都按指數(shù)級(jí)別上升[8]。因此,選擇分區(qū)分表記錄數(shù)據(jù)。

1.3 數(shù)據(jù)規(guī)模分析

AIS信息包含多種不同類型的消息,主要分為動(dòng)態(tài)信息、靜態(tài)信息[9],本著簡(jiǎn)單原則,僅對(duì)AIS動(dòng)態(tài)目標(biāo)信息進(jìn)行記錄。

航行安全數(shù)據(jù)庫(kù)將AIS目標(biāo)動(dòng)態(tài)信息建表進(jìn)行存儲(chǔ),以MMSI字段作為主鍵,便于對(duì)數(shù)據(jù)存儲(chǔ)處理和整合查詢。按照AIS系統(tǒng)原理,AIS系統(tǒng)每分鐘最大接收并存儲(chǔ)2 250批數(shù)據(jù)[10],按每批數(shù)據(jù)平均100個(gè)字節(jié)進(jìn)行計(jì)算,每天的數(shù)據(jù)記量最大設(shè)計(jì)為324 MB字節(jié),設(shè)計(jì)最大航程為90 d,數(shù)據(jù)大小約29 G,考慮到擴(kuò)展性,采用60G的SD卡則可以滿足數(shù)據(jù)存儲(chǔ)要求。

1.4 數(shù)據(jù)庫(kù)分區(qū)分表設(shè)計(jì)

通過postgresql數(shù)據(jù)庫(kù)建立動(dòng)態(tài)信息表,利用存儲(chǔ)過程、分區(qū)技術(shù)形成航行安全數(shù)據(jù)庫(kù),采用內(nèi)存緩沖技術(shù)將AIS目標(biāo)動(dòng)態(tài)信息寫入數(shù)據(jù)庫(kù),并在此基礎(chǔ)上對(duì)數(shù)據(jù)插入效率進(jìn)行分析。航行安全數(shù)據(jù)庫(kù)采用postgresql 8.4版本,數(shù)據(jù)采用按日存放分區(qū)的形式,一共存放90個(gè)分區(qū),用于存放備份數(shù)據(jù)。在超過90 d后,將分區(qū)變成獨(dú)立表,用于數(shù)據(jù)備份。獨(dú)立表保存30 d,之后被永久刪除。主要步驟包括:利用數(shù)據(jù)庫(kù)對(duì)數(shù)據(jù)記錄表進(jìn)行分區(qū)存儲(chǔ)。單一數(shù)據(jù)表每天新增表項(xiàng)較大,采用分區(qū)存儲(chǔ)將利于數(shù)據(jù)庫(kù)的優(yōu)化和查詢,采用數(shù)據(jù)分區(qū)的方式對(duì)AIS數(shù)據(jù)進(jìn)行數(shù)據(jù)存儲(chǔ)管理。分區(qū)是指將海量數(shù)據(jù)由一個(gè)數(shù)據(jù)區(qū)存儲(chǔ)管理拆分為多個(gè)數(shù)據(jù)區(qū)存儲(chǔ)管理, 對(duì)于實(shí)時(shí)更新的航行安全數(shù)據(jù)庫(kù)而言,數(shù)據(jù)庫(kù)的存儲(chǔ)、查詢效率是設(shè)計(jì)方案的關(guān)鍵。

例如,2017年11月20日,對(duì)于表objship會(huì)建立一個(gè)名為objship_20171120的數(shù)據(jù)表。隨著數(shù)據(jù)的不斷到來,就會(huì)生成大量的按時(shí)間和日期劃分的表。每天接收的數(shù)據(jù)都會(huì)保存在相應(yīng)的數(shù)據(jù)表下。當(dāng)用戶輸入一條查詢指令時(shí),該數(shù)據(jù)庫(kù)對(duì)所有分區(qū)進(jìn)行并行查詢,縮短了查詢時(shí)間,提高了查詢效率。航行安全數(shù)據(jù)庫(kù)按日期創(chuàng)建分區(qū)是一個(gè)比較合理的選擇,根據(jù)到達(dá)數(shù)據(jù)時(shí)間戳所在區(qū)間,系統(tǒng)每天為每張表建立一個(gè)新的分區(qū),新分區(qū)繼承自主表。分區(qū)對(duì)數(shù)據(jù)庫(kù)操作透明,即用戶的所有操作均對(duì)主表進(jìn)行,分區(qū)不可見。具體分區(qū)方式如下:為每個(gè)分區(qū)劃定一個(gè)時(shí)間段,存儲(chǔ)時(shí)間戳在該范圍內(nèi)的數(shù)據(jù),不同分區(qū)覆蓋的時(shí)間段不重合。

航行安全數(shù)據(jù)庫(kù)工作方式示意見圖1。

1.5 內(nèi)存緩沖設(shè)計(jì)

AIS系統(tǒng)的嵌入式系統(tǒng)設(shè)定目標(biāo)接收線程,對(duì)AIS系統(tǒng)接收到的目標(biāo)進(jìn)行處理,根據(jù)AIS技術(shù)標(biāo)準(zhǔn)規(guī)定每分鐘劃分為2 250個(gè)時(shí)間段,每個(gè)時(shí)間段可以發(fā)布不長(zhǎng)于256 bit的數(shù)據(jù) ,每條船舶會(huì)通過詢問選擇一個(gè)與他船不發(fā)生沖突的時(shí)間段和對(duì)應(yīng)的時(shí)間段來發(fā)布本船的訊息。因此根據(jù)AIS系統(tǒng)設(shè)計(jì)原理將航行安全數(shù)據(jù)庫(kù)記錄的船舶目標(biāo)設(shè)定為每分鐘最大值為2 250,每秒最大為38批目標(biāo),取整后內(nèi)存緩沖區(qū)設(shè)定為每秒40批目標(biāo)。

首先建立AIS目標(biāo)動(dòng)態(tài)信息的內(nèi)容建立數(shù)據(jù)結(jié)構(gòu),表1給出了AIS表對(duì)應(yīng)的存儲(chǔ)靜態(tài)表格數(shù)據(jù)結(jié)構(gòu)。

表1 AIS表對(duì)應(yīng)的數(shù)據(jù)結(jié)構(gòu)

對(duì)數(shù)據(jù)存儲(chǔ)進(jìn)行優(yōu)化前,需要了解數(shù)據(jù)庫(kù)處理數(shù)據(jù)存儲(chǔ)的過程。向數(shù)據(jù)庫(kù)執(zhí)行插入時(shí),接收AIS目標(biāo)的客戶端首先向數(shù)據(jù)庫(kù)發(fā)起SQL指令,該指令通過網(wǎng)絡(luò)中傳輸?shù)綌?shù)據(jù)庫(kù)。當(dāng)數(shù)據(jù)庫(kù)接收到該指令后開始處理指令,主要對(duì)其完成解析、執(zhí)行、提交和返回操作,最后將結(jié)果返回給客戶端。圖2為AIS系統(tǒng)接收和處理的數(shù)據(jù)不進(jìn)行內(nèi)存緩沖的處理流程。

根據(jù)上述的流程,單次執(zhí)行存儲(chǔ)AIS目標(biāo)數(shù)據(jù)庫(kù)的公式如下。

ResultTime= Nettime+ParseTime+

ExecTime+CommitTime

式中:Nettime為處理進(jìn)程的響應(yīng)時(shí)間;ResultTime為SQL語句在網(wǎng)絡(luò)傳輸?shù)耐禃r(shí)間;ParseTime為語句的解析時(shí)間,ExecTime為語句的執(zhí)行時(shí)間;CommitTime為語句的提交時(shí)間。

當(dāng)處理發(fā)送n個(gè)AIS目標(biāo)時(shí),將處理n次解析、n次執(zhí)行和n次提交時(shí)間的綜合。如果n是較大時(shí),其花費(fèi)的時(shí)間將隨n值線性增加。因此內(nèi)存緩沖設(shè)計(jì)方案基于如上分析,減少插入次數(shù),提高單次插入目標(biāo)數(shù),可以提升數(shù)據(jù)庫(kù)的運(yùn)行效率。

內(nèi)存緩沖數(shù)據(jù)結(jié)構(gòu)可在程序動(dòng)態(tài)執(zhí)行時(shí)可通過該數(shù)據(jù)接口建立一個(gè)內(nèi)存隊(duì)列,內(nèi)存隊(duì)列可起到緩沖作用,AIS處理線程對(duì)接收到的目標(biāo)進(jìn)行處理,解析后的AIS目標(biāo)信息先放入,待緩沖區(qū)達(dá)到一定目標(biāo)條數(shù)后再向數(shù)據(jù)庫(kù)發(fā)起SQL指令,以便減少數(shù)據(jù)庫(kù)執(zhí)行過程中消耗的總時(shí)間。基于緩沖存儲(chǔ)的處理流程見圖3。

2 數(shù)據(jù)插入效率分析

對(duì)于這些數(shù)據(jù)庫(kù)表,根據(jù)AIS接收機(jī)的實(shí)際情況,為方便對(duì)比限定對(duì)測(cè)量場(chǎng)景,假設(shè)船舶在航行狀態(tài)下每秒接收的AIS目標(biāo)最大批數(shù)是最大狀態(tài),首先設(shè)定了每秒插入的數(shù)據(jù)量相同,但每秒通過不同的緩沖值進(jìn)行,測(cè)試在數(shù)據(jù)表中插入頻率對(duì)數(shù)據(jù)庫(kù)的時(shí)間性能。以下為具體實(shí)驗(yàn)過程。

按照緩沖區(qū)設(shè)計(jì),為方便測(cè)試,設(shè)定總插入數(shù)據(jù)量為1萬批,進(jìn)行連續(xù)目標(biāo)插入,每次插入批數(shù)由1批目標(biāo)連續(xù)上升到200批,計(jì)算單次數(shù)據(jù)庫(kù)耗費(fèi)時(shí)間,每次插入目標(biāo)未超過38批時(shí),每次插入增加條數(shù)提升插入效率較為明顯,超過38批后,插入效率略有提升,但效果并不明顯。

隨著每次插入批數(shù)增加,數(shù)據(jù)庫(kù)插入效率得到提高。對(duì)postgresql實(shí)際插入測(cè)量表明,同時(shí)向數(shù)據(jù)庫(kù)中插入38條數(shù)據(jù)相比順序插入38條數(shù)據(jù)快2.5倍以上。具體可參見圖4。

3 結(jié)論

1)通過AIS接收設(shè)備記錄數(shù)據(jù)是一種相對(duì)比較低成本的實(shí)現(xiàn)方式,根據(jù)試驗(yàn),其分區(qū)和內(nèi)存緩沖的設(shè)計(jì)方式可普遍適用于其他需用到數(shù)據(jù)庫(kù)的船舶電子配套設(shè)備上,該設(shè)計(jì)可提升數(shù)據(jù)庫(kù)查詢和記錄數(shù)據(jù)的效率,降低了磁盤的I/O操作,并降低算法的復(fù)雜度。

2)提出的設(shè)計(jì)方法長(zhǎng)時(shí)間記錄時(shí)占用嵌入式處理器處理時(shí)間較高,通常占到40%~60%,未來可以通過加強(qiáng)任務(wù)調(diào)度期間的時(shí)間分配,來提高內(nèi)存緩沖的工作效率。

3)通過postgresql分區(qū)設(shè)計(jì)、內(nèi)存緩沖設(shè)計(jì),并對(duì)數(shù)據(jù)進(jìn)行插入、查詢效率進(jìn)行分析,實(shí)現(xiàn)postgresl數(shù)據(jù)庫(kù)的最優(yōu)數(shù)據(jù)存儲(chǔ)方式。通過該航行安全數(shù)據(jù)庫(kù)設(shè)計(jì)研究,可為設(shè)計(jì)人員開展AIS系統(tǒng)設(shè)計(jì)提供參考。

4)下一步的研究方向是將獲取的AIS目標(biāo)數(shù)據(jù)庫(kù)結(jié)合獲取的雷達(dá)目標(biāo)信息運(yùn)用機(jī)器學(xué)習(xí)算法進(jìn)行聚類分析,實(shí)現(xiàn)優(yōu)勢(shì)互補(bǔ),進(jìn)一步為船舶航行的安全提供保證。

猜你喜歡
數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機(jī)系統(tǒng)
ZC系列無人機(jī)遙感系統(tǒng)
瞞天過海——仿生設(shè)計(jì)萌到家
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計(jì)叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
主站蜘蛛池模板: 91美女视频在线| 99热国产这里只有精品无卡顿"| 中文字幕人妻av一区二区| 538国产视频| 欧美亚洲欧美区| 91久久夜色精品国产网站| 毛片网站观看| 成人免费视频一区二区三区| 制服丝袜无码每日更新| 亚洲va精品中文字幕| 国产美女精品在线| 久久青青草原亚洲av无码| 99久久这里只精品麻豆| 国产精品亚洲片在线va| 国产日韩欧美一区二区三区在线 | 国产成人高清亚洲一区久久| 在线无码私拍| 国产精品性| 国产亚洲视频免费播放| 欧美性色综合网| 色综合天天娱乐综合网| 精品天海翼一区二区| 久热99这里只有精品视频6| 日韩欧美国产综合| 免费一级毛片不卡在线播放| 国产精品妖精视频| 婷婷亚洲最大| 亚洲欧洲一区二区三区| 欧美日韩资源| 日韩黄色大片免费看| 制服丝袜在线视频香蕉| 久久午夜影院| 国产精品第一区| 在线看片中文字幕| 亚洲成人一区二区| 久久人妻系列无码一区| 综合色婷婷| 成人一级免费视频| 2022国产91精品久久久久久| 亚洲成在人线av品善网好看| 成人精品午夜福利在线播放| 国产麻豆aⅴ精品无码| 亚洲有码在线播放| Aⅴ无码专区在线观看| AV在线天堂进入| 99在线小视频| 日韩欧美国产成人| 91色国产在线| 欧美精品亚洲二区| 久久中文字幕av不卡一区二区| 欧美国产日韩在线观看| 六月婷婷精品视频在线观看| 99精品国产高清一区二区| 无码人妻热线精品视频| 日本一本正道综合久久dvd | 久久九九热视频| 日本www色视频| 亚洲日本在线免费观看| 免费在线色| av一区二区三区高清久久| 91小视频在线观看| 国产一级精品毛片基地| 亚洲高清资源| 高h视频在线| 国产91视频观看| 亚洲综合色在线| 99久久国产综合精品女同| 69综合网| 亚洲va欧美va国产综合下载| 久久精品人人做人人爽97| 在线观看视频一区二区| 亚洲av片在线免费观看| 国产乱子伦手机在线| 伦伦影院精品一区| 国产精品成人一区二区| 无码一区18禁| 欧美亚洲激情| 深爱婷婷激情网| 日韩无码真实干出血视频| 亚洲无码精彩视频在线观看| 成年人久久黄色网站| 国产欧美成人不卡视频|