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

改進型實時氣象資料處理系統的設計與實現

2012-11-30 03:19:24薛建軍杜景林
計算機工程與設計 2012年4期
關鍵詞:數據庫系統

薛建軍,周 杰,杜景林

(南京信息工程大學 電子與信息工程學院,江蘇 南京210044)

0 引 言

氣象數據是氣象信息系統 (氣象信息共享平臺)核心和基本組成部分,也是氣象信息系統提供服務的主要內容[1]。國家氣象事業發展規劃 (2000-2015)指出要求擴建實時氣象資料數據庫,建設地市級以上的適應短期氣候預測的歷史資料業務數據庫和氣象服務數據庫系統。目前,各相關單位也廣泛開展了實時氣象資料數據庫系統的建設工作。

按時效不同,可把氣象信息化資料分為實時資料和非實時資料。實時氣象資料指的是通過觀測或加工所得到的在較短時間內進行傳輸并使用的資料。這類資料的處理要求迅速、及時,主要通過計算機程序控制,把從傳輸系統接收的資料進行識別、分析、加工處理、質量控制、存儲備份等[2-3]。傳統的實時氣象資料處理系統大多針對單類資料專一處理,不能同時綜合處理多種實時資料。系統獲得單類 (單個)資料之后進行操作,任務完后才能使程序響應其他資料處理和用戶操作,不同的資料處理軟件一般使用各自獨立的數據庫系統。因此,不同類別的資料處理需要安裝配置各自對應的處理軟硬件系統,部署成本比較高,占用較多的網絡和數據庫資源,設備利用不充分,處理效率低下,不能很好滿足氣象數據實時采集與處理要求。此外,多種不同大小和類型處理系統的相對獨立存在不便于數據的集中控制和管理,不易為業務平臺和氣象數據的研究提供統一的數據支持和服務。為改善這種情況,本文設計并實現了改進型的實時氣象資料處理系統。該系統采用文中提出的實時與非確定時的資料處理策略,利用多線程技術設計開發了實時氣象資料綜合處理業務軟件,采用基于Oracle11g和SLES11專有數據庫服務器進行數據存儲和管理。系統實現了多種實時氣象資料綜合、高效加工處理以及海量氣象數據高性能存儲和管理,為構建良好的實時數據庫系統提供了一種有效的解決方案。

1 實時氣象資料處理研究

1.1 實時與非確定時策略

實時氣象資料的處理策略在本系統中至關重要,它會影響整個系統的數據處理的性能。根據實時氣象資料生成的屬性將其分為確定時實時資料和非確定時實時資料。確定時實時資料指的是生成、發布時間一般比較固定的資料,而非確定時實時資料的生成、發布時間就相對隨機,這兩類資料本文采用不同的處理策略。

確定時間生成發布資料獲取時間范圍確定。例如自動站報文每隔6分鐘生成一次,城鎮天氣報文 (168小時)在每日確定的3個時刻各發布一次。處理這類資料是在規定延遲時間內定時啟動程序調用相應線程進行實時處理。

非確定時間生成發布資料的獲取的時間比較隨機。一般取決于地域、季節、氣候等外界因素,資料生成無固定時刻,例如預警信息。在處理這類資料時,系統按照預先設置間隔時間掃描文件。掃描時若有新的待處理資料則主程序給相應的處理程序分配一個線程進行處理。這類資料的處理是在一個相對隨機的時間進行,因此稱非確定時處理。

采取這樣的策略:首先,提高系統的可用性,可以通過設置系統中定時模塊滿足在資料發布業務時效性規程改變情況下不影響系統的使用;其次,優化了系統資源分配,省略了定時發布資料在不必要時間段內的文件掃描,對于非確定時發布資料可以根據地域、季節、氣候等特點設定某些資料的掃描頻率。處理策略流程如圖1所示。

1.2 多線程優化處理

應用程序啟動時操作系統為程序分配內存及其他資源,內存和資源的物理分離叫做進程,是程序在計算機上的一次執行活動。進程可以包含多個線程,線程可以利用進程擁有的資源。線程要比進程小,幾乎不擁有系統資源,線程調度也比進程調度的開銷小。采用線程調度可以提高系統內多個程序間并發執行的效率,從而顯著提高系統資源的利用率和吞吐量。由于線程所需要的內存和程序開銷較小,同時多線程程序具有較高的執行效率,所以在應用程序的編寫過程中經常采用多線程技術來解決相應問題[4-5]。

