严源,王炜祺
(1.南京爱立信熊猫通信有限公司,江苏 南京 210000;2.江苏卫生健康职业学院,江苏 南京 211800)
气象信息是人们最为关注的信息之一,它对正常的生产生活有着直接的影响。尽管在互联网高度发达的今天,人们已经可以较为方便地获取到天气预报信息,但获取的渠道并不统一,获取的信息也不够完整,这对于生产、科研、防灾等领域的应用而言是不充分的。因此,如何高效、准确地查询显示气象信息,是一个值得深入探讨的课题。本文将基于GIS技术设计一个气象要素信息综合显示系统,充分利用了GIS技术在气象领域的应用优势。
地理信息系统(Geographic Information System,GIS)最初用于解决地理方面的应用问题,经过半个多世纪的发展,GIS的应用已经与测绘学、环境学、计算机技术等多门学科结合起来,在农业气候资源分析、城市大气污染源分析、军事地理信息系统分析及应用、科学调查、资源管理、财产管理、发展规划、绘图和路线规划等领域得到了极为广泛的应用。得益于计算机技术和全球定位系统的发展,现代GIS系统已经具备强大的空间信息集成管理、预测评估和模拟反演等能力,可以将地图的视觉化效果与地理分析功能共同集成到数据库系统中,实现对各类空间数据的基础管理和综合分析应用[1]。
人们在日常生活中接触最多的气象信息是温度和湿度,因为这两个气象要素 对人体的感官体验影响最为明显。实际上,在气象领域,除了温度和湿度两个常见的气象要素之外,还包括许多气象信息,包括压强、风速、风向、雨量、云量等。从地理的角度上看,气象信息的本质是一种时间和空间的混合型数据, 它既发生在一起的空间范围内,也会随时发生动态的变化,因此气象信息是一种动态信息,它的展示和分析也应该是动态进行的。另外,气象信息是相互影响的,一项参数发生变化,往往会对其他参数产生影响,共同导致空间气象条件的改变。基于此,建立一个气象综合显示系统是非常有必要的。
气象学主要研究大气现象的演变规律,涉及面较广,是一个典型的多学科交叉领域,一直伴随着各门技术学科而发展。GIS技术与气象领域的结合仍是一个较新的应用领域[2],这不仅是因为GIS本身的发展历程只有几十年,而且气象领域本身也过于复杂,通过GIS技术的结合应用也仍有很长的路要走。
GIS技术在气象领域的应用,最主要是得益于计算机技术的发展,尤其是计算机在数据库、数据处理、决策支持、多媒体演示等方面的优势,更是成为气象学发展的强大动力。近年虽然已经有了利用GIS系统进行气象数据处理的案例,但其应用还不够成熟,在气象数据查询、分析和预报等方面的技术还较少涉及。当前人们所熟知的天气预报一般是通过图表、文字、数字、符号等信息传递天气信息的,但更主要还是依赖于主持人的讲解,其可视化程度还有很大的改进空间。具体而言,目前GIS技术在气象领域的应用涉及气象资源信息图形处理、气象资源数据管理、气象分析与气候数据模型建立、灾害预防与农作物种植解决方案、三维数据与遥感数据的叠加显示、气象现象的模拟等等。未来的天气预报可能会朝着虚拟现实、三维可视化、人工智能等领域发展[3]。
前已述及,GIS在气象领域已有广泛应用,可以说当前的气象领域已经很难离开GIS技术,GIS在气象领域的应用已经不再局限于空间数据的展示,更是深入到气象信息的实时查询、集成管理、可视化处理和大数据分析等领域。
基于GIS的气象要素信息综合显示系统是基于现实需求进行开发的,主要解决传统气象管理系统在查询效率、展示方式、数据准确性等方面的问题。因此系统最主要的需求是结合GIS系统的应用,充分利用GIS系统对气象信息进行分析处理和显示,为生产生活各领域提供决策支持。此外,系统还需要满足基本的性能要求。
根据一般信息化系统的特点,结合气象领域的应用需求,本系统采用层次化设计思路,将系统划分为硬件设施层、网络传输层、数据持久层、中间件和应用层。其中硬件设施层是指支撑系统运行的服务器、观测设备等,用于产生气象数据;网络传输层采用无线和有线相结合的传输方式,为气象数据提供上传通道;数据持久层由数据库系统组成,用于存储气象数据和分析结果;中间件是系统开发的支持组件,可提高开发效率;应用层为用户提供各种业务功能,用户通过界面功能模块即可进行各种应用操作。
基于GIS的气象要素信息综合显示系统除了气象实时查询显示功能之外,还提供了数据传输接口、数据分析、数据导入导出、参数配置等功能。所有功能模块均集成在系统的首页,用户成功登录系统后可一键进入所需的功能模块。
图1 基于GIS 的气象要素信息综合显示系统组成结构图
气象要素数据不是一个单独的数据,而是一级气象要素的组合,体现在信息化系统中就是数据结构的定义[4]。气象要素数据包括温度、湿度、气压、风向、风速、云量、降雨量等。值得注意的是,其中的每一个参数都是包含时间和经纬度坐标的,因此每个参数又都是一个结构体定义。
气象要素数据来源于各地的气象观测站,由观测站的采集设备上传,系统通过服务器端口接收数据。在获取的方式上,可以采用主动请求的方式,也可以采用被动接收的方式,通过专门设计的数据接口对数据进行收集,具体采用哪种方式需要综合考虑数据的应用需求。系统也提供了数据录入界面,在必要的情况下,用户可以手工加载或导入数据。
在传统的数据库应用中,对于海量的数据较多是手工导入的,但是由于气象要素数据具有更新频率快及数据量较大的特性,因此需要开发数据导入功能。数据的导入是指将气象传感器采集并保存在文本文件中的气象要素数据导入到ORACLE数据库的数据表中,首先是要对文本文档的格式进行规范化处理,形成固定的格式,然后按照一定的规则对文本进行拆分处理,得到每个单独的气象要素数据。每个数据通过数据库接口,逐行添加到数据表中。为进一步提高数据添加的效率,在ORACLE中采用了批处理技术,大大提高了数据的录入效率[5]。
系统获取到的气象信息均为原始气象要素 ,而对于具体的应用而言,这些原始数据很难直接利用,所以要进行气象要素数据的分析及标准化等预处理操作,经过一系列的算法处理后得到分析结果,才能研究清楚气象变化的规律和特点。系统提供了大量的数据分析功能,可以完成对某段数据的统计,得到最大值、最小值、平均值、方差等信息。
气象要素数据在获取之后首先会以文本文件存在计算机硬盘中,对于海量气象要素数据而言,每天的数据量都会达到几百兆,如果长期保存,不仅会占用大量硬件资源,而且也不利于快速查询。为了解决这个问题,本系统选择将数据转存到数据库中。考虑到气象要素数据较多,因此采用功能和性能都十分强大的ORACLE数据库,为数据的查询提供强大的平台支撑。由于气象信息每天都在采集,因此不可能无限地保存,根据一般应用要求,本系统仅保留三天的数据在本地,超过三天的历史数据转存到远程的数据仓库中做永久保存。为了进一步提高查询速度,在ORACLE中还进行了分表处理,每个表存储一天的数据,使气象信息得到分割,提高查询效率,应用表明,这种分表技术取得了非常好的效果。
气象信息是一种抽象的信息,如果直接展示各组参数,很难直观地理解数据的含义和变化规律。气象信息可视化就是将气象要素数据以各种直观的方式展示出来,使其数据的含义、趋势、特点、相互关系都可以清晰地表现出来。本系统的可视化方式包括二维图形展示和三维空间展示。借助GIS系统的强大三维表现力,构建一个庞大的大气空间,将大量的气象要素数据以经纬度为索引,叠加显示在GIS三维空间上,并对不同的数据属性采用颜色或色块来区分,所有数据的显示模式、网格均可进行配置,从而形成了一个二维/三维气象模拟环境,为用户提供了强大的数据支持。
三维可视化对计算机有较高的要求,普通PC机很难完成流畅、快速的气象信息可视化。基于此,本文采用了专用的图形工作站用于GIS系统对气象要素数据的渲染,通过强大的OpenGL技术实现界面移动与缩放、视点变换、二维三维模型变换和投影变换,允许用户对三维空间模型进行旋转,从不同的角度进行观察,大大提高了系统的可用性。
数据导出是指将系统查询到的气象要素数据或分析结果导出到文本文档中。与数据导入的基本思路相反,首先用户要按照一定的查询条件在数据库中查询出相应的数据,然后通过系统界面的导出功能完成一键导出。同时导出的气象数据不再是采集收集来的粗数据,而是经过用户查询后的带有定制化地理信息的气象数据。系统为用户提供了EXCEL、PDF、TXT、XML、CSV等多种导出格式,适应不同的用户需求,方便拓展。
随着技术的发展,GIS系统在气象领域的应用将更加深入。借助于GIS的强大功能,气象学也将更好地开展气象相关研究,实现技术的融合发展。本文研究的基于GIS的气象实时查询系统,在实际生产生活中具有一定的应用价值。