当前位置:论文网 > 论文宝库 > 信息科技类 > 计算机应用论文 > 正文

浅谈虚拟天文台中利用WebServices技术进行数据发布

来源:UC论文网2016-01-20 21:44

摘要:

虚拟天文台是以无缝、透明的方式查询异构异地天文数据中心的系统,它为天文学家服务. 自国际虚拟天文台联盟( IVOA) 框架发布以来,以 WebServices 技术为核心的天文信息服务系统开始

  虚拟天文台是以无缝、透明的方式查询异构异地天文数据中心的系统,它为天文学家服务. 自国际虚拟天文台联盟( IVOA) 框架发布以来,以 WebServices 技术为核心的天文信息服务系统开始不断的发展,如美国国家航空航天局( NASA) 和法国斯特拉斯堡天文数据中心( CDS) 利用 Web Services技术对分散在异地的数据进行了整合,对多波段数据进行联合访问并进行交叉证认等,为天文学家提供天体图像、光谱、星表、文献等各种天文数据资源; 美国国家虚拟天文台( NVO) 通过门户网站发布相关信息、提供基于 Web Service 技术的各种查询工具并提供资源下载. Sloan 数字巡天项目( SDSS) 也运用了 Web Services.国内虚拟天文台( VO) 的开展仍存在较多的困难,研究团队较少,国内对 VO 的认可程度较低. 在数据访问技术上赶上国际的常规水平,以 VO 的框架为标准,实现国内数据的发布,提供必要的 WebServices 服务无疑是必要且急迫的.整体来看,我国的虚拟天文台相关研究经过了一个发展高峰期后归于平静,目前处于相对的低潮期. 除了国家天文台信息中心崔辰州团队,以及LAMOST 赵永恒研究员团队,其它天文相关团队采用 VO 架构进行天文数据存储、归档、检索基本上是一片空白,分析其原因,主要的问题在于:

  ( 1) VO 概念过于复杂是影响当前推广应用的主要原因;( 2) VO 是一个标准,对不同的望远镜数据发布不存在一个统一的解决方法,其具体的实现完成需要进行定制,急需对大量的天文数据进行快速地处理和发布. 但是,面向国际的海量数据处理、展现发布等还很缺乏,天文数据基本处于一种只进不出的局面;( 3) 应用系统的需求变化较快,常规方法虽然开发快,但维护困难. 而采用 Web Services 相关技术开发,所需要的技术复杂,开发周期较慢,调试与维护相对困难.
  
  1 相关工作

  1. 1 Web Services 的定义及在天文领域的应用
  
  Web Services是以标准的 Web 协议为不同平台应用服务的互操作提供服务的一种服务导向架构技术.Web Services 将业务服务化,通过开放的 HT-TP、XML 协议,可不改变当前软件系统而完成更新或添加服务,满足新的应用需求,还可以很好的为异地异构用户提供相应的服务. Web Services 具有的跨平台、开放、松耦合的特性,很好的满足了具有异地异构特性的数据密集型天文数据发布的需求.因此,通过 Web Services 发布各种天文数据信息,对于天文研究是积极而有意义,在目前也是非常紧迫的.近年来,IVOA 制定了一系列的 XML Web Ser-vicess 的技术标准,替代了早期流行的 HttpGet 协议. 如基于标准 VO 接口的 Web Servicess,即 VOServices. 2010 年 EVO ( euro - vo) 使用基于 STAP( Simple Time Access Protocol) 的 AstroGrid 集成了事件数据,通过客户端或 VO 访问工具,Web Serv-ices 实现了查询事件接口应用; 美国宾夕法尼亚大学研发的 Vostat 是基于虚拟天文台架构的,可进行多分辨率 K 维树的聚类和离群数据探测、主分量分析和存在分析等,它也采用了 Web Services 技术进行面向天文的统计分析; 美国虚拟天文台的交叉证认工具 OpenSkyQuery 实现了通过 Web Services将分布的天文数据进行联合,实现星表的交叉认证,支持多种数据库但查询的行数不能超过 5000行. 英国虚拟天文台 AstroGrid 中实现 Cone Search服务采用的是 SOAP 式的 Web 服务. 利用 WebServices 技术,可建立模块化的架构,其中底层支持异构数据库,通过制定简单标准的接口服务,为上层的各类天文应用提供服务,从而使这种多层架构具有更强的互操作性.
  
  1. 2 Web Services 在我国的应用情况
  
  2003 年崔辰州提出 Web Services 是 VO 的三大支柱技术之一. 为实现对天文资源的无缝访问,中国虚拟天文台( CVO) 开发了相应的项目,其中使用了 WebServices 的 代 表 项 目 如 下: SkyMouse 利 用 WebServices 整合了很多的天文服务,辅助天文学家完成科研工作; VOFilter 是由 CVO 开发的基于过滤器的 XML 项目,目的是将表格数据文件从 VOTa-ble 格式转化为 Open Document 格式; 面向星历研究人员和天文程序开发人员的星历计算服务平台- - China - VO Ephemeris WS,利用 JNI 和 WebServices 等技术克服了复杂且耗时的星历计算. 以上项目证明了 Web Services 在数据整合中得到了较好的应用,但国内目前尚缺乏将 Web Services 用于数据发布中的有效研究和应用.
  
  1. 3 基于锥形检索和 REST 的天文数据发布
  
  Web Services 有两种服务: SOAP 和 REST. 二者在基本层次上的区别主要取决于应用程序是面向资源的还是面向活动的. SOAP 通常是面向活动的;而 REST 是面向资源的,且它的效率和易用性更好. 因简单锥形检索( SCS) 是面向资源的,且根据IVOA 中的标准,多数的数据服务都是基于 REST风格的,所以本文选择基于 REST 的 Web Serv-ices.简单锥形检索( Simple Cone Search,SCS) 协议是在指定半径的锥形天区中的检索. 通过圆形天区中心坐标和搜索半径可确定天区范围,创建并搜索给定天区中表格化的天体目标,它是由 IVOA 制定的相应规范. 简单锥形检索的接受 Http Get 请求,表现形式为基本 URL 或带约束限制条件的 URL查询; 约束限制条件包括赤经( RA) 、赤纬( DEC) 、搜索半径( Radius) 三个参数值; 查询返回结果必须是 VOTable 格式的 XML 文件,以表格形式展现该锥形天区内天文数据信息.本文以锥形检索服务为突破口,利用相应的软件自动生成技术实现对天文 IVOA 框架下的锥形检索进行自动生成.
  
  1. 4 软件定制技术
  
  本文进行了相关软件定制的设计,具体流程如下:

  ( 1) 通过分析当前成熟可用的天文 Web Serv-ices,形成可用的输入,通过拣取需要的信息得到常量和函数从而生成相应的各种文件.( 2) 通过分析特定应用( 如锥型检索) ,形成带有特殊标记的源代码,将天文数据访问等语句嵌入到源代码中,使底层结构和复杂的查询操作分开.( 3) 通过输入源代码,建立对话框控件及其代表的变量之间的映射关系.( 4) 采用 Velocity 这一源代码开放的 Java 模版引擎,定义模板文件和包含特定类所需的文件信息,并产生应用所需的基类,再继承该基类,最终完成类的生成.( 5) 最后,通过模型驱动方法定制满足相应图形用户界面和服务的模板,为多层应用生成所有的代码. 实现抽象数据模型的定制,通过配置数据逻辑对应关系,实现异构数据源的统一.2 系统的设计与实现。。

  2. 1 基于 GUI 的快速定制
  
  Web Services 原型系统流程 天文研究人员需要进行快速的数据处理,用高层工具来快速的搭建各种问题处理组件,以此来验证各种科学设想. 本文提供了一种快速数据发布的系统. 数据发布系统通过数据访问层实现对多数据源的访问,如图 1 所示.【图1】
