国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

海洋聲速剖面數(shù)據(jù)庫的快速存取技術(shù)研究

2017-01-07 01:29金中原楊日杰
兵器裝備工程學(xué)報(bào) 2016年12期
關(guān)鍵詞:數(shù)據(jù)文件經(jīng)度聲速

戰(zhàn) 和,金中原,楊日杰

(1.海軍航空工程學(xué)院,山東 煙臺 264001; 2. 92074部隊(duì),浙江 寧波 315020)

【裝備理論與裝備技術(shù)】

海洋聲速剖面數(shù)據(jù)庫的快速存取技術(shù)研究

戰(zhàn) 和1,2,金中原1,楊日杰1

(1.海軍航空工程學(xué)院,山東 煙臺 264001; 2. 92074部隊(duì),浙江 寧波 315020)

海洋中聲信號的傳播受聲速剖面的影響,而聲速剖面往往是通過數(shù)據(jù)庫的形式來獲取的;從SQL Server等第三方數(shù)據(jù)庫軟件無法滿足實(shí)時性要求出發(fā),研究了聲速剖面數(shù)據(jù)的特點(diǎn)以及使用的特點(diǎn),以此為基礎(chǔ)建立了新的數(shù)據(jù)文件格式并設(shè)計(jì)了存取接口;經(jīng)測試,應(yīng)用新格式生成的數(shù)據(jù)文件體積大幅度縮小,存取速度大幅度提升。

聲速剖面;數(shù)據(jù)庫;快速存取技術(shù)

在海洋中電磁波無法傳播,要實(shí)現(xiàn)遠(yuǎn)距離通信或?qū)λ履繕?biāo)進(jìn)行探測,必須以聲波作為載體,而聲信號在海水中的傳播受多種因素的影響,其中最主要的就是聲速在海水中垂直方向的分布,即聲速剖面[1-3]。目前,獲取聲速剖面的手段主要有兩種,一種是使用測量船等手段測量總結(jié)形成的歷史數(shù)據(jù)庫,另一種是在具體海域開展工作時進(jìn)行現(xiàn)場實(shí)測?,F(xiàn)場實(shí)測一般需耗時15~20 min,對于實(shí)時性要求較高的情況并不適用,只能借助歷史數(shù)據(jù)庫。因此,數(shù)據(jù)庫中數(shù)據(jù)文件的組織結(jié)構(gòu)以及存取速度,就成為了能否滿足實(shí)時性的關(guān)鍵技術(shù)。

1 聲速剖面數(shù)據(jù)分析

1.1 數(shù)據(jù)來源及其特點(diǎn)