圖1 處理策略流程

線程機制使系統具有多任務功能,用戶可同時運行多個程序,每個程序中又可以同時運行多個線程[6],這樣多個線程在同一進程中并發執行。在多線程程序中,當一個線程必須等待時,例如CPU在等待外部設備或網絡響應時,CPU可執行其它操作,這樣就大大縮短了程序執行的時間。為了提高氣象資料處理效率可以采用多線程技術,即在同一個程序中同時執行多個任務,將整個任務分成幾個線程,然后讓操作系統同時執行,從而提高程序的執行效率[7-9]。實際應用表明,以線程為單位并行處理氣象資料可以顯著增加系統的吞吐量,明顯縮短處理時間,有效提高CPU等計算機系統關鍵部件的有效使用率。多線程并行效率模型如圖2[10]所示。

圖2 多線程并行效率模型

2 系統設計

2.1 系統業務流程

實時資料處理系統與氣象通信系統、氣象業務平臺緊密耦合。實時氣象資料一般通過氣象部門專用網實時獲取,氣象數據要為氣象業務平臺提供支持。資料處理業務軟件運行在處理平臺上,通過氣象部門內網從資料服務器獲得實時資料源文件,分析處理完成之后存儲到專有數據庫中,為氣象部門提供專業的服務、產品數據支持和信息共享。系統業務統流程如圖3所示。

圖3 系統業務流程

主要流程:①資料獲取,從資料服務器上獲得資料(包括上級部門下發和本單位采集的資料);②資料處理,客戶端業務軟件進行文件級排錯,將正確的源文件根據不同資料類別分別采用實時和非確定的處理策越;③數據存儲,經過業務軟件分析處理、質量控制的數據存儲到服務器端專有數據庫;④數據應用,系統產生的氣象數據分別為各業務平臺和各類用戶提供多樣的數據支持和服務。

2.2 系統總體設計

系統采用客戶/服務器 (C/S)結構,將任務合理分配到客戶端和服務器端,可降低系統的通訊開銷,可充分利用兩端硬件環境的優勢。系統面向相對固定的用戶群,對信息安全的控制能力強[11]。氣象資料處理業務軟件安裝在客戶端運行,氣象數據的存儲和管理在服務器端完成,整個系統部署在氣象部門專有網絡環境中,局域網之間通過專門服務器提供連接和數據交換。資料服務器、處理平臺、數據庫服務器、業務平臺都安裝在氣象部門內網中。實時氣象資料數據不僅為氣象部門各類業務平臺提供數據支持外,也可以為氣象部專門從事歷史數據管理、數據挖掘分析等業務的門內網用戶提供各類業務數據支持,同時外網的不同權限的用戶還可以通過Internet瀏覽、檢索、下載獲取數據信息,享受相應的數據服務。系統網絡拓撲如圖4所示。

2.3 業務軟件設計

軟件采取實時與非確定處理的處理策略和多線程編程技術。能夠并行處理自動站報文、測報月報表、預警信息、臺風報文、城鎮預報、城市短期預報等常見實時報文資料,能夠處理特殊定制需求的雷達、云圖等資料。例如將雷達基數據處理成能與人影業務中GIS平臺無縫對接的柵格數據。軟件主要由系統設置、定時設置、資料處理三大模塊組成。功能結構如圖5所示。

3 系統實現

3.1 業務軟件實現

3.1.1 資料處理線程設計

客戶端業務軟件定時實時處理測報月報表 (A報、B報)、SP和DG、城鎮預報、短時天氣預報這幾類測報和預報產品,非確定時間實時處理預警信號、臺風、自動站實時報文這幾類測報產品和多普勒雷達基數據。一般情況下,創建少數幾個關鍵線程,用它來解決某個特定的問題[12]。所以系統創建10個數據處理子線程進行操作,當程序啟動時讀取INI文件,完成數據庫設置,定時設置,資料路徑設置等初始化工作,創建相應資料處理子程序線程。多線程處理流程如圖6所示。