论文摘要
  
  通过定义抽象数据模型,可配置数据逻辑关系对应,实现异构数据源的统一,实现基于简单锥形检索协议的数据访问并实现 Web Services 的定制发布. 其中的数据查询结果通过 Web Services 返回,从而将可定制的数据服务无缝的进行了封装,实现了异构天文数据的快速发布,方便了天文工作者对不同数据的快速查询.图 2 指明了抽象数据的定制. 用户通过数据访问服务可以定制自己感兴趣的数据源和数据文件,基于锥形检索数据访问协议,定制满足该协议的检索字段,完成数据逻辑关系配置,屏蔽了不同数据源,完成基于 Web Services 构建的天文数据发布.【图2】
论文摘要
  
  完成天文数据的定制和发布后,天文学家可通过输入定制返回的检索字段值,实现相应的数据访问协议查询,如在简单锥形检索中将查询字段 - 赤经( ra) 、赤纬( dec) 和半径( radius) 的值输入,系统会把查询信息通过 http 协议提交到数据访问对象( DAO) 端,在后台根据给定的数据源信息,返回满足查询条件参数的结果.利用软件工程中的软件复用与软件自生成技术,基于简单锥形数据检索协议对当前天文服务构建中的技术细节进行封装,以给出可以在最大程度上满足天文学家进行信息发布需要的 Web Serv-ices 构建模板,通过简单的定制( 或配置) 就可以实现快速简化的天文 Web Services 构建,满足虚拟天文台建设的需要.
  
  2. 2 系统架构及测试
  
  本系统分为三层架构,第一层为数据资源层,包括星表数据、元数据信息和相应的服务,向上层提供基本的数据访问服务; 第二层是数据处理层,包括数据查询、处理及 VOTa-ble 格式封装; 第三层是数据访问层,为客户端提供具体的数据访问服务,如图 3 所示.【图3】