本文使用的原始數(shù)據(jù)為美國NOAA的WOD13數(shù)據(jù)(http://www.nodc.noaa.gov),數(shù)據(jù)范圍為經(jīng)度Lo1~LoM、緯度La1~LaN(因數(shù)據(jù)是柵格化的,M和N分別表示經(jīng)度、緯度方向的數(shù)據(jù)跨度),將其中溫度、鹽度、壓力3項(xiàng)代入Chen-Millero-Li聲速經(jīng)驗(yàn)公式求得擴(kuò)展標(biāo)準(zhǔn)層的聲速值,作為數(shù)據(jù)庫的數(shù)據(jù)基礎(chǔ)[4-6]。數(shù)據(jù)精度在經(jīng)度、緯度方向?yàn)?°,深度方向?yàn)闃?biāo)準(zhǔn)層(共18層),時間方向?yàn)?月。

可以看出,任何一條數(shù)據(jù)都具備5種屬性,分別是月份、經(jīng)度、緯度、深度和聲速值,其中前4種用作查詢條件,最后一種作為查詢時返回的結(jié)果。

為清晰體現(xiàn)每一條數(shù)據(jù)包含的信息,可從4種查詢屬性中任選3種建立坐標(biāo)系,在指定另一種屬性查詢值的情況下用圖像進(jìn)行描述。以指定月份(假設(shè)為6月份)的情況為例,可將其柵格化后表示在如圖1所示的空間中,圖1中每一個點(diǎn)表示一條數(shù)據(jù),每條數(shù)據(jù)都體現(xiàn)了經(jīng)度、緯度、深度和聲速值的信息。例如A點(diǎn)處所對應(yīng)的那條數(shù)據(jù)可記為(LoA,LaA,6,SD3,1 500.00),表示位于經(jīng)度LoA、緯度LaA、6月、標(biāo)準(zhǔn)層深度3處的聲速值為1 500.00 m/s。圖2則是同一條數(shù)據(jù)在固定緯度時的情況。

圖1 固定月份時數(shù)據(jù)的空間分布

圖2 固定緯度時數(shù)據(jù)的空間分布

1.2 數(shù)據(jù)使用特點(diǎn)

在廣泛使用的如SQL Server等第三方數(shù)據(jù)庫軟件中,一張表中各條數(shù)據(jù)之間的關(guān)系是平行的[7-8],也就是說在其生成的數(shù)據(jù)文件中各條數(shù)據(jù)是簡單堆積在一起的,并未進(jìn)行排序。這導(dǎo)致在執(zhí)行查詢操作時只能將數(shù)據(jù)文件中包含的全部數(shù)據(jù)逐條與查詢條件進(jìn)行比對,其得出結(jié)果的運(yùn)算速度自然較慢。

同時,在實(shí)際使用聲速剖面數(shù)據(jù)庫時,用戶的需求必定是某月份、某經(jīng)緯度處由18個標(biāo)準(zhǔn)深度層上的聲速組成的聲速剖面,而對SQL Server等數(shù)據(jù)庫軟件提供的其他功能并不關(guān)心。因此,可以考慮不依托第三方數(shù)據(jù)庫軟件,按照一定格式或規(guī)則自主生成數(shù)據(jù)文件,并根據(jù)這一規(guī)則設(shè)計(jì)數(shù)據(jù)存取接口,這樣一方面可以提高運(yùn)算速度,另一方面也極大的增強(qiáng)了數(shù)據(jù)文件和存取接口在不同平臺之間的可移植性,特別是像Vx Works這種不支持第三方軟件的操作系統(tǒng)[9-10]。

1.3 設(shè)計(jì)數(shù)據(jù)文件格式

針對用戶對聲速剖面數(shù)據(jù)庫的實(shí)際需求和使用特點(diǎn),在設(shè)計(jì)數(shù)據(jù)文件格式時,應(yīng)考慮排序問題。即,在生成數(shù)據(jù)文件時,應(yīng)當(dāng)已按一定規(guī)則完成了排序工作。觀察每條數(shù)據(jù),可發(fā)現(xiàn)4種查詢條件都可以用數(shù)值表示的特點(diǎn),因此可考慮將聲速值分屬性按數(shù)值大小進(jìn)行排序后依次拼接形成數(shù)據(jù)文件,流程如圖3所示。

圖3 數(shù)據(jù)文件生成流程

按圖3所示流程生成的數(shù)據(jù)文件中,除空格外,全是聲速值數(shù)據(jù),沒有了其他的屬性,大大減少了數(shù)據(jù)文件的體積,并具備自身的規(guī)律:從文件開始處,每個數(shù)(如1 503.78)由4位整數(shù)部分、一個小數(shù)點(diǎn)和2位小數(shù)部分組成,其后緊跟一個空格符,以方便在讀取時斷字;從文件開始處,每連續(xù)18個數(shù)可視為一組,用以匹配用戶一次查詢的查詢結(jié)果;從文件開始處,每18×12個數(shù)據(jù)表示的是某經(jīng)緯度處1~12月的全部聲速剖面,組序號除以12的余數(shù)r表示該組18個聲速值組成的聲速剖面是r月份的;從文件開始處,每N×18×12個數(shù)表示的是某經(jīng)度上,柵格中從最低緯度(La1)到最高緯度(LaN)處1~12月的全部聲速剖面。

2 數(shù)據(jù)存取方法

數(shù)據(jù)文件生成后,需根據(jù)其數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)對應(yīng)的數(shù)據(jù)存取接口。

2.1 數(shù)據(jù)查詢接口設(shè)計(jì)

根據(jù)生成數(shù)據(jù)文件的格式及數(shù)據(jù)規(guī)律,可發(fā)現(xiàn)得到的查詢結(jié)果應(yīng)該是從文件中某一位置開始的連續(xù)18個數(shù)值,也就是說,確定了開始進(jìn)行連續(xù)讀取的指針位置,也就唯一確定了查詢操作的返回值。針對任意的查詢條件(Loi,Laj,Monthk),在數(shù)據(jù)文件中對應(yīng)的開始讀取的指針位置PPos應(yīng)該滿足下式:

PPos=8×[(Loi-Lo1)×1×N×12×18+ (Loi-Lo1)×1×12×18+(Monthk-1)×1×18]