具體步驟為:①應用程序啟動后,讀取INI初始化,如需更改設置,可在程序運行過程中進行設置,改變的信息寫入INI;②初始化完畢后,系統創建資料處理線程;③線程進入while循環,確定時處理進入休眠—等待狀態,非確定時處理線程掃描INI路徑下文件進入間隔掃描—休眠狀態;④定時喚醒實時處理線程,掃描INI路徑下文件;⑤有新文件,分別進入各自處理函數、分析解析文件、處理入庫,更新日志,修改已處理文件名;⑥如無新文件,進入歷史文件操作函數,處理符合條件的歷史文件;⑦程序重復上述工作;⑧終止線程,程序結束。

圖4 系統網絡拓撲

3.1.2 NET下多線程編程

從本質上和結構來說,.NET是一個多線程的環境。CRL內置支持多線程應用,任何.NET框架下的語言,包括Visual C#在內,實現多線程時不再需要使用Win32API,可直接使用系統類提供的對象和方。在VS2005中實現多線程非常方便,System.Threading命名空間為開發人員提供了多線程編程的類和接口,可直接用它提供的內容建立多線程應用程序。

System.Threading.Thread類可用來創建并控制線程,其定義了多種方法,其中用 Thread.Start()、Thread.Stop ()、Thread.Resume ()、Thread.Abort ()、Thread.Suspend()、Thread.Join()等方法操縱線程,還可通過Thread.Sleep ()、Thread.IsAlive ()、Thread.IsBackground()等方法設置線程狀態。

System.Threading.Thread.Priority枚舉了線程的優先級別,它可以控制線程是否可到CPU時間。高優先級線程通常比低優先級線程優先得到CPU時間,若不止一個高優先級線程,則操作系統將在這些線程間循環分配CPU時間。C#中線程優先級從高到低分為Highest、Above、Normal、Normal、BelowNormal、Lowest 5級[13]。

3.2 數據庫服務器

目前,實時氣象資料呈現幾何級倍率增長,數據在海量存儲備份、查詢檢索效率、多粒度挖掘分析等方面提出更要高的要求。因此要對傳統實時氣象資料數據庫系統在存儲容量、吞吐率、穩定性、安全性、兼容性等關鍵技術指標進行優化。Oracle支持海量數據存儲和管理,其最新發布的Oracle 11g能夠存儲十億數量級的數據,可支撐大型的應用系統,采用了400多項新技術,在更改管理、故障診斷、性能管理、Data Guard管理、存儲管理和數據倉庫等方面有一些重要的創新[14]。Novell其旗下的Linux企業級解決方案產品,提供從桌面到數據中心的企業級應用計算環境安全可靠的基礎,在數據中心、工作組、桌面、安全和身份、以及資源管理等提供構建企業級解決方案所有重要的技術支持和開放標準[15]。SLES系列產品已列入中央國家機關政府集中采購目錄,在國內氣象部門和得到廣泛應用。最新發布的SLES11完善了早期版本的很多功能,新增對Mono擴展的支持對聚類產品High Availability Extension的支持,它能提供更強的虛擬化能力、高可用性集群和更加靈活的維護和支持選項。

使用Oracle大型數據庫,可以滿足海量氣象數據的存儲需求,Oracle的出色性能,極大地提升了系統的數據吞吐量。使用Linux作為服務器的操作系統,提高了整個系統的穩定性[16]。此外,業務軟件綜合處理的多種產品海量數據統一存儲在同構的專一的數據系統中也便于管理和控制。因此采用Oracle11g和SLES11搭建系統專用數據庫服務器符合高性能存儲和管理技術指標和氣象部門業務需求規范。

4 系統運行

使用VS2005集成開發工具,采用C#語言編程開發業務軟件。軟件試運行環境為Windows XP Professional SP3,.NET Framework 2.0,CPU 為Inter (R)Core (TM)2 Duo CPU E7400,內存3.5G。數據庫服務器在IBM X3800 8866-1RC上安裝SLES11企業版和Oracle11g構建。系統采用C/S架構部署在100M局域網內。實際運行表明系統的各項性能良好,滿足實時氣象資料綜合處理的性能要求和海量數據高性能存儲管理的性能指標。客戶端業務軟件主要功能界面如圖7所示,從左向右依次為資料處理界面、系統設置界面、定時設置界面。

