OGSA-DAI数据访问与集成

OMII-UK支持下的网格计算项目OGSA-DAI新近发布了3.0版本,在OGSA-DAI项目的下载页,还包含3.0版本的拓展包以及实现分布式数据查询处理的OGSA-DQP 3.2版本。

OGSA-DAI项目由于实现网格环境下的数据访问与集成,针对结构化数据资源提供可拓展的编程框架。在DAI支持下,无论是数据库、文件还是其他形式的异构数据,都可以整合在网格环境下,并且允许这些资源可以通过Web服务的方式访问。更重要的是,OGSA-DAI提供了以数据为中心的工作流处理引擎,可实现数据访问、更新、转换和传递等操作。

OGSA-DAI 3.0可以说是非常重要的一次版本升级,首先针对工作流单元做了简化,并且进一步加强DAI的拓展性和标准化,使工作流的构建更为方便。在单个工作流之中,可以同时存取多种数据源,并且支持数据流并发操作。DAI中经过重构的资源和服务部分,增强模块化并减少了功能上的重复。OGSA-DAI分别提供了与Axis 1.4和Globus Toolkit 4.0.5相适用的版本,帮助开发者整合集成建立在DAI之上的数据应用。

由于OGSA-DAI 3.0几乎完全重写了OGSA-DAI 2.2版本的源代码,所以对于之前版本的应用开发,在向后兼容性方面已经无法保证。由于JDK 1.6之中对Java.SQL的API进行了较多改动,所以OGSA-DAI 3.0依然是JDK 1.5下编译发布,不过DAI团队准备在近期发布针对于1.6版本的补丁包。同时由于标准的Oracle JDBC驱动,不符合通过JDBC API插入BLOB字段的规范,所以对于Oracle数据库,DAI仍不支持插入BLOB字段。更多细节,可以在OGSA-DAI 3.0的用户手册中读到。

OMII是由英国EPSRC资助的网格计算研究机构,研究机构位于Southampton大学,其中OGSA-DAI的研究机构位于Edinburgh大学,研究团队都致力于将网格技术带入到实际的e-Science项目之中。在最近OGF的第21次会议资料中,也可以通过DAI开发者对于项目的 介绍文稿来了解3.0版本的最新进展。

适于科学计算的Kepler项目

开源的世界里总能发现有意思的项目,Kepler就是这样一个出色的科学计算工作流设计平台。Kepler项目由美国科学基金NSF支持,UC Berkeley和San Diego超级计算中心联合基于Java开发,目的是打造一个通用的科学工作流集成平台,并且将整合多种已有的计算模型。应用于仿真、建模的Ptolemy项目为Kepler提供了底层支持,同时Kepler的不少开发着都来自Ptolemy项目。有意思的是,在天文学发展的历史上,Kepler本人是日心说的支持者,而Ptolemy则是坚定的地心说支持者,曾经观点截然对立的两个人现在却成了两个相互支撑的项目名称。

在生物学、生态学以及天文学等领域内产生的科学数据往往需要经过复杂的分析和过滤才可以使用,这样的过程常会牵扯到大量的数据处理,Kepler集成了应用于网格计算的Globus组件,可以根据需要将应用部署在网格环境下面。同时Kepler允许用户定义自己的Web Service或者在线搜索可用的Web Service应用在数据处理流程中,使得虚拟化的服务可以随时动态调用。

Kepler的基本组件调用单元称为本体(Ontology),可以集成在数据处理过程中的本体有角色(Actor)、组件(Component)、项目(Project)、规则(Discipline)和统计(Statistics)等。用户不仅可以使用内置的本体组成工作流,还可以将自己的算法和组件定制为专用本体,对工作流程进行灵活的拓展。Kepler的应用非常广泛,目前国内关注此项目的人还比较少,希望将其应用在网格环境下各种服务的整合上,还需要再仔细研究。优秀的开源项目给我们提供了赶超国外先进水平的契机,如何好好利用,还需要后续的不断努力在行。

使用Eclipse开发网格服务及其相关

一直比较喜欢IBM Developer Works上的教程,大部分做的很细致而且基本都有源代码示例。不过最近调试IBM发布的使用Eclipse开发网格服务教程,示例代码中应该是有两个类没有实现,未能调试成功。还反馈给了IBM DW中文版的编辑,不过文章的原创是老美,也不知道人家会不会改正一下。(更正:文档重新细致的看了一遍,添加了漏掉的步骤,IBM的例子已经于06年3月31日调试通过,为我的不扎实做一下检讨)

推荐两个值得关注的网格、Java相关的开源项目:
1. GT4IDE:这个项目可以将Globus4集成到Eclipse中简化网格服务的开发,来自西班牙的开发者Borja正在攻读芝加哥大学的CS博士学位,看了一下他的简介,发现是个积极活跃的分子。

2.WebRCP:这个项目可以将Eclipse发布的RCP产品转化到Java Web Start的基于Web的应用上来。很不错,这样可以免去开发者编写JNLP配置文件的工作,同时可以规范化程序的结构。

时间似乎有些紧张,但感觉学习一直没有太大的进展,而且不经意就会遭到一连串小的打击,看来的好好计划一下了 :)

开源领域的精彩世界

常被商业软件冲昏头脑的我们,可以稍稍休息一下,去开源的世界里呼吸一下清新的空气。今天上午的报告会和下午的讨论了解了不少新的东西。总结了一下今天的收获,把值得关注的几个项目推荐给爱好开源软件的朋友们,主要是我感兴趣的Java和GIS的主题。

1.巴西航空航天局的TerroLib项目(http://www.dpi.inpe.br/terralib/),可以基于其提供的模块开发从中间件到产品的各类GIS应用。
2.俄国人利用Java开发的ww2d项目(http://ww2d.csoft.net),令我比较激动的产品,源代码很少,但可以加载NASA(美国航空航天局)在World Wind项目中使用Blue Marble高精度数据。打算研究一下,将其集成到Eclipse的富客户端产品框架之内。(右为其截图)
3.OSSIM项目(http://www.ossim.org)应用于遥感、摄影测量等的高效平台,不过这些不太在行,OSSIM在GIS方面应用也很广,有建立三维数字地球的osgPlanet组件。
4.作用于统计领域的R2语言,可以应用在空间统计分析等领域中,这个以后慢慢了解。

网格DAI试验图片

网站加入了Gallery2相册的支持,因为图片是最直观的表现方式,把相册放在网上会很有意思,并且将Wordpress与相册通过插件进行整合。

发现SourceForge屏蔽了不少的国内IP地址,相册的下载真是大费周折,先是在Google上搜索其他下载站点未果,然后干脆在装有麒麟OS的服务器上登陆SF的CVS,导出了所有Gallery2相册的代码,结果是程序和插件的版本不兼容,最后只有拜托辛巴在米国帮我下载了程序传过来。真是不容易,呵呵,好在和陈师兄聊的很开心,感觉对于感兴趣的主题相互争论发言是件很有意思的事情。

为了测试相册,上传了几幅用OGSA-DAI通过WebService发布网格数据库服务的截图,呵呵,随着GloBus转向WSRF的支持,不知道DAI的下一个版本会不会也会改变,总之目前的研究都是跟着国外走,希望能多有一些自己的核心技术。