其中,Loi和La1分別表示數(shù)據(jù)文件覆蓋海域的最小經(jīng)度和最小緯度,N表示柵格化后緯度方向上數(shù)據(jù)的跨度。(Loi-Lo1)×N×12×18×1表示由查詢經(jīng)度引入的指針偏移量,(Loi-Lo1)表示的是查詢經(jīng)度和起始經(jīng)度之差,乘以1是因?yàn)閿?shù)據(jù)精度在經(jīng)度方向上為1°,乘以N是因?yàn)樵诿恳粋€經(jīng)度上都有N種緯度不同的數(shù)據(jù),乘以12是因?yàn)樵诿恳粋€確定的經(jīng)緯度上都有12月的數(shù)據(jù),乘以18是因?yàn)槊拷M返回?cái)?shù)據(jù)都由18個連續(xù)的聲速值數(shù)據(jù)組成。同理,(Laj-La0) ×1×12×18表示由查詢緯度引入的指針偏移量,(Monthk-1) ×1×18表示由查詢月份引入的指針偏移量。PPos取3種偏移量之和乘以8是因?yàn)槊總€數(shù)據(jù)在數(shù)據(jù)文件中占8位。

例如,查詢圖4中P1位置處3月份的聲速剖面,開始進(jìn)行讀取操作的文件指針位置PPos=8×(2×1×N×12×18 + 1×1×12×18 + 2×1×18),而對應(yīng)P2位置處6月份的情況,PPos=8×((M-1)×1×N×12×18 + (N-1)×1×12×18 + 5×1×18)。

圖4 數(shù)據(jù)查詢示意圖

設(shè)計(jì)對應(yīng)的數(shù)據(jù)查詢流程如圖5所示。

2.2 數(shù)據(jù)修改接口設(shè)計(jì)

若需要對數(shù)據(jù)庫中(Loi,Laj,Monthk)處的數(shù)據(jù)進(jìn)行修改,可按上一節(jié)的方法先求得文件指針位置PPos,然后刪除緊接下來的8×18位,再將18個修改值按由淺至深的順序依次插入即可。

3 性能分析

按自定義格式生成數(shù)據(jù)文件并確定了存取接口后,使用i5-2300CPU、2GB內(nèi)存的PC機(jī)對一塊55°×55°的方形海域分別使用SQL Server和自建數(shù)據(jù)庫進(jìn)行性能對比測試。

測試內(nèi)容:生成的數(shù)據(jù)文件體積比較;淺海(海深小于100 m,124°E-30°N-5月)讀取速度比較;深海(125°E-22°N-1月)讀取速度比較。測試結(jié)果如表1所示,二者使用相同的繪制接口,查詢結(jié)果相同(因數(shù)據(jù)源相同),均如圖6所示。

圖5 數(shù)據(jù)查詢流程

表1 測試結(jié)果

圖6 淺海、深海查詢結(jié)果

從表1中可看出,自建庫文件體積遠(yuǎn)遠(yuǎn)小于包含相同內(nèi)容的SQL Server MDF文件,且運(yùn)算速度在淺海條件下提高了至少5個數(shù)量級,在深海條件下更是提高了至少6個數(shù)量級。這樣的速度優(yōu)勢使得在一些對實(shí)時性要求較高而SQL Server等第三方數(shù)據(jù)庫軟件無法滿足的情況下,自建庫完全可作為替代品。

4 數(shù)據(jù)使用

4.1 問題描述與方法分析

前幾節(jié)介紹了自定義數(shù)據(jù)庫,并分別通過在淺海和深海條件下的查詢進(jìn)行了簡要的性能分析。值得注意的是,上述分析中使用的查詢位置在數(shù)據(jù)庫中均有對應(yīng)的數(shù)據(jù)(如圖7中P1點(diǎn)),當(dāng)查詢位置處在數(shù)據(jù)庫中無現(xiàn)成數(shù)據(jù)時,需要將查詢位置周圍的現(xiàn)有數(shù)據(jù)進(jìn)行同化處理后再作為查詢值返回,圖7描述了這一問題。

圖7 數(shù)據(jù)查詢示意圖

