




已阅读5页,还剩67页未读, 继续免费阅读
(自然地理学专业论文)海底观测网数据库服务器的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 海底观测网数据库服务器作为岸基控制与管理系统的重要组成 部分,是用户与海洋仪器之间的纽带,是整个海底观测网络的数据交 换与存储中心。本文在吸取国内j l - 监测监控系统在数据传输以及管理 方面的经验的基础上,针对海底观测网络实验节点原型的实际情况, 分析了数据库服务器应具备的网络通信、数据解析、数据存储、数据 维护等基本功能。并以此为依据,对数据库服务器进行了设计与实现。 首先j 选用s q l 关系数据库来存储数据,根据海底观测网数据 的特性,将库中数据表设计成“公用表 和“日志表”,公用表主要用来 存储实体相对静态的基本属性信息,日志表则由服务器程序每天定时 动态创建,主要用来存储仪器每天采集的观测数据。 然后,根据数据库服务器的功能需求,对服务器程序进行了设计 与实现。服务器程序由网络通信模块、数据解析与存储模块、数据维 护模块三部分组成。网络通信模块完成了对通信数据包的设计,通过 “一问一答的通信方式、包编号与自定义校验和最大限度保证了通 信过程中数据的完整性,通过w i n s o c k 网络通信机制下的完成端口与 重叠i o 模型高效地实现y , q l 务器与下位机之间的t c p 通信,并编 写了i p 检测函数来防止恶意连接。数据解析与存储模块采用强制类 型转换的方法获取包中的数据,并计算出正确结果,通过a d o 数据 访问机制,实现了各种数据到库中对应日志表的存储。数据维护模块 运用事物和锁的机制来保证数据在维护过程中的一致性与完整性,实 现了数据记录的增、删、改以及数据表的迁移、删除等基本数据维护 操作。 最后,经过水池实验测试,数据库服务器能够同时与多个下位机 进行长时间通信,数据传输过程稳定,数据可完整地存储到数据库中, 达到了预期目标。 关键词:海底观测网;数据库;服务器;套接字;数据维护 i l a b s t r a c t a sa l li m p o r t a n tc o m p o n e n to ft h ec o n t r o la n dm a n a g e m e n ts y s t e m o fs h o r e s i d es t a t i o n ,t h ed a t a b a s es e r v e ro fs e a f l o o ro b s e r v a t o r yn e t w o r k i sn o to n l yt h el i n kb e t w e e nt h eu s e ra n dm a r i n ee q u i p m e n t s ,b u ta l s ot h e d a t ae x c h a n g ea n ds t o r a g ec e n t e ro ft h ee n t i r es e a f l o o ro b s e r v a t o r y n e t w o r k o nt h eb a s i so fl e a r n i n ge x p e r i e n c e so nd a t at r a n s m i s s i o na n d m a n a g e m e n tf r o mt h em o n i t o r i n ga n dc o n t r o l l i n gs y s t e ma th o m ea n d a b r o a d ,t h i sp a p e ra n a l y s e st h eb a s i cf u n c t i o n sw h i c ht h ed a t a b a s es e r v e r s h o u l dh a v e ,s u c ha sn e t w o r kc o m m u n i c a t i o n ,d a t aa n a l y s i s ,d a t as t o r a g e a n dd a t am a i n t e n a n c e ,f o rt h ea c t u a ls i t u a t i o no ft h es e a f l o o ro b s e v a t o r y n e t w o r ke x p e r i m e n t a lp r o t o t y p en o d e a c c o r d i n gt ot h a t ,t h es e r v e ri s d e s i g n e da n di m p l e m e n t e d f i r s t l y , t h es q lr e l a t i o n a ld a t a b a s e i ss e l e c t e dt os t o r ed a t aa n d d a t a s h e e t si nt h ed a t a b a s ea r ed e s i g n e di n t ot w op a r t si n c l u d i n g p u b l i c t a b l e a n d l o gt a b l e t h ep u b l i ct a b l ei su s e dt os t o r er e l a t i v e l ys t a t i c p r o p e r t yo f t h ee n t i t i e sa n dt h el o gt a b l e sw h i c ha r ed y n a m i c l yc r e a t e db y t h es e r v e rp r o g r a ma tt h es p e c i f i e dt i m ee a c hd a yi su s e dt os t o r e o b s e r v i n gd a t ac o l l e c t e db ye q u i p m e n t s s e c o n d l y , a c c o r d i n gt ot h ef u n c t i o n a lr e q u i r e m e n t so f t h ed a t a b a s e s e r v e r , t h es e v e rp r o g r a mi sd e s i g n e da n di m p l e m e n t e d t h es e r v e r o ft h r e em o d u l e s n c l u d i n networkprogram i s c o m p o s e di n c l u d i n g c o m m u n i c a t i o n ,d a t aa n a l y s i s a n d s t o r a g e ,d a t a m a i n t e n a c e t h e c o m m u n i c a t i o np a c k e t sa r ed e s i g n e da n dt h ei n t e g r i t yo ft h ed a t ad u r i n g t h ec o m m u n i c a t i o n p r o c e s s i s m a x i m u m l ye n s u r e db yt a k i n g t h e i i i q u e s t i o n a n da n s w e r m e t h o do fc o m m u n i c a t i o n ,p a c k e tn u m b e ra n d c h e c k s u md e f i n e db yo u r s e l v e s u s i n gc o m p l e t i o np o r ta n do v e r l a p p e d i om o d e lp r o v i d e db yw i n s o c kn e t w o r kc o m m u n i c a t i o nm e c h a n i s m ,t h e s e r v e ra c h i e v e st c pc o m m u n i c a t i o nw i t hl o w e rc o m p u t e r se f f i c i e n t l y i n a d d i t i o n ,t h ei pd e t e c t i o nf u n c t i o ni sc o d e dt op r e v e n tm a l i c i o u sl i n k i n d a t aa n a l y s i sa n ds t o r a g em o d u l e ,m a n d a t o r yt y p ec o n v e r s i o ni se n f o r c e d f o rt h ed a t ai np a c k e ta n dt h ec o r r e c tr e s u l ti sg o ta f t e rb e e nc a l c u l a t e d , a n dt h e nt h er e s u l ti ss t o r e dt ot h ec o r r e s p o n d i n gl o gt a b l ei nd a t a b a s e c o n s i s t e n c ya n di n t e g r i t yd u r i n gt h ed a t am a i n t e n a n c ep r o c e s s a r e e n s u r e db yt h em e c h a n i s mo ft r a n s a t i o na n dl o c k ,a n db a s i cd a t a m a i n t e n a n c eo p e r a t i o n sa r ea c h i e v e ds u c ha st h ea d d i t i o n ,d e l e t i o na n d m o d i f i c a t i o nt od a t ar e c o r d s ,t h em i g r a t i o na n dd e l e t i o nt od a t a s h e e t s ,a n d s oo n f i n a l l y , t h ed a t a b a s es e r v e rc a ns i m u l t a n e o u s l yc o m m u n i c a t ew i t h l o w e rc o m p u t e si nal o n gt i m ea f t e rt h et e s t si np o o le x p e r i m e n t s t h e t r a n s m i s s i o nc o u r s eo ft h ed a t ai ss t e a d ya n dt h ed a t ac a nb es t o r e di n t o t h ed a t a b a s ec o m p l e t e l y t h ea n t i c i p a t o r yt a r g e ti sa c h i e v e d k e yw o r d s :s e a f l o o ro b s e r v a t o r yn e t w o r k ;d a t a b a s e ;s e r v e r ;s o c k e t ; d a t am a i n t e n a n c e i v 湖南师范大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独 立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论 文不合任何其他个人或集体已经发表或撰写过的作品成果。对本文的 研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人 完全意识到本声明的法律结果由本人承担。 学位论文作者签名:同鹑为i 口年b 月 日 湖南师范大学学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定, 研究生在校攻读学位期间论文工作的知识产权单位属湖南师范大学。 同意学校保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。本人授权湖南师范大学可以将本学位论文的 全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存和汇编本学位论文。 本学位论文属于 1 、保密口,在年解密后适用本授权书。 2 、不保密囱。 ( 请在以上相应方框内打“ ) 作者签名:国旁 日期:wl 口年b 月日 导师签名:狮 日期:小t o 年 乙 月 眵 日 海底观测网数据库服务器的设计与实现 1 1 研究背景与研究意义 1 绪论 海洋以其丰富的生物资源、能源、水资源、矿产资源及其对气候 的调节能力,日益受到人类关注。随着信息技术的飞速发展,综合运 用g i s 、g p s 、r s 及海洋要素自动监控系统等高技术对海洋进行监测 与管理已成为2 0 世纪8 0 年代以来世界各国争相发展的领域1 1 1 。“海洋 开发时代”的来临更是引发了全球性的海洋开发利用热潮和海洋资源 争夺战,海洋已成为人类社会可持续发展的宝贵财富和最后空间,对 海洋进行综合监控与持续观测对人类和社会的发展具有极其重要的 理论和现实意义。海底观测网的建立,不仅为研究地球表面过程的机 理提供了新途径,而且为探索地球深部状况创造了新可能。通过海底 观测平台,我们可以了解到海底的科学现象,观测海底的物理信息、 化学特征以及生物系统的变化情况;通过海底观测平台,我们不仅可 以获得长期、连续的海底观测资料,还能实时了解海底的现状信息, 如即时的温度、流速、溶解氧含量、浊度、离子浓度等;通过海底观 测网平台获得的信息,科学家可以为地震、风暴、海底喷发、藻类勃 发等各类突发事件提前做好应对准型2 1 。海底观测网络的建立,无论 是对于科学研究、海洋环境保护,还是对于海底资源勘探与开发,都 具有十分重要的意义。 我国于2 0 0 7 年正式开启了“8 6 3 计划之“海底长期观测网络试 验节点关键技术”重点项目,其总体目标是:开发深海观测网络关键 技术,并通过与国际已有海底观测网络( 如眦s ) 相接驳的方式, 研制深海观测网络关键设备,实现与国际已有海底观测网络的接并以 及原位实时数据的获取,初步形成深海海底观测网络建设能力,为我 硕士学位论文 国深海海底观测网络的建设奠定基础【3 】。本论文所涉及的研究内容即 为该“8 6 3 ”重点项目背景下的子课题的部分研究内容。数据库服务 器作为岸基控制与管理系统的重要组成部分,是整个海底观测网络的 数据存储中心【4 】,库中的数据是岸基站信息管理子系统进行显示与分 析的基础,也是用户进行查询与下载的前提。 1 2 国内外海底观测网研究现状 1 2 1 国外海底观测网研究现状 欧美诸国以及日本早在2 0 世纪9 0 年代就已经开始了海底观测网 的研究和建设工作【5 】。上世纪末,美国和加拿大开启了海王星 ( n e p i 删) 海底观测网络计划,建立了两个小型光缆观测站作为 该计划的试验平台,一个是维多利亚海底实验网络v e n u s ( v i c t o r i a e x p e r i m e n t a ln e t w o r ku n d e r t h es e a ) ,另一个为蒙特利加速研究系统 m a r s ( m o n t e r e ya c c e l e r a t e dr e s e a r c hs y s t e m ) ,在加拿大蒙特利湾设 立观测站睁引。海王星计划建立了区域的、长期的和实时的海洋监测 平台,实现了不同时空尺度上多学科的测量与研究1 9 。日本于2 0 0 3 年提出了海底实时监测网络计划( a r e n a ) 【1 0 1 ,以提供地震、海洋 学和生物学等信息。英、法、德等国也于2 0 0 4 年启动了欧洲海底观 测网( e s o n e t ) ,针对从北冰洋到黑海不同海域的科学问题,在大 西洋与地中海精选l o 个海区设站建网,进行长期海底观测f l 。类似 的还有美国夏威夷的1 - t 2 0 、新泽西大陆架观测网络计划( n j s o s ) 等 1 2 。为了更好的管理和利用海底观测网收集来的监测数据,各个观测 网系统都拥有相应的岸基站信息管理系统。海底仪器的观测数据通过 光缆上传到岸基站,在岸基站有专门的服务器接收海底上传的数据, 并对数据进行解析、说明与存储。其中较为成熟的是美国蒙特利湾生 物研究协会( m b a r i ) 建立的基于a r c l n f o 平台的“蒙特利湾海洋地 海底观测网数据库服务器的设计与实现 理信息系统”s s d s ( s h o r es i d ed a t as y s t e m ) i t 2 - 1 5 1 。它将各种海洋监 测平台和仪器传送至岸基站的源监测数据进行些预处理,经过处理 后的数据以各种格式存放在分布式数据库中,用户通过网络可以获 取、查询数据并对其进行可视化显示【1 4 1 。 1 2 2 国内海底观测网研究现状 在海洋实时观测研究方面,我国起步较晚。汪品先等提出海底观 测平台已成为继地面与海面、空中遥测遥感之后的第三个观测平台 0 s l 。“十五 期间,福建省“台湾海峡及毗邻海域海洋环境实时立体 监测系统”示范系统项目正式列入国家“8 6 3 ”计划资源与环境领域 重点项目 1 7 1 。随后,广州近海海域综合监控管理信息系统也随之正式 开始设计,其目标为:建立“四位一体”的海洋信息化平台,实现广 州海洋数据采集及动态监控、海洋规划、海洋执法、海洋资源和环境 保护、海洋信息预报、灾害预警与防治等方面的应用【2 1 。2 0 0 2 年1 月, 我国第一个海洋环境立体监测系统在上海初步建成。该系统是一个以 上海为中心,覆盖长江三角洲濒临海域的区域性海洋监测系统,实现 了对上海及其邻近海区海洋环境的实时监测,为上海地区发展海洋经 济、保护海洋环境、减轻海洋灾害损失提供海洋环境信息服务【1 8 】。2 0 0 9 年6 月,同济大学建立了中国第一个海底综合观测试验站东海海 底观测小衢山试验站。试验站由海洋登陆平台及控制和传输模块、1 1 千米海底光电复合缆、基站( 包括特种接驳盒、外接a d c p 、c t d 、 o b s 多种仪器等) 组成,该试验站实现了能源的长期自动分配供应、 仪器的控制、数据的实时采集、网络传输与可视化管理,与此同时, 还初步研制出一套包括数据接收、监视和管理的可视化信息系纠1 9 1 。 1 3 海底观测网络基本结构 在深海海底观测网络中,观测数据由传感器及观测仪器采集获 硕 位论文 得。海底传感器、观测仪器等设备通过海底光纤与节点连接起来组成 子网,各个子网再通过海底光纤主干网把数据传输到岸边基站,岸基 站同时与多个节点相连接,构成整个海底观测网络( 图1 - 1 ) 。在海底 观测网的岸基站监控中心里,数据库服务器负责与下位机通信以获取 传感器和观测仪器采集到的数据,并负责将数据完整地存放到数据库 中,以供海底观测网络的其他用户和管理系统( 如岸基站信息管理子 系统) 使用,整个海底观测网的通信系统主要是采用基于t c p 九p 协 议的光纤以太网来构成i i 。 舔袅: 光 j 纤 、以 、点 1 4 主要研究内容 ,_ s - 4 8 5 | | o 妒瓤r s 穸4 8 5 、阻 光 纤 以 太 网 光 纤 以 j 太, 耐, 岸基站瓶控中心 幽1 i 海底现测网络示意陶 针对网络中海底观测数据的传输、存储与维护等问题,本文对海 底观测网岸基站数据库服务器进行了设计和编程实现,本文的主要研 荔土 嗡 海底观测网数据库服务器的设计与实现 究内容包括以下几个方面: ( 1 ) 海底观测数据库的初步设计。将海底观测数据库中的表( 不 包括系统表) 设计成存储实体基本信息的公用表和实际观测数据的日 志表两部分。 ( 2 ) 数据通信的设计与实现。采用完成端口和重叠i 0 实现网 络通信模型的搭建,在此基础上实现与下位机之间的数据收发操作。 ( 3 ) 数据解析与存储模块的设计与实现。将完整收到的数据按 照各自特定的公式解析,并依据其时间信息存储到数据库对应的日志 表中。 ( 4 ) 数据维护模块的设计与实现。为了防止数据库无限膨胀, 实现对数据表的迁移操作。同时可对一些公用表的基本资料进行直观 的修改。 ( 5 ) 海底观测网络数据库服务器的测试试验。测试服务器在长 时间不问断条件下的连接、收发及存储数据的情况。 硕七学位论文 2 主要技术及开发工具介绍 2 1 数据库服务器开发方式选择 服务器程序与下位机的通信方式与通信协议选择是数据传输的 前提。目前,国内不少学者研究了监测监控系统中进行数据通信所采 用的方式及协议,如李秀红等开发了基于g p r s 和s m s 技术的嵌入 式无线远程环境监测系统,采用基于t c p i p p p p 协议的无线传输模 块,实现了无线远程环境监测系统中多传感器的数据收发功能【2 0 1 ;吴 文佳等在基于t c p i p 、h 3 2 4 通讯协议的基础上,编码实现了污水图 像数据的传输【2 l 】;王锐刚等研制了基于t c p i p 网络控制的公路交通监 测系统,利用光纤网络将车辆违章信息实时上传到集成服务器【2 2 】;耿 新杰等在黄河险情监测系统中,采用符合t c p i p 协议标准的数据通信 接口实现与“数字黄河”其它系统的数据通信【2 3 】;杨冰林在车载监控 系统中心服务器开发过程中,采用t c p i p 协议实现与车台的通信以获 取g p s 信息及车辆c a n 信息【2 4 】;王瑞彪也指出了网络游戏在计算机网 络中传输游戏数据时使用的具体协议为t c p i p 协议【2 5 1 ,国家海洋局也 提出各网络节点局域网应使用t c p i p 协议进行数据之间的交换1 2 6 1 。 因此,服务器程序在设计时以t c p i p 协议为基础进行网络通信,由于 t c p i p 协议中u d p 协议不保证接收端一定能接收到发送的数据,在海 底观测网数据库服务器的数据交换通信中,为了保证数据传输的完整 性和可靠性,不宜采用u d p 协议来进行通信,而应采用t c p i p 协议中 的具有可靠保证的t c p 协议阳。在通信方式上,采用w i n d o w s 环境下 的标准网络编程接v w i n s o c k 进行网络通信。 为了保证上传数据能在最短的时间处理完,并且保证代码的可重 用及可靠性,在编程语言上选择v i s u a ls t u d i o 中效率最高的面向对象 海底观测网数据库服务器的设计与实现 语言v c + + n e t 来进行服务器端程序的开发【2 8 1 。海底观测数据量十 分庞大,同时数据库系统必须要能支持其模式及内容的改变,以促进 新的应用要求1 2 9 1 ,因而在数据库的选择上,采用大型关系数据库s q l s e r v e r 数据库来进行数据的存储与设计;在数据库的访问方式上,选 用当前微软所支持的对数据库进行操作最有效和最简单直接的a d o 数据访问机n t 3 0 j 。 2 2 开发平台与工具介绍 2 2 1v i s u a ls t u d i 0 2 0 0 3 开发平台 v i s u a ls t u d i o 是一套完整的开发工具集,包括公共语言运行库、 统一编程类、a s e n e t 三大主要部分,用于生成a s e n e tw e b 应用 程序、x m lw e bs e r v i c e s 、桌面应用程序和移动应用程序。v i s u a l s t u d i o 平台下的主要开发语言有v i s u a lb a s i c 、v i s u a lc + + 、v i s u a lc j 6 和v i s u a l 肼,这些语言全都使用相同的集成开发环境( i d e ) ,这样 可以十分方便地共享工具和创建混合语言解决方案,同时,通过该平 台下的n e tf r a m e w o r k 框架可简化a s pw e b 应用程序和x m lw e b s e r v i c e s 的开发。 本文所实现的程序都是用该平台下的v i s u a lc + + 语言进行开发。 m i c r o s o f tv i s u a lc + + n e t 为使用者提供了强大和灵活的开发环境, 它是微软推出的用于创建高性能w i n d o w s 应用程序的最佳语言,被 称为所有开发语言及工具中的“旗舰 。v i s u a lc + + 提供了许多有助于 对应用程序进行编码的重要库,其中包括支持w i n d o w sa p i 用于创建 各种w i n d o w s 应用程序的c + + 类郴c 基础类库、用于c o m 对象 的基于模板的c + + 类一a = r i 活动模板库等【2 引,除常规的图形用户界 面应用程序外,v i s u a lc + + 还允许开发人员生成w e b 应用程序、基 于w i n d o w s 的智能客户端应用程序以及适用于瘦客户端和智能客户 硕士学位论文 端移动设备的解决方案。其面向对象的思想使得模块化的代码维护更 加简单、可扩充性更强、可重用性更好、执行效率更高。这也使得 c + + 成为世界上最流行的系统级语言,而v i s u a lc + + 则为开发人员提 供了生成软件的世界级工具【3 。 2 2 2s q ls e r v e r 关系数据库 s q ls e r v e r2 0 0 0 是微软推出的一个关系数据库管理系统,它支 持对称多处理器结构、存储过程、o d b c ,并具有自主的s q l 语 言( 结果化查询语言) ,能在各个操作平台下面良好运行。它不仅具 有使用方便、可伸缩性好、与相关软件集成程度高等优点,而且其强 壮的事物处理功能可保证数据的完整性1 3 2 1 。同时s q ls e r v e r2 0 0 0 全 面扩展了s q ls e r v e r7 0 的性能可靠性和易用性,使它成为一个杰出 的数据库平台,可用于大型联机事务处理数据仓库及电子商务等1 3 3 1 。 本文设计的海底观测数据库,在实际使用过程中会不间断地进行数据 交换和数据存储,对数据的可靠性、数据的可维护性要求都很高。因 此,选择s q ls e r v e r2 0 0 0 作为海底观测数据存储的平台。 2 2 3a d o 数据库访问技术 a d o ( a c t i v e xd a t ao b j e c t s ) 是微软提供的一种面向对象、与 语言无关的应用程序层接口,用以实现访问关系或非关系数据库中 的数据,其基本思想是用一种编程方法检索任何地方的任何数据。 作为建立在o l e d b 上层的应用模型,a d o 对o l e d b 的接口作了 封装,定义成a d o 对象,是对当前微软所支持的数据库进行操作的 最有效和最简单直接的方法,它是一种功能强大的数据访问编程模 式,从而使得大部分数据源可编程的属性得以直接扩展到a c t i v e s e r v e r 页面上。其易于使用、速度快、内存耗费少、可扩展性强的特 点使之成为微软整个c o m 战略体系中访问数据源组件的首选1 3 4 1 。 海底观测网数据库服务器的设计与实现 在v c + + n e t 环境下使用a d o 的步骤如下: ( 1 ) 引入a d o 库文件:使用a d o 前必须在工程的s t d a f x h 头文件里用直接引入符号# i m p o r t 引入a d o 库文件,以使编译器能 正确编译。具体语句如下: # i m p o r t ”c :p r o g r a mf i l e s c o m m o nf i l e s s y s t e m a d o m s a d 0 1 5 d l l ”n o _ n a m e s p a c e r e n a m e ( ”e of f t ,”r s e o f ”) 这行语句声明在工程中使用a d o ,但不使用a d o 的名字空 间,并且为了避免常数冲突,将常数e o f 改名为r s e o f 。现在不 需添加另外的头文件,就可以使用a d o 接口了。 ( 2 ) 初始化o l e c o m 库环境:a d o 库是一组c o m 动态库, 这意味应用程序在调用a d o 前,必须初始化o l e c o m 库环境。 在m f c 应用程序里,比较好的方法是在应用程序主类的 i n i t l n s t a n c e o 成员函数里初始化o l e c o m 库环境。 ( 3 ) 使用a d o 接口:a d o 库包含三个基本接口, c o n n e c t i o n p t r 接口、c o m m a n d p t r 接口和r e c o r d s e t p t r 接口。 c o n n e c t i o n p t r 主要是一个连接接口,取得与数据库的连接,它的 连接字符串可以是自己直接写,也可以指向一个o d b cd s n ; c o m m a n d p t r 接口返回一个r e c o r d s e t 对象,它提供了一种简单 的方法来执行返回记录集的存储过程和s q l 语句; r e c o r d s e t p t r 是一个记录集对象,与以上两种对象相比,它对记录集提供了更 多的控制功能,如记录锁定,游标控制等。 2 2 4w i n d o w s 网络通信技术 网络通信即把分布在不同地理区域的计算机与专门的外部设备 用通信线路互联成一个规模大、功能强的网络系统,从而使众多的计 算机可以方便地互相传递信息,共享硬件、软件、数据信息等资源。 在w i n d o w s 环境下进行网络通信可使用其提供的w i n s o c k 接口实现。 硕士学位论文 w i n s o c k 是w i n d o w s 下独立于协议的网络编程标准a p i ( 应用编程接 口) ,在m i c r o s o f tw i n d o w s 操作系统类中使用,主要用于网络中的 数据通信。它在b e r k e l e y 接口函数的基础之上增加了基于消息驱 动机制的w i n d o w s 扩展函数,允许两个或者多个应用程序在同一台 机器上,或者通过网络相互交涮3 5 1 。w i n s o c k 通过s o c k e t 套接字来实 现通信的功能,当应用程序创建了一个套接字后,就能够获得这种机 制提供的网络服务功能。对于服务器来说,它提供了侦听网络的连接 请求;对于客户端来说,它可以连接到一个给定的主机和特定的端口 e 。 海底观测网数据库服务器的设计与实现 3 服务器需求分析与总体设计 3 1 数据库服务器需求分析 数据库服务器是用户与海洋仪器之间的纽带。一方面,服务器程 序担负着与海洋观测仪器的数据交换,将仪器上传的数据接收、解析 并且存储到指定的数据表里面;另一方面,还为用户提供远程访问的 接口,用户通过对各类子系统数据表和状态信息表的查询可以及时了 解海洋物理、化学等方面的信息。 总体说来,数据库服务器必须具有以下功能。 ( 1 ) 数据存储。服务器的最大任务是接收仪器观测到的海底数 据,并将这些数据存储下来,这些存储不是零散的,而是有组织、有 次序的。本项目选择s q l 数据库来存储数据,这就不可避免的要对 数据库进行设计,以便将海底观测数据完整地存储到正确的地方,这 就要求在数据库中有对应的数据表来存储不同类型的数据。 ( 2 ) 数据通信。数据库服务器要接收海底观测仪器通过光缆上 传的数据,必须具有网络通信的功能。数据通信部分要能够达到以下 要求:同时处理多个网络连接;对每个连接进行口判断;保证通信 数据的完整;能够正确收发数据;能够转发控制指令。 ( 3 ) 数据解析与入库。仪器上传的数据可能是采集到的“源数 据 ,服务器程序必须要区分不同类别的数据,然后经过相应的公式 换算得到用户“可理解”的数据,再将这些数据依据各自的时间信息 存储到数据库指定的数据表里面。数据解析与入库部分要实现下述功 能:解析物理子系统的a d c p 数据包、c t d 数据包、a d v 数据包和 仪器状态信息数据包;解析化学子系统的电导类数据包、阴离子数据 包、化学观测数据包和标准曲线数据包;解析能源子系统数据包;解 硕上学位论文 析控制指令数据包;存储各类上传数据;存储每个数据包的编号;存 储日志表创建信息;记录每一次指令操作。 ( 4 ) 数据维护。海底观测数据源源不断的上传到服务器,数据 库也会不断的变大,为了防止数据库的无限膨胀,影响服务器的效率, 必须定期对数据库进行维护。数据维护部分需要实现以下功能:数据 记录的增加、删除、修改等操作;数据表的迁移与删除;从程序界面 上直观地实现数据库的创建、附加与分离等操作。 3 2 数据库服务器总体设计 根据上述需求分析,数据库服务器的设计包括两部分内容。 第一部分为数据库,该部分需对数据库中的表进行设计,使之能 够存储下海底观测网中需保存的实体属性数据、观测数据、运行状态 数据、控制数据、供能数据等,数据表要如实反映海底观测网中的实 体信息。 第二部分是数据库服务器程序部分,该部分由通信、解析与存储、 数据维护三个模块组成( 图3 - 1 ) 。通信模块负责w i n d o w s 网络通信 部分的工作,包括接受下位机的连接、接收数据、向下位机发送返回 信息和转发指令等;解析与存储模块负责将数据解包,并按照包的信 息存储到数据库指定的数据表里;维护模块则负责对数据库中公用表 的记录的增、删、修改以及日志数据表的迁移、删除等基本维护操作。 服务器程序的总体工作流程设计如下:当控制模块或者处在子系 统端的下位机与服务器进行信息交互时,需先连接服务器,服务器确 认连接合法之后,才允许进行数据的传输。服务器接收下位机上传的 数据包,然后对数据进行解析,若收到的数据为控制数据,则提取该 控制指令并转发到子系统下位机,同时将该指令及指令转发的时间记 录到数据库中,指令转发成功,返回成功信息给控制模块;若收到的 数据为非控制数据,则将该数据存储到数据库对应的观测日志表中。 海底观测网数据库服务器的设计与实现 当数据库中的数据达到一定的容量或者需要对数据库的公用表进行 某些修改时,则调用服务器的数据维护模块实行相关的维护操作。 图3 = i 数据库服务器总体架构图 子系统 控制 模块 数 据 库 服 务 器 注:图中子系统与控制模块不属于数据库服务器。物理子系统负责海洋物理数据的监测, 化学子系统负责海洋化学数据的监测,能源子系统负责整个海底观测网络能源( 电能) 供给, 这三个子系统的相关数据都会上传到服务器。控制模块向服务器程序发送控制指令,再由数 据库服务器转发到下位机 硕士学位论文 4 海底观测数据库初步设计与实现 长期、连续的海底观测数据是研究发现海底科学规律的重要支撑 条件,对这些数据的长期有效地保存是十分重要的【3 6 1 ,尤其在系统运 行的状态下,海底观测网络中的数据将源源不断的“海量 汇集到服 务器,对海底观测网的数据库进行设计,将这些数据完整的存储下来 就显得十分必要。数据库的设计是整个数据库服务器的基础,数据库 不设计好,服务器程序也就无法正常使用。 4 1 海洋数据特点 海洋信息与陆地信息差异较大,海洋数据具有如下特点f 3 7 。3 8 】: ( 1 ) 直接获取难度大。我国拥有辽阔的海域面积和丰富的海洋 资源,但海洋环境复杂,海洋相关数据的采集难度大,为此国家将铺 设“海底长期观测网 ,在深海底布施若干结点,放置传感器,实现 对海洋数据的采集和传送,为海洋研究提供大量可靠的数据。 ( 2 ) 信息多样性。海底观测网岸基站信息管理系统中涉及到的 数据包括基础地图数据、站点数据、海底观测网采集的监测数据、元 数据,以及系统的用户信息等。 ( 3 ) 变化尺度大。海洋现象的动态变化相对陆地是剧烈的,如 瞬时变化的海啸、火山,季节变化的潮流以及百万年的地质构造,且 这种动态变化是全局的,海洋现象每时每刻全区域都是变化的,因而, 仪器采集和上传的海底数据也会时刻变化。 ( 4 ) 海洋边界信息的模糊性。如领海界线、大陆架、海岸线、 经济专属区等界限不是十分清晰。 ( 5 ) 海底信息的复杂性及海水动态性。海洋现象不但空间上是 动态的,时间上也是动态的,更多的是时空互动。海底观测网采集的 数据必然是与特定的时间和空间联系在一起的。系统中必须表达属 海底观测网数据库服务器的设计与实现 性、时间和空间相互交杂的动态状况,充分体现海洋的多维特性。 ( 6 ) 海洋地理信息在数据标准、格式、精度、采样密度、分辨 率及定位精度方面均有特殊需求。许多海洋相关部门所获的数据粗细 差别大;采样密度方面,有些以秒为单位,也有些是按天统计的数据。 在此海底观测网中,传感器采集的数据在采样密度和定位精度上是一 致的,都是由若干结点上的传感器间隔一定时间向基站上传数据。 4 2 海底观测数据描述 根据本项目研究中海底观测网实验节点原型的实际情况j 按照获 得数据的来源,海底观测网数据库中的数据可以描述为物理子系统数 据、化学子系统数据和能源子系统数据。 4 2 1 物理子系统数据 物理子系统数据可描述为物理观测数据和物理子系统运行数据。 在项目研究的现阶段,获得物理观测数据的仪器有a d c p 、a d v 和c t d 三种。其中a d c p 仪器获得的是n 个深度单元上的流速剖面 以及温度信息,要将该信息完整描述,需记录下仪器的仪态数据、深 度单元数据、温度数据、四个不同方向上的速度数据、相关系数数据、 回声度数据、以及数据可靠性数据;a d v 仪器获得的是某一深度的 线速度以及温度信息,对该信息的描述包括采样频率、仪态数据、深 度、温度、东西方向流速、南北方向流速、上下方向流速以及各个方 向上的相关系数;c t d 仪器观测到的有温度数据、电导数据、压强 数据、溶解氧数据、浊度数据和第二温度数据。 物理子系统运行数据包括仪器状态信息和控制指令及其响应值 两部分。仪器的状态信息有电压值、仪器温度值、s d 卡状态、串口 状态、仪器数据是否可读、仪器模式状态、仪器错误信息等。控制指 令包括仪器开启指令、仪器关闭指令、数据上传指令、模式更换指令 以及状态查询指令。要将物理运行信息完整地描述,就必须记录并存 硕士学位论文 储下这些指令数据及各自的响应值。 4 2 2 化学子系统数据 化学子系统数据可描述为化学观测数据、化学电导类数据、化学 阴离子数据以及标准曲线数据。对化学观测数据的描述包括 d a t a l o g g e r 温度、d a t a l o g g e r 电压、p h 值、p h 值电压、硝酸盐浓度、 硝酸盐浓度电压、叶绿素浓度、叶绿素浓度电压、甲烷浓度、甲烷浓 度电压、溶解氧浓度、溶解氧浓度电压、溶解氧温度和溶解氧温度电 压;对化学电导类数据的描述包括电导池电导、抑制器电流、分析状 态值、电器仓温度、油压仓温度、流路压力以及各个阴离子对应的原 始电导值;对化学阴离子数据的描述包括f 。、b r 、c i 、n 0 3 、s 0 4 2 、 p 0 4 3 等;对标准曲线的描述包括系统温度、系统压力、各种离子各自 的出峰相对时间、标准浓度、峰的面积等。 4 2 3 能源子系统数据 能源子系统的数据描述的是为整个海底观测网络提供电能支持 的能源信息。对该子系统数据的描述包括化学子系统电压、化学子系 统电流、物理子系统电压、物理子系统电流、工控机电压、工控机电 流、工控机温度、漏水系统检测、摄像系统电压、摄像系统电流、高 压转中压系统输出电压、高压转中压系统输出电流、高压转中压系统 温度及单片机温度。 4 3 海底观测数据库初步设计与实现 参考m i c h a e lg o d i n 对蒙特利湾数据系统的介绍【3 9 】,j o h ng r a y b e a l 关于m b a r i 数据的管理措施 4 0 1 ,k e n tl h e a d l e y 等关于海洋观测 传感器元数据的管理方法【4 1 1 ,在吸取国外已建成的海底观测系统对数 据的管理的经验上,针对目前海底观测网实验节点原型的实际情况, 在进行数据表的设计时充分依据上述海底观测数据的描述,将数据库 中的数据表设计成公用表和日志表两部分。公用表用来存储“相对静 海底观测网数据库服务器的设计与实现 态的数据,如实体的d 、名称、项目属性等基本信息,日志表则 每天定时产生的,用来存储海底观测仪器上传的数据。 4 3 1 数据库e r 图绘制 对数据库进行设计首先需构建概念模型,而e r 图为概念模型提 供了图形化的表示方法,e r 图用实体关系来描述现实世界,实 体用矩形表示,属性用椭圆表示,属性通过直线与表示实体的矩形相 连,联系则表示为菱形。 在海底观测数据库中需表达出三类实体信息:传感器、子系统、 接驳盒( 即节点) 。在进行数据表设计之前,需先绘制出这些实体的 e r 图( 图4 1 ) 。 图4 - l海底观测嗍e r 图 实体接驳盒( 即节点) 的属性有:节点i d 、节点名称、经纬度 地理坐标和深度,每个节点i d 都是唯一的,因此以节点i d 作为唯一 标识。实体子系统的属性有:子系统i d 、子系统i p 地址、子系统名 称、子系统类型,以子系统i d 作为唯一标识。传感器的属性有:传 感器i d 、传感器名称、监测项目,其中监测项目视传感器不同而各 不相同,以传感器d 为唯一标识。一个接驳盒包含多个子系统,一 个子系统包含多个传感器,因而接驳盒与子系统是一对多的关系,子 系统与传感器也是一对多的关系。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江省五年级信息技术课教学计划范本
- 小学读书活动总结及建议
- 新员工入职培训流程及手册
- 成都文理学院《能源技术经济学》2024-2025学年第一学期期末试卷
- 企业绩效考核调研与改进方案
- 行政人员岗位职责及能力要求
- 辽阳职业技术学院《互动媒体设计》2024-2025学年第一学期期末试卷
- 木质吸音板安装施工技术标准
- 黑龙江大学《心肺康复》2024-2025学年第一学期期末试卷
- 高等教育自学考试设计原理复习资料
- 跨境出口策划方案(3篇)
- 小学数学教师进城选调考试试题及答案
- GB/T 27043-2025合格评定能力验证提供者能力的通用要求
- 慢性鼻窦炎诊断和治疗指南(2024)解读
- 厂内专用垃圾转运方案(3篇)
- 2025年地质勘探与资源矿产管理技术考试试题及答案
- 2024-2025学年人教版八年级数学上册《全等三角形》综合训练练习题(含答案解析)
- 肾内科常见病诊疗与管理
- 口腔医生岗前培训课件
- 驾考题库及答案大全
- 康复科疾病护理
评论
0/150
提交评论