如何保障实时气象资料的管理
在气象信息系统中,气象数据库系统的构建是其核心和基础,如何把大量的气象资料收集起来,使气象信息系统可以方便、及时、准确地从数据库中获得所需信息?
今年入夏以来,我国部分城市相继遭受突发性强降雨、雷暴、大风、冰雹等强对流天气的袭击,致使城市严重内涝,交通瘫痪,航班延误,建筑物、广告牌和行道树等遭到毁坏,还造成了人员伤亡和重大财产损失。
中国气象事业发展战略中明确指出,气象信息系统的建设是加快中国气象事业发展能力建设的内容之一,其内涵是共享通信网络、共享高性能计算环境和共享数据。在气象信息系统中,气象数据是其核心和基本的组成部分,也是气象信息系统提供服务的主要内容。气象数据的收集、精细化加工处理、质量控制、存储管理、应用服务等方面都是气象信息系统所必备的基本功能。
气象数据库系统的构建是气象信息系统各个部分能否紧密结合以及如何结合的关键所在。它把气象信息系统所收集的大量数据按一定的模型组织起来,并提供数据存储、维护、检索等功能,使气象信息系统可以方便、及时、准确地从数据库中获得所需信息,是气象数据应用服务系统的支撑平台。
准确预报需建实时气象数据库
气象资料存储检索系统结构示意图
我国气象事业发展战略对气象信息系统建设提出了明确要求,作为气象信息系统的重要组成部分和天气预报、预警、气象防灾减灾核心实时业务系统的支撑平台,实时气象数据库系统的建设至关重要,国家级气象资料存储检索系统实时数据库系统建设已在国家级实时业务中发挥了重要作用。
对天气预报、数值预报、气候预测等各项实时气象业务而言,实时气象资料尤为重要,各种实时观测资料从通信系统进行收集后,必须得到有效的存储管理,并提供方便、快捷的共享服务。因此,必须构建一个优秀的实时气象资料数据库系统,为天气预报、预警、气象防灾减灾等工作提供强有力的保证。
通过构建标准的实时气象数据库系统,国家气象中心建立了以核心气象数据库为基础的业务流程和业务体系,实现了实时气象数据的集中收集、处理和存储管理,方便、快捷地为用户服务。
在数据库技术出现以前,第一代实时气象数据的存储管理主要基于文件系统方式实现,有代表性的是在国家气象中心分别于1987年在日立公司的M-170上和1991年在DEC公司的VAX-6320上建立的专用的实时气象资料数据库系统。基于文件系统ย方式的数据存储管理存在许多问题,主要表现在数据冗余量大、共享性和灵活性差、对文件系统的修改维护代价高、难以维持文件间的数据一致性等方面。
数据库技术的产生和发展,为气象数据的存储管理提供了较好的解决方案。数据库是以一定的方式将数据组织在一起的、为多种应用服务的数据集合。数据库管理系统则是负责数据库的定义、建立、控制、管理和维护的软件系统。数据库系统是计算机系统中引入数据库后的系统构成,即把数据库、有关的硬件、软件和人员组合起来提供信息服务的系统,包含支持DBMS的软硬件环境、DBMS、数据库、用户及其应用程序等。相对于文件系统,数据库系统的优势主要表现在数据的独立性、数据的结构化、数据的共享性、最小的数据冗余度、数据的统一管理和控制、可按标准化的规定实施数据库系统等。
随着中国气象局9210工程的建设,基于9210气象数据库系统的第二代实时气象资料数据库系统于上个世纪90年代末投入业务运行,这是基于关系数据库管理系统的真正意义上的实时气象资料数据库系统,已逐步成为国家级核心业务平台,国家级短期、中期天气预报及气候业务均已实现从该系统直接获取气象数据。
2003年 ッ,国家级气象资料存储检索系统开始建设,至今已初具规模。该系统是基于RDBMS的海量气象数据库系统,负责由实时数据库、综合数据库、对外共享数据库三个逻辑数据库构成,其在数据存储内容和时限、系统功能、系统复杂度和应用服务能力等方面远远超越以往的国家级气象数据库系统。MDSS是国家级气象信息系统建设的重要组成部分,是国家级气象数据中心的核心支撑平台,其建设标志着国家级气象数据中心的建设拉开序幕。
省及以下单位实时气象资料数据库系统的建设也经历了从文件系统管理到数据库系统的发展过程。在上世纪80年代中后期,省一级的基于DBASE的微机数据库系统也相继在一些省气象局开发和推广,后来随着9210工程的建设和9210实时数据库系统的部署安装,全国实时气象资料数据库系统的建设和应用水平得到一定程度的提高。此外,数据库技术对前端应用的良好支持,促成了各种中小规模的实时气象资料数据库系统的蓬勃发展,最具有代表意义的是各种气象网站系统和气象数据Web服务系统。这些系统的建立通常基于Windows、Linux平台及SQL Server、MySQL等中小型RDBMS,系统易于实现和维护。
优化手段保障数据及时入库
实时气象资料数据库系统就是对实时气象资料进行处理、加工、管理并实现资源共享的专用软件系统,具有以下特点。
资料范围、时段相对固定
在进行数据库设计时,需要根据实时业务,确定存储管理的资料,根据各类资料特点和使用需求,分别制定在线存储的时限。
时效性高
时效包括资料处理入库的时效和查询的效率。由于实时气象资料使用的及时性,需要通过一系列的优化手段,保障通信系统收集到的资料在最短的时间内入库并提供使用。查询的效率也很重要,以气象信息分析处理系统为例,该系统要求一个时次中国区域的地面资料在0.3秒内返回到客户端,所以在数据库设计时,需要充分考虑数据的存储策略和优化手段,否则很难满足实时业务的需求。
稳定性高,恢复周期短
由于气象预报业务是不可间断的,它又以实时的数据为基础,因此要求实时数据库具备很高的稳定性,出现故障时能很快恢复。所以,在系统的架构设计上要充分考虑高可用性,并且系统的整体结构、处理流程要简单,否则会无形中增加很多故障点,也不利于故障时的快速恢复。
当日数据实现逻辑备份
实时库提供的检索方式包括程序调用和人机交互两种方式
MDSS-RDB的功能包括数据收集/整理、元数据管理、数据处理、数据检索、数据备份/恢复、数据存储管理、系统监视等。
数据收集/整理
气象通信系统打包的气象通信文件是综合性文件,每个文件包含多种资料,同一种资料又分散在多个文件中。数据库的处理进程是按资料种类划分的,每个进程都需处理所有文件。一旦某份资料处理发生错误,可能造成其他资料处理无法正常进行。因此,在实时库设计中增加了对通信转发来的数据进行分类整理的功能,以保证系统的稳定性。
元数据管理
元数据的管理包括元数据的制作、编辑和维护。在实时库中,所有元数据都采用数据库表的方式来存储管理,除了日期控制元数据信息是动态信息外,其他元数据信息都是静态信息。
动态元数据的生成是在数据处理入库和清除过程中自动完成的。对于静态元数据,在实时库系统中利用Java开发了一套基于Web的数据库系统维护的管理软件,其中包括元数据信息的生成和维护功能。
数据处理
数据处理功能就是对收集来的资料进行一定处理,并以一定的方式存入数据库中。
对于观测报文资料,数据处理就是扫描通信系统发送来的报文资料目录,进行报文的格式检测、要素译码及质量控制,并将生成的报文及要素插入数据库中。
对于非结构化数据,数据处理就是扫描系统接收的非结构化原始数据目录及文件,按照各资料的预处理原则,进行文件名检测及转换、资料压缩、索引信息提取等处理,并将处理后的数据以BFILE的方式存入数据库中。
数据检索
实时库提供的检索方式包括程序调用和人机交互两种方式,以程序调用方式为主。
程序Σ调用方式就是调用实时库提供的检索接口函数,通过参数获取所需资料的方式,检索的数据返回到调用程序的内存或用户本地的存储设备中。
人机交互式的检索方式就是在浏览器上交互地搜索和查询数据,获取各种信息服务。
数据备份/恢复
数据备份功能包括物理备份和逻辑备份。
物理备份就是将数据库运行的相关系统文件、数据文件、日志文件复制到磁带或磁盘中,在恢复时直接将文件导入即可。
逻辑备份就是将数据库中的数据连带数据结构导出,这种方式对于恢复某个特定的数据库表是非常容易的。
对实时库而言最重要的就是当天的数据,故障时只要能最快地恢复当天甚至当前时次的资料,就可以满足最基本的业务需要,而且综合库包含实时库所有的资料,因此可以作为实时库的备份库。考虑到实时备份会对系统性能造成一定的影响,因此,在MDSS中将实时库设计在非归档模式下运行。当出现故障时,当天数据的恢复直接从通信文件重新开始处理入库,历史的数据恢复通过每天逻辑备份的数据恢复。
数据存储管理
实时库的数据容量有限制,需要具备滚动删除的功能,即把超过时限的数据从库中清除。
系统监视
实时气象资料数据库系统的监视包括数据库系统的监视和数据处理流♋程监视。数据库系统的监视包括数据库管理系统运行状态监视、空间监视和用户行为监视。数据流程监视包括来报数量统计、应到报缺报统计、未处理资料统计、数据入库统计、错报统计、处理进程状态监视、数据备份和清除监视。
实时数据库的技术实现
MDSS-RDB的技术实现主要由以下几部分组成。
数据处理应用的技术实现
在国家级气象资料存储检索系统实时气象资料数据库系统的建设过程中,注重面向过程的软件开发规范和模块化管理的应用,在处理流程、错报输出、进程功能等方面进行了大量的优化工作,并采用了数据封装技术、链表技术、枚举技术、宏技术等一系列技术改进,使得现有数据处理程序的结构更加合理,代码质量和可读性得到提高,大大增加了系统运行的稳定性和可维护性。
分区技术应用
Oracle 9i支持分区技术,将大表或其索引按照某种策略划分成多个相对较小的、各自独立的存储空间,每个存储空间作为分区可被独立地管理和操作。分区对数据存储、检索等应用保持透明性,且在整个表格范围内维持数据的完整性和一致性约束。
MDSS-RDB采用分区技术进行存储管理,通过对不同分区方案和大表存储的测试对比,最终的分区方案确定为以月或年作为单表存储单位,进而以日或月进行时间范围或列表分区,对地面等访问频度较高的资料则采用了组合分区方案。此外,对索引也进行了相应的分区管理。
非结构化数据的存储管理
Oracle 9i对非结构化数据提供BFILE的外部文件管理方式,可以将文件实体存储在操作系统中,而只在数据库内存储数据的元数据信息,对数据的管理和维护则通过数据库服务器统一进行。MDSS-RDB采用商用数据库复合文件管理模式,即数据库加外部文件管理的模式实现非结构化数据的存储管理,这项技术的应用使得MDSS-RDB可以实现对大量非结构化数据的存储管理和跨平台检索服务。
检索模板的技术应用
MDSS-RDB的程序调用式检索采用模板技术,各种资料的检索接口、参数定义和返回数据定义全部由模板实现,确保了同一调用接口实现对不同种类数据的检索功能。模板的使用使得检索接口具有通用性和可扩充性。
多层应用软件体系的应用
MDSS-RDB的人机交互式检索、监控系统和元数据管理系统均采用B/S结构的多层应用软件体系结构。表示层即是客户端Web浏览器,是用户接口部分,负责接受用户的请求,并显示应用输出的数据。功能层构建于IBM的WebSphere,是应用逻辑处理的核心,是具体业务逻辑的实现,其处理的数据要从表示层或数据层取得。数据层就是RDBMS,驻留在数据库服务器上,负责管理对数据库数据的存取操作。它接受应用服务器提出的 SQL请求,完成数据的存储、访问和完整性约束检查等。
链接:实时气象资料对预报贡献最大
气象资料是开展各项天气预报、气候预测等气象业务和科研的基础,能否拥有丰富全面的气象资料直接关系到各项预报、预测的准确度和气象服务的质量。实时气象资料指的是通过观测或加工所得到的在较短时间内进行传输并使用的资料。
及时应用
天气预报是根据对各种天气现象的成因及其演变规ก律研究所取得的成果,用当前的天气来预测未来的天气。特别对于预报中涉及到的雷暴、冰雹等水平尺度为几公里、时间尺度为几小时的天气现象,需要的观测资料的水平尺度分辩率越高越好,时间间隔越短越好。事实上,最接近预报时刻的观测资料对预报贡献最大,因此预报人员总是希望能及时地得到最新的观测资料。
分类提取
气象资料种类很多,但对于某项业务来说,只关心某种或某几种气象资料,而且是一类一类地提取,然后放入各自特定的数学模型中进行处理和综合分析。因此,对于实时气象资料必须进行精心的、分门别类的组织和管理,以满足各种使用的需要。
批量调用
气象资料是反映大气状态、天气过程和天气现象的可分析加工的数据,大尺度天气系统的水平尺度可达几千公里,且不受地理区域的限制。为了研究天气现象和大气变化的规律,并以此来预报未来的天气,就必须拥有大量的气象资料,不但要有本地区的,而且还应拥有跨省、跨洲际的资料。因此,一次调用基本上是某一地区的一批资料。