解決這一類問題一般有兩種方法:一種是先插值后平均,即先將查詢點(diǎn)附近每個平面點(diǎn)上的數(shù)據(jù)插值到整個海深范圍內(nèi),得到P個聲速剖面,再將這些剖面按一定算法平均到查詢點(diǎn)處;另一種是先平均后插值,即先將查詢點(diǎn)附近P個平面點(diǎn)上的數(shù)據(jù)按一定算法平均到查詢點(diǎn)處,得到查詢點(diǎn)處標(biāo)準(zhǔn)層深度上的聲速值,再將其插值到整個海深范圍內(nèi),得到查詢點(diǎn)處的聲速剖面。

因?yàn)閿?shù)據(jù)庫中的記錄是按數(shù)據(jù)精度柵格化的,而查詢位置在數(shù)據(jù)范圍內(nèi)可認(rèn)為是隨機(jī)的,所以查詢點(diǎn)與周圍柵格上數(shù)據(jù)點(diǎn)的距離在絕大多數(shù)情況下是不同的,那么查詢點(diǎn)處的聲速剖面受周圍不同柵格點(diǎn)上數(shù)據(jù)的影響也應(yīng)該是不同并且與距離相關(guān)的,因此可考慮使用反距離加權(quán)平均法。

假設(shè)查詢點(diǎn)位置與柵格上各數(shù)據(jù)位置之間距離為Ri,i∈[1,2,…,P],距離之和R=∑Ri,那么各權(quán)值wi可表示為

查詢點(diǎn)返回的數(shù)據(jù)D=∑wiDi,其中Di表示周圍第i條數(shù)據(jù)記錄的聲速值。

4.2 實(shí)例分析

為驗(yàn)證上述方法在工程實(shí)踐中的可行性并對誤差大小進(jìn)行分析,現(xiàn)將原始數(shù)據(jù)精度在經(jīng)度和緯度方向上降低一倍,再將查詢條件設(shè)置在某個由于降低精度而去掉的柵格點(diǎn)上,將插值得到的數(shù)據(jù)與原始數(shù)據(jù)進(jìn)行對比,分析上一節(jié)提出的方法在精確度上的誤差。

查詢條件依舊設(shè)置為125°E、22°N、1月,取降低精度后的數(shù)據(jù)庫中周圍4點(diǎn)數(shù)據(jù)進(jìn)行同化處理。分別按照先平均后插值和先插值后平均兩種方式進(jìn)行的數(shù)據(jù)同化結(jié)果如圖8所示,誤差如圖9所示,主要性能指標(biāo)對比如表2所示。

圖8 數(shù)據(jù)同化結(jié)果

圖9 同化誤差

表2 主要性能對比

從圖8和圖9中可以看出:整體上,兩種方法得到的結(jié)果與原始數(shù)據(jù)均能夠較好的貼合,能夠很好的體現(xiàn)出聲速隨深度的變化趨勢。同化誤差方面,先平均后插值方法的結(jié)果整體偏小,先插值后平均方法的結(jié)果整體偏大,但兩種方法的誤差均較小,最大時也在±0.07%以內(nèi)(絕對誤差0.96,原數(shù)據(jù)大于1 500),先平均后插值方法的誤差則更是始終保持在±0.05%以內(nèi),因此可認(rèn)為將這兩種方法用于水平方向的數(shù)據(jù)同化是可行的。

細(xì)節(jié)上,雖然經(jīng)過了平均計(jì)算,但兩種方法也都能保留一些原數(shù)據(jù)的特點(diǎn),例如在10 m、47 m和75 m附近這種原數(shù)據(jù)有較大變化的位置,也能夠體現(xiàn)出波動和“拐彎”等細(xì)節(jié)信息。海深150m以上時,先平均后插值方法的效果較好,而150 m以下時,先插值后平均方法的效果則更勝一籌。

從表2可以看出,先插值后平均方法耗時約為先平均后插值方法的4倍,這是因?yàn)榈贸鼋Y(jié)果所需要的運(yùn)算中,最耗時的就是長度300 m的插值運(yùn)算,而先插值后平均方法進(jìn)行了4次,先平均后插值方法則只進(jìn)行了一次。此外,加權(quán)平均運(yùn)算先插值后平均方法進(jìn)行了300次,而先平均后插值方法只進(jìn)行了16次,由于該運(yùn)算耗時很短,對總耗時的貢獻(xiàn)并不大。

總體來看,兩種方法的計(jì)算精度都可以控制在0.1%以內(nèi),運(yùn)算總耗時也都在130 ms以內(nèi),完全能夠在實(shí)時性要求較高的環(huán)境下使用。

5 結(jié)論