论文摘要
  
  最底层的数据资源层采用天文数据结点,它位于 CVO 架构的底层,支持 IVOA 的数据访问标准,支持网络环境下异构的各种星表数据资源及星表数据库系统等,并将它们统一组织起来,通过系统提供的数据访问与管理服务屏蔽底层数据资源的异构性,并在其架构上为用户提供直观、方便、规范的访问和操作接口. 用户通过数据访问协议层定制自己感兴趣的数据源,而这些数据源则在天文数据结点的基础上进行配置,从而实现采用不同协议对异地异构的天文数据进行访问和数据处理. 本文重点介绍采用简单锥形检索协议的数据查询操作,流程如图 4.【图4】

论文摘要  
  访问层 Clients 定制数据源,输入赤经、赤纬和半径的查询参数,通过检索快速查询天文数据结点的相关天文数据( 数据处理) ,返回符合查询条件的 VOTable.通过使用 WS - I 测试工具( WS - I Test Tool)拦截并记录客户端与服务器之间的消息,该面向天文数据的快速定制 Web Services 的构件符合 IVOA基本概要( Basic Profile ) ,满足测试要求.
  
  3 总 结

  本文详细调研了虚拟天文台中利用 Web Serv-ices 技术进行数据发布的情况,针对简单锥形检索服务构建了基于 GUI 的快速定制 Web Services 原型系统,实现了可定制的多种数据服务,详细阐述了系统架构、流程及软件定制的核心技术,以实现天文数据的快速发布.
  
  参考文献:

  [1] 张彦霞,赵永恒. 虚拟天文台的科学意义[J]. 天文学进展,2004,22( 4) : 350-353.
  [2] GRAHAM M J,FITZPATRICK M J. MCGLYNN T A.The national virtual observatory: tools and tecniques forastronomical research [C]. ASP Conference series,2007.
  [3] SSZALAY A,BUDAVARI T ,TANUMALIKA,et al. WebServices for the virtual observatory[C]. Proceedings ofSPIE,2002: 22-28.
  [4] 崔辰州,赵永恒. 中国虚拟天文台研究策略与重点[J]. 天文研究与技术,2004( 1) : 203-209.
  [5] SCHAAFF A,GRAHAM M. IVOA Web service basieprofile[J / OL]. [2013 - 06 - 10].
  [6] MALIK T,SZALAY A S,BUDVARI T,et al. SkyQuery:A Web service approach to federate databases[DB].CoRR,2002.
  [7] GROUP G. IVOA support interfaces[EB/ OL].[2013- 06 - 15]
  [8] 孙华平,崔辰州,赵永恒. 天文服务的统一调用及其在 SkyMouse 系统中的实现[J]. 天文研究与技术,2008,5( 2) : 130-136.
  [9] 李晓科,季凯帆,邓辉,等. 面向 Web 服务的天文数据发布技术[J]. 天文研究与技术,2012,9( 11) : 70-77.
  [10] 张月梅. 锥形检索 Web 服务的 REST 式设计和实现[D]. 天津: 天津大学,2009.

核心期刊推荐