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

?

海洋水文氣象數(shù)據(jù)管理系統(tǒng)的模塊化設(shè)計(jì)與實(shí)現(xiàn)*

2015-11-16 09:07李博王斌葉穎王鵬孫成龍閆秦
海洋開發(fā)與管理 2015年4期
關(guān)鍵詞:數(shù)據(jù)表數(shù)據(jù)管理觀測(cè)

李博,王斌,葉穎,王鵬,孫成龍,閆秦

(國(guó)家海洋技術(shù)中心 天津 300112)

1 引言

海洋環(huán)境預(yù)報(bào)事業(yè)是一項(xiàng)社會(huì)公益性事業(yè),對(duì)促進(jìn)海洋經(jīng)濟(jì)發(fā)展、保障沿海地區(qū)人民群眾的生命財(cái)產(chǎn)安全具有重要的意義。海洋環(huán)境預(yù)報(bào)離不開觀測(cè)數(shù)據(jù)的支持,海洋觀測(cè)數(shù)據(jù)具有實(shí)時(shí)性和連續(xù)性要求高,需要長(zhǎng)期觀測(cè)等特點(diǎn)[1]。因此,快速、有效、準(zhǔn)確地對(duì)觀測(cè)到的海洋水文、氣象數(shù)據(jù)進(jìn)行存儲(chǔ)、處理就尤為重要。目前,我國(guó)海洋水文氣象觀測(cè)數(shù)據(jù)在管理和使用上存在數(shù)據(jù)共享機(jī)制不健全、沒有統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)管理方式不合理等問題[2]。這些問題嚴(yán)重地影響了觀測(cè)數(shù)據(jù)的質(zhì)量,并影響到海洋災(zāi)害預(yù)報(bào)的準(zhǔn)確性。

為此,本研究提出了基于SQL Server的數(shù)據(jù)庫(kù)設(shè)計(jì)方案,通過對(duì)數(shù)據(jù)庫(kù)的級(jí)聯(lián)更新等實(shí)現(xiàn)了數(shù)據(jù)分級(jí)存儲(chǔ),提高了數(shù)據(jù)管理效率。同時(shí),利用UML建立系統(tǒng)模型,將數(shù)據(jù)管理模塊設(shè)計(jì)為一個(gè)獨(dú)立的模塊,提高數(shù)據(jù)管理的獨(dú)立性。

2 系統(tǒng)分析與設(shè)計(jì)

2.1 系統(tǒng)需求概述

根據(jù)《GBT 14914-2006 海濱觀測(cè)規(guī)范》,氣象觀測(cè)要素主要有:風(fēng)速、風(fēng)向、相對(duì)濕度、氣溫、氣壓、降雨量和能見度等。水文觀測(cè)要素主要有:表層海水溫度、表層海水鹽度和潮汐等。其中,水文要素、氣象要素分別以北京時(shí)間24 時(shí)(不含24時(shí))和20時(shí)(不含20時(shí))為日界。

因此,海洋站水文氣象自動(dòng)觀測(cè)系統(tǒng)主要完成對(duì)多種來源、多種時(shí)相、多種精確度的海洋水文氣象基礎(chǔ)數(shù)據(jù)進(jìn)行有效存儲(chǔ)與管理,構(gòu)建包含實(shí)時(shí)數(shù)據(jù)、歷史數(shù)據(jù)、整點(diǎn)數(shù)據(jù)的綜合性數(shù)據(jù)存儲(chǔ)系統(tǒng)[3]。通過該數(shù)據(jù)管理系統(tǒng)既可實(shí)現(xiàn)將觀測(cè)數(shù)據(jù)上傳至各級(jí)海洋環(huán)境預(yù)報(bào)部門,又可滿足海洋臺(tái)站本地使用??紤]到系統(tǒng)的模塊化設(shè)計(jì),還要為數(shù)據(jù)管理系統(tǒng)留有對(duì)外可進(jìn)行二次編程的接口(圖1)。

圖1 海洋水文氣象數(shù)據(jù)管理系統(tǒng)用例分析

2.2 數(shù)據(jù)多重存儲(chǔ)和分級(jí)管理