本文針對海洋聲速剖面的數(shù)據(jù)特點(diǎn)和使用特點(diǎn),設(shè)計(jì)了一種新的數(shù)據(jù)存儲格式并生成了數(shù)據(jù)文件,同時根據(jù)該格式建立了相應(yīng)的數(shù)據(jù)查詢、修改接口;針對聲速剖面查詢,實(shí)現(xiàn)了SQL Server等常用數(shù)據(jù)庫所具備的功能,并在數(shù)據(jù)文件體積和查詢速度上實(shí)現(xiàn)了巨大的提升,為該類型數(shù)據(jù)在實(shí)時性要求較高的系統(tǒng)中使用提供了技術(shù)支撐。

[1] 孫杰,董楠.淺海聲速剖面類型對水下聲傳播的影響研究[J].環(huán)境工程,2013,31(7):736-738.

[2] 祝捍皓,張海剛,劉偉,等.聲速剖面對淺海波導(dǎo)頻散特性的影響研究[J].聲學(xué)技術(shù),2013,32(6):67-68.

[3] 高飛,潘長明,李勝全,等.聲躍層控制聲線傳播彎曲模型的構(gòu)建[J].海洋測繪,2014,34(2):21-24.

[4] URICK R J.Principles of Underwater Sound[M].New York:McGraw-Hili,1975.

[5] JENSEN F B,KUPERMAN W A,PORTER M B,et al.Computational Ocean Acoustics[M].2nd ed.New York:Springer,2011.

[6] GB/T12763.7-2007,海洋調(diào)查規(guī)范[S].

[7] 陳瀟.SQLServer2008數(shù)據(jù)庫存儲過程的應(yīng)用[J].軟件工程師,2015,18(6):18-19.

[8] 陳波,周月陽.基于Delphi和SQL Server的能耗監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].四川兵工學(xué)報(bào),2014,35(1):104-106.

[9] 李杰,李亞文,張鎖平,等.實(shí)時操作系統(tǒng)VxWorks在海洋觀測系統(tǒng)的應(yīng)用[J].海洋技術(shù)學(xué)報(bào),2014,33(6):118-122.

[10]張萬緒,劉雷,揚(yáng)威,等.基于VxWorks的航空機(jī)電自動測試系統(tǒng)、通信機(jī)制[J].西北大學(xué)學(xué)報(bào),2014,44(6):886-889.

(責(zé)任編輯周江川)

Research On Fast Access Technique of Sound Speed Profile Database

ZHAN He1,2,JIN Zhong-yuan1,YANG Ri-jie1

(1.Naval Aeronautics and Astronautics University, Yantai 264001, China; 2.The No.92074thTroop of PLA, Ningbo 315020, China)

Acoustic signal propagation in sea was influenced by sound speed profile, which was usually obtained from database.Since third party database software, like SQL Server, can not meet the specification of real-time, new data format of database files was designed, so was the access interface.The new format was created based on the feature of sound speed profile data itself and the characteristics of utilizing it.Test result shows that the size of data files is sharply decreased and the access speed is greatly increased.

sound speed profile; database; fast access technique

2016-08-19;

國家自然科學(xué)基金資助項(xiàng)目(61271444)

戰(zhàn)和(1984—),男,博士研究生,主要從事水聲工程研究。

10.11809/scbgxb2016.12.003

戰(zhàn)和,金中原,楊日杰.海洋聲速剖面數(shù)據(jù)庫的快速存取技術(shù)研究[J].兵器裝備工程學(xué)報(bào),2016(12):13-17.

format:ZHAN He,JIN Zhong-yuan,YANG Ri-jie.Research On Fast Access Technique of Sound Speed Profile Database[J].Journal of Ordnance Equipment Engineering,2016(12):13-17.

TB566

A

2096-2304(2016)12-0013-05

修回日期:2016-10-08

猜你喜歡
數(shù)據(jù)文件經(jīng)度聲速
火箭起飛和跨聲速外載荷辨識方法
對時差計(jì)算方法的探討
聲速剖面未知條件下的平均聲速計(jì)算方法?
基于表空間和數(shù)據(jù)文件探討MIS中數(shù)據(jù)庫架構(gòu)設(shè)計(jì)
聲速表中的貓膩
聲速是如何測定的
基于網(wǎng)絡(luò)環(huán)境的社區(qū)協(xié)同辦公問題探討(二)
氣象數(shù)據(jù)文件異機(jī)備份程序淺析
巧用規(guī)律妙解“日期變更題”
如何計(jì)算地方時