圖7 業務軟件主要功能界面

5 結束語

本系統已投入到某市氣象局實際業務應用中,有效的改進了傳統的處理系統,實現了資料的高效率、集成化分析處理,實現了海量實時數據高性能存儲和管理,為業務應用、氣象數據挖掘等提供良好的數據支持,為構建良好實時數據庫系統提供了一個行之有效的方案。同時,系統的設計思想對其他行業海量實時數據的處理也具有參考意義。針對雷達和云圖數據產品過多的問題,軟件的后續版本也將進一步升級,實現更多基數據的定制處理。

[1]ZHAO Fang.Building of meteorological database system [C].Information Technology in Meteorological Field Development and Application,2006:191-194(in Chinese).[趙芳.氣象數據庫系統的建設 [C].2006年中國氣象學會信息技術在氣象領域的開發應用研討會,2006:191-194.]

[2]GAO Feng.The real-time meteorological database subsystem[C].Information Technology in Meteorological Field Development and Application,2006:196-200(in Chinese).[高峰.實時氣象資料數據庫分系統 [C].2006年中國氣象學會信息技術在氣象領域的開發應用研討會,2006:196-200.]

[3]LIU Xu,ZU Xuemei.Analysis on the importance of meteorological information data [J].Forest Investigation Design,2010,37 (3):29-30(in Chinese).[劉旭,祖雪梅.對氣象信息化資料重要性的探析 [J].林業勘查設計,2010,37(3):29-30.]

[4]GAO Shuliang,MA Yufa,YANG Dongkai.Implementation for network communication based on multithread and message[J].Computer Engineering and Design,2008,29 (2):323-325(in Chinese).[高書亮,馬玉發,楊東凱.基于多線程和消息的局域網通信程序實現 [J].計算機工程與設計,2008,29 (2):323-325.]

[5]MIAO Xianglin,WANG Guanhai,SUN Chao,et al.Research and exploitation in multiply threads technology on system of supervising protective information of transformer substation[J].Computer Engineering and Design,2005,26 (3):831-835(in Chinese).[繆相林,王觀海,孫超,等.多線程技術在變電站保護信息監測系統中的應用 [J].計算機工程與設計,2005,26 (3):831-835.]

[6]ZHANG Lineng,ZHANG Bin.Talk about the multi-thread programming on.Net platform [J].China Water Transport(Theory Edition),2006,4 (3):104-105(in Chinese).[張能立,張彬.談談在.Net下的多線程編程 [J].中國水運(理論版),2006,4 (3):104-105.]

[7]PU Chunfen.The practical application of C#background processing and multi-threading technology [J].Journal of Kunming University,2010,32 (3):82-85(in Chinese).[卜春芬.C#后臺處理與多線程技術的應用 [J].昆明學院學報,2010,32 (3):82-85.]

[8]LIU Shuang,SHI Guoyou,ZHANG Yuanqiang.Design and implementation of communication software based on TCP/IP protocol and multi-threading technology [J].Computer Engi-neering and Design,2010,31 (7)1417-1420 (in Chinese).[劉爽,史國友,張遠強.基于TCP/IP協議和多線程的通信軟件的設計與實現 [J].計算機工程與設計,2010,31 (7):1417-1420.]

[9]YANG Kaijie,LIU Qiuju,XU Tingrong.On mutil-thread concurrent control technology for thread pool [J].Computer Applications and Software,2010,27 (1):168-170 (in Chinese).[楊開杰,劉秋菊,徐汀榮.線程池的多線程并發控制技術研究 [J].計算機應用與軟件,2010,27 (1):168-170.]

[10]Josepb Albabari,Ben Albabari.C# 4.0IN A NUTSHELL the definitive reference[M].Sebastopol:O'Reilly Media Inc,2010:873-878.

[11]ZHANG Junping,ZHU Xiaodong.C/S and B/S mixed style and the application [C].First International Workshop on Education Technology and Computer Science,2009:682-686.

[12]GUO Hui.Efficiency of multi-threading [J].Computer Applications,2008,28 (12):141-143(in Chinese). [郭輝.多線程效率 [J].計算機應用,2008,28 (12):141-143.]