數(shù)據(jù)多重存儲(chǔ)體現(xiàn)在同一數(shù)據(jù)既要存儲(chǔ)到本地?cái)?shù)據(jù)庫(kù)中又要存儲(chǔ)到相應(yīng)的文件中。存儲(chǔ)在本地?cái)?shù)據(jù)庫(kù)中的數(shù)據(jù)即可用于本地管理與存儲(chǔ),也可用于數(shù)據(jù)的查找和對(duì)外提供二次開發(fā)接口。存儲(chǔ)在文件中的數(shù)據(jù)以文本文件的格式被傳輸至海洋環(huán)境預(yù)報(bào)單位[4]。

數(shù)據(jù)分級(jí)管理主要體現(xiàn)在數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)上。將水文、氣象觀測(cè)數(shù)據(jù)進(jìn)行分級(jí)存儲(chǔ),分為臨時(shí)數(shù)據(jù)存儲(chǔ)表和最終數(shù)據(jù)存儲(chǔ)表。臨時(shí)存儲(chǔ)表中存儲(chǔ)當(dāng)前小時(shí)進(jìn)入數(shù)據(jù)管理系統(tǒng)的數(shù)據(jù),并在后續(xù)小時(shí)數(shù)據(jù)進(jìn)入系統(tǒng)后將臨時(shí)數(shù)據(jù)表中數(shù)據(jù)打包插入最終數(shù)據(jù)表中。臨時(shí)數(shù)據(jù)表限定數(shù)據(jù)量閾值,超過設(shè)定閾值后臨時(shí)數(shù)據(jù)表數(shù)據(jù)將被自動(dòng)刪除。最終數(shù)據(jù)表每個(gè)觀測(cè)要素一個(gè)表,記錄該數(shù)據(jù)當(dāng)天數(shù)據(jù),包括該要素當(dāng)天各整點(diǎn)數(shù)據(jù)值、數(shù)據(jù)極值和當(dāng)天每分鐘的數(shù)據(jù)值。

2.3 系統(tǒng)功能模塊設(shè)計(jì)

根據(jù)觀測(cè)數(shù)據(jù)使用對(duì)象的不同[5],將系統(tǒng)進(jìn)行模塊化設(shè)計(jì)為:數(shù)據(jù)上傳模塊和本地?cái)?shù)據(jù)管理模塊。數(shù)據(jù)上傳模塊將實(shí)時(shí)觀測(cè)數(shù)據(jù)上傳至海洋環(huán)境預(yù)報(bào)單位;本地?cái)?shù)據(jù)管理模塊用于海洋觀測(cè)站本地?cái)?shù)據(jù)管理與存儲(chǔ),并對(duì)外提供二次開發(fā)接口。此外,該模塊可根據(jù)業(yè)務(wù)需求生成數(shù)據(jù)上傳模塊所用的數(shù)據(jù)文件。系統(tǒng)結(jié)構(gòu)類見圖2。

圖2 海洋水文氣象數(shù)據(jù)管理系統(tǒng)結(jié)構(gòu)類圖

2.4 軟件開發(fā)環(huán)境

針對(duì)上述業(yè)務(wù)需求,采用了Visual Studio C#2010 作為軟件開發(fā)平臺(tái),數(shù)據(jù)庫(kù)系統(tǒng)采用SQL Server 2005。其中,Visual Studio C#2010是一種現(xiàn)代的完全面向?qū)ο蟮某绦蜷_發(fā)語言,它使得程序員能夠在新的微軟.NET 平臺(tái)上快速開發(fā)種類豐富的應(yīng)用程序。.NET 平臺(tái)提供了大量的工具和服務(wù),能夠最大限度地發(fā)掘和使用計(jì)算及通信能力[6]。

SQL Server 2005 能提供大型系統(tǒng)所需的數(shù)據(jù)庫(kù)服務(wù),可實(shí)現(xiàn)成千上萬的用戶同時(shí)連接。SQL Server 2005 為這樣的環(huán)境提供了全面的保護(hù),具有防止問題發(fā)生的安全措施,可在多個(gè)用戶之間有效地分配可用資源。此外,還可以在一臺(tái)計(jì)算機(jī)上運(yùn)行多個(gè)SQL Server 2005 實(shí)例[7]。

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

3.1 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)

海洋站水文氣象觀測(cè)數(shù)據(jù)要在海洋觀測(cè)站、海洋中心站、海區(qū)預(yù)報(bào)中心及國(guó)家預(yù)報(bào)中心等各單位使用,其中:海洋觀測(cè)站端僅使用本站數(shù)據(jù);海洋中心站使用本中心站下屬各海洋站數(shù)據(jù);海區(qū)預(yù)報(bào)中心使用本海區(qū)下屬各海洋站數(shù)據(jù);國(guó)家預(yù)報(bào)中心使用所有海洋站的數(shù)據(jù)。這些數(shù)據(jù)是連續(xù)不間斷產(chǎn)生和使用的。因此,在建立海洋站水文氣象數(shù)據(jù)庫(kù)時(shí),必須考慮大規(guī)模數(shù)據(jù)的存儲(chǔ)問題。在建立數(shù)據(jù)庫(kù)的同時(shí),構(gòu)建出符合海洋觀測(cè)預(yù)報(bào)業(yè)務(wù)的數(shù)據(jù)模型,設(shè)計(jì)了水文要素臨時(shí)數(shù)據(jù)表(tempdata_sw 表)、氣象要素臨時(shí)數(shù)據(jù)表(tempdata_qx 表)和風(fēng)要素臨時(shí)存儲(chǔ)表(tempdata_wi表)、風(fēng)要素?cái)?shù)據(jù)存儲(chǔ)表(WI表)、相對(duì)濕度數(shù)據(jù)存儲(chǔ)表(HU 表)、氣溫?cái)?shù)據(jù)存儲(chǔ)表(AT表)、氣壓數(shù)據(jù)存儲(chǔ)表(BP 表)、降雨量數(shù)據(jù)存儲(chǔ)表(RN 表)、能見度數(shù)據(jù)存儲(chǔ)表(VB 表)、海水溫度數(shù)據(jù)存儲(chǔ)表(WT 表)、海水鹽度數(shù)據(jù)存儲(chǔ)表(SL表)、潮位數(shù)據(jù)存儲(chǔ)表(WL 表)等多個(gè)表格。其中,臨時(shí)表每個(gè)要素每小時(shí)1 行數(shù)據(jù),用于存放近3d每分鐘生成的實(shí)時(shí)數(shù)據(jù)。數(shù)據(jù)存儲(chǔ)表每個(gè)要素每天1 行數(shù)據(jù),用于存放整點(diǎn)值數(shù)據(jù)、極值數(shù)據(jù)以及該天每分鐘數(shù)據(jù)(表1至表5)。

表1 tempdata_sw表

續(xù)表

表2 tempdata_qx表

表3 tempdata_wi表

表4 氣溫?cái)?shù)據(jù)存儲(chǔ)表(AT表)

表5 海水溫度數(shù)據(jù)存儲(chǔ)表(WT 表)

以上5個(gè)表為數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)所需的表,其中表1至表3為臨時(shí)數(shù)據(jù)存儲(chǔ)表,表4為氣象要素?cái)?shù)據(jù)表、表5 為水文要素?cái)?shù)據(jù)表,其余水文氣象要素?cái)?shù)據(jù)正式表的表結(jié)構(gòu)與表4和表5結(jié)構(gòu)一致。此外,風(fēng)要素表結(jié)構(gòu)中DataXX 為風(fēng)向值與風(fēng)速值的組合,即“風(fēng)向值 風(fēng)速值”。

3.2 系統(tǒng)程序?qū)崿F(xiàn)與運(yùn)行結(jié)果

3.2.1 數(shù)據(jù)庫(kù)觸發(fā)器設(shè)計(jì)

結(jié)構(gòu)化查詢語言Structure Query Language(SQL)是專門為數(shù)據(jù)庫(kù)建立的操作命令集,是一種功能齊全的數(shù)據(jù)庫(kù)語言。SQL 主要由兩部分組成:DDL(Data Definition Language)和DML(Data Manipulation Language)。其中,DDL 是建立數(shù)據(jù)庫(kù)表及列的指令群,DML 是操作數(shù)據(jù)庫(kù)記錄的指令群。以下SQL 語句實(shí)現(xiàn)了海洋水文氣象數(shù)據(jù)庫(kù)觸發(fā)器的設(shè)計(jì)。

create trigger tri_sw//更改水文各要素整點(diǎn)值,以潮位要素為例。

on tempdata_sw

for update

if update(m00)

begin

update WL set wdXX=i.m00where zh=i.zh and type=’WL’and date=i.sdate+’XX’

end