[13]Christian Nagel,Bill Evjen,Jay Glynn,et al.Profesional C#2008 [M].LI Ming,transl.Beijing:Tsinghua University Press,2008:483-489 (in Chinese).[Christian Nagel,Bill Evjen,Jay Glynn,等.C#高級編程 [M].李銘,譯.北京:清華大學出版社,2008:483-489.]

[14]Sam R Alapati,Charles Kim.Oracle data base11g:new feature for DBAS and developers[M].ZHONG Ming,WANG Jun,transl.Beijing:Posts & Telecom Press,2009:1-5(in Chinese).[Sam R Alapati,Charles Kim.Oracle數據庫管理藝術11g新特性 [M].鐘鳴,王君,譯.北京:人民郵電出版社,2009:1-5.]

[15]ZOU Zhen.Novell SUSE Linux enterprise officially listed in the central state organs government centralized procurement directory [J].China Government Procurement,2007,7:5-40(in Chinese).[鄒震.Novell SUSE Linux Enterprise正式列入中央國家機關政府集中采購目錄 [J].中國政府采購,2007,7:5-40.]

[16]HUA Liansheng,DING Xiansheng,L Gang.Meteoro-logical data sharing system based on oracle [J].Computer Application,2010,32 (2):162-164(in Chinese)[華連生,丁憲生,呂剛.基于Oracle的氣象數據共享系統 [J].計算機應用,2010,32 (2):162-164.]

猜你喜歡
數據庫系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
主站蜘蛛池模板: 九色视频一区| 自拍中文字幕| 国产美女人喷水在线观看| 国产精品久久久久婷婷五月| 欧美色图第一页| 日韩AV无码免费一二三区 | 久久鸭综合久久国产| 国产91蝌蚪窝| 欧洲亚洲欧美国产日本高清| 制服丝袜无码每日更新| 香蕉eeww99国产精选播放| 天天干天天色综合网| 99re经典视频在线| 日本亚洲欧美在线| 国产精品蜜臀| 成人午夜天| 午夜啪啪福利| 欧美精品另类| 漂亮人妻被中出中文字幕久久| 在线观看国产小视频| 亚洲精品免费网站| 国产精品内射视频| 欧美一区二区自偷自拍视频| 亚洲va欧美va国产综合下载| 一本二本三本不卡无码| 日韩资源站| 天堂在线www网亚洲| 91在线激情在线观看| 久久精品国产免费观看频道| 国产午夜一级毛片| 久久香蕉国产线看观看精品蕉| 国产二级毛片| 日韩A∨精品日韩精品无码| 亚洲va欧美ⅴa国产va影院| 亚洲电影天堂在线国语对白| 久久综合成人| 亚洲欧美激情小说另类| 欧美一道本| 黄色片中文字幕| 一本大道视频精品人妻 | 青青草91视频| 宅男噜噜噜66国产在线观看| 欧美亚洲第一页| 91网红精品在线观看| 午夜精品久久久久久久99热下载 | 99草精品视频| 国产成人高清精品免费软件| 国产嫩草在线观看| 久久性妇女精品免费| 国产精品刺激对白在线| 97亚洲色综久久精品| 91色在线观看| 亚洲欧美一区二区三区图片| 性视频久久| 国产精品欧美日本韩免费一区二区三区不卡| 色欲不卡无码一区二区| 爆操波多野结衣| 国产美女叼嘿视频免费看| 四虎影视国产精品| 国内精品久久人妻无码大片高| 偷拍久久网| 精品久久国产综合精麻豆 | 无码免费的亚洲视频| 99久久亚洲综合精品TS| 国产另类乱子伦精品免费女| 小说区 亚洲 自拍 另类| 精品无码日韩国产不卡av| 亚洲av色吊丝无码| 又黄又湿又爽的视频| 日韩在线2020专区| 亚洲精品无码av中文字幕| 亚洲无码免费黄色网址| 亚洲欧洲日产无码AV| 九色在线视频导航91| 欧美精品伊人久久| 热思思久久免费视频| 国产97色在线| 中国黄色一级视频| 久久精品人妻中文系列| 亚洲人成影院午夜网站| 青青青国产精品国产精品美女| 精品一区二区三区无码视频无码|