上述程序以潮位(WL)數(shù)據(jù)為例,實(shí)現(xiàn)了水文要素的數(shù)據(jù)臨時(shí)表向正式表的級(jí)聯(lián)更新。其中,水文要素?cái)?shù)據(jù)更新為本時(shí)刻00 分?jǐn)?shù)據(jù)到正式表本小時(shí)的更新。

3.2.2 程序設(shè)計(jì)及運(yùn)行結(jié)果

根據(jù)上述業(yè)務(wù)需求,對(duì)數(shù)據(jù)管理模塊(表6)進(jìn)行了程序開發(fā),設(shè)計(jì)實(shí)現(xiàn)了以下幾個(gè)程序?qū)ν庹{(diào)用的接口。

表6 水文氣象數(shù)據(jù)管理模塊情況

利用以上函數(shù)接口,實(shí)現(xiàn)了水文氣象數(shù)據(jù)管理,并被海洋站上位機(jī)軟件調(diào)用,完成了海洋站水文氣象數(shù)據(jù)的管理。

4 結(jié)束語

系統(tǒng)利用數(shù)據(jù)庫(kù)技術(shù)和面向?qū)ο蠹夹g(shù),整合現(xiàn)有觀測(cè)設(shè)備的數(shù)據(jù)類型,實(shí)現(xiàn)了海洋觀測(cè)數(shù)據(jù)的自動(dòng)化管理,有效降低了海洋觀測(cè)系統(tǒng)的管理成本,同時(shí)系統(tǒng)為海洋觀測(cè)數(shù)據(jù)的模塊化管理和使用提供了對(duì)外接口。實(shí)現(xiàn)了海洋水文氣象觀測(cè)數(shù)據(jù)的模塊化和業(yè)務(wù)化應(yīng)用,為進(jìn)一步提高海洋觀測(cè)預(yù)報(bào)的精細(xì)化水平,更好服務(wù)于海洋經(jīng)濟(jì)發(fā)展管理的支持能力奠定了基礎(chǔ)。

[1]秦明慧,李平,戴永壽,等.海洋臺(tái)站數(shù)據(jù)管理及動(dòng)態(tài)發(fā)布系統(tǒng)的設(shè)計(jì)[J].海洋預(yù)報(bào),2010,27(3):66-71.

[2]吳向榮,陳宇東,李郅明,等.海洋臺(tái)站觀測(cè)數(shù)據(jù)生成環(huán)節(jié)及質(zhì)控分析[J].海洋開發(fā)與管理,2014,31(4):34-37.

[3]中國(guó)國(guó)家標(biāo)準(zhǔn)化委員會(huì).GB/T14914—2006海濱觀測(cè)規(guī)范[S].2006.

[4]林春梅,余麒祥,曹宇峰,等.淺談海洋臺(tái)站工作的管理[J].海洋開發(fā)與管理,2013,30(4):44-47.

[5]俞永慶.自動(dòng)海洋氣象監(jiān)測(cè)數(shù)據(jù)庫(kù)及其Web開發(fā)應(yīng)用[J].海洋預(yù)報(bào),2006,23(1):81-84.

[6]劉維學(xué).SQL Server查詢優(yōu)化器原理與優(yōu)化實(shí)力分析[J].計(jì)算機(jī)技術(shù)與發(fā)展,2013,23(11):108-111.

[7]劉維學(xué),喬麗平.SQL Server數(shù)據(jù)庫(kù)DML觸發(fā)器的研究與應(yīng)用[J].計(jì)算機(jī)技術(shù)與發(fā)展,2013,23(11):66-69.

猜你喜歡
數(shù)據(jù)表數(shù)據(jù)管理觀測(cè)
企業(yè)級(jí)BOM數(shù)據(jù)管理概要
定制化汽車制造的數(shù)據(jù)管理分析
海洋環(huán)境數(shù)據(jù)管理優(yōu)化與實(shí)踐
CTCS-2級(jí)報(bào)文數(shù)據(jù)管理需求分析和實(shí)現(xiàn)
湖北省新冠肺炎疫情數(shù)據(jù)表(2.26-3.25)
湖北省新冠肺炎疫情數(shù)據(jù)表
天文動(dòng)手做——觀測(cè)活動(dòng)(21) 軟件模擬觀測(cè)星空
基于列控工程數(shù)據(jù)表建立線路拓?fù)潢P(guān)系的研究
2018年18個(gè)值得觀測(cè)的營(yíng)銷趨勢(shì)
可觀測(cè)宇宙