虚拟天文台数据访问 客户端设计与实现

55

Click here to load reader

Upload: noelani-battle

Post on 01-Jan-2016

59 views

Category:

Documents


3 download

DESCRIPTION

虚拟天文台数据访问 客户端设计与实现. 杨阳 指导老师: 赵永恒研究员、崔辰州副研究员. 主要内容. 论文研究的背景 论文研究的主要内容 GUI 客户端 命令行客户端 系统应用:科学应用范例 系统集成与部署 总结与展望. 主要内容. 论文研究的背景 论文研究的主要内容 GUI 客户端 命令行客户端 系统应用:科学应用范例 系统集成与部署 总结与展望. 论文研究的背景. 虚拟天文台 - 天文观测技术和计算机技术发展的产物 - 通过先进的信息技术将全球范围内的研究资源 无缝透明连接在一起形成的数据密集型网络化 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 虚拟天文台数据访问 客户端设计与实现

虚拟天文台数据访问客户端设计与实现

杨阳

指导老师:赵永恒研究员、崔辰州副研究员

Page 2: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 2

主要内容

论文研究的背景 论文研究的主要内容

– GUI 客户端– 命令行客户端– 系统应用:科学应用范例– 系统集成与部署

总结与展望

Page 3: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 3

主要内容

论文研究的背景 论文研究的主要内容

– GUI 客户端– 命令行客户端– 系统应用:科学应用范例– 系统集成与部署

总结与展望

Page 4: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 4

论文研究的背景 虚拟天文台 - 天文观测技术和计算机技术发展的产物 - 通过先进的信息技术将全球范围内的研究资源 无缝透明连接在一起形成的数据密集型网络化 天文研究与科普教育平台。 - 特征:整合天文服务资源 联合不同的天文数据 提供各种天文服务 资源共享  促进天文学的研究和普及

2002 年 6 月成立国际虚拟天文台联盟( IVOA )

Page 5: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 5

论文研究的背景 中国虚拟天文台( China - VO ) - 2002 年诞生,同年 10 月加入 IVOA - 发展: VO-enable LAMOST e-science - 天文应用工具:   SkyMouse :桌面天文信息搜索 FitHAS : FITS 文件头入库 VO-DAS :异地异构海量数据访问

Page 6: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 6

论文研究的背景 VODAS ( Virtual Observatory Data Access Servic

e ) - 天文数据:分布性、异构性和海量的数据访问 - 2006 年 5 月提出设计 VO-DAS - 在虚拟天文台环境下 、在网格中间件 OGSA-DAI 的基础 上设计开发一套符合国际虚拟天文台联盟标准的数据访 问系统 - 目的:实现异地异构海量数据资源的访问 - 功能:交叉证认和联合查询 星表、图像、光谱 一次访问上百万条记录 多种数据存储格式: CSV 、 ASCII 、 VOTable

Page 7: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 7

论文研究的背景-VO-DAS 的服务发布接口 四大类接口: RMI :资源元数据接口 DQI :数据查询接口 DAI :数据存取接口 MI :管理接口接口仅供程序使用,一般用户难 以直接访问

VO-DAS 体系结构

1 ) VO-DAS 必须要有与之相适应的客户端供用户访问异地异构海量数据资源

Page 8: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 8

论文研究的背景 VO-DAS 客户端 - 数据访问客户端的现状 美国 Open SkyQuery :只提供 Web 客户端、同步查询 一次访问最多 5000 条记录 SDSS 的 casjob 服务:只提供异步查询,分配给用户的空 间有限,非异地查询功能 查询方式 访问数据量 数据资源 用户群

2 )基于 VO-DAS 的客户端要解决目前存在 的这些问题

Page 9: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 9

论文研究的背景

- VODAS 的三种客户端: GUI :图形界面,易学易用,适合初级用户 命令行客户端:命令行方式,适合高级用户 Web 客户端:不需安装客户端即可使用 扩大了 VO-DAS 的用户群,发挥了 VO-DAS 的能力

Page 10: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 10

主要内容 论文研究的背景 论文研究的主要内容

- GUI 客户端- 命令行客户端- 系统应用:科学应用范例- 系统集成与部署

总结与展望

Page 11: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 11

GUI 客户端 特点: 所有的操作以图形界面的方式与用户交互 适合低频率的数据访问 适合小数据量的查询 可与其它 VO 工具交互协同操作

Page 12: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 12

GUI 客户端 -

总体结构

GUI 客户端设计图

Page 13: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 13

GUI 客户端 - 设计 工作流程:异步方式、同步方式 - 异步方式

客户端请求连接 获取元数据

提交异步查询

读取系统信息

监控处理任务完成,下载数据

写磁盘操作退出

异步方式工作流程

Page 14: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 14

GUI 客户端 - 设计

- 同步方式

客户端请求连接 获取元数据

提交同步查询

读取系统信息

等待数据返回与其它 VO 工具交互

数据分析处理

同步方式工作流程

Page 15: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 15

GUI 客户端 - 设计

- 两种方式异同 同:查询任务描述( ADQL ) 数据存储格式( ASCII 、 VOTabl、 FITS、 GZIP) 异:查询请求方式 结果数据处理 异步 直接保存 同步 保存 /互操作

Page 16: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 16

GUI 客户端 - 设计 结果数据处理(同步) - PLASTIC ( Platform for Astronomy Tool InterConnection ) 天文桌面应用工具之间的通讯协议 解决 VO 工具之间的互操作问题 PLASTIC HUB PLASTIC MESSAGE

Page 17: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 17

GUI 客户端 - 设计

- 结果数据处理时序

VO-DAS 与 TOPCAT 交互操作示意图

Page 18: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 18

GUI 客户端 - 设计 监控模块 - 实时监控服务器的作业,从而对客户端信息进行处

理 - 流程

监控流程控制图

Page 19: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 19

GUI 客户端 - 设计 获取元数据 - 元数据是描述数据的数据 - 给用户编辑查询任务提供参考 - 过程 请求数据资源( GetAllResource ) 解析返回的资源 XML字符串 请求表信息( GetMetaTable ) 解析返回表的 XML字符串 请求表列信息 (GetMetaColumn) 解析表列的 XML字符串 - 树形结点方式显示

Page 20: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 20

GUI 客户端 - 实现 主界面

ADQL编辑区

元数据显示

监控

GUI 客户端主界面

Page 21: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 21

GUI 客户端 -小结

• GUI 客户端是 VODAS 客户端的一种形式• 设计遵循初级用户简单易用的原则• 以图形界面的方式实现: 元数据获取、同步 / 异步查询 结果数据处理(同步)、监控处理(异步)

Page 22: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 22

主要内容

论文背景和意义 论文的主要内容

– GUI 客户端– 命令行客户端– 系统集成与部署– 系统应用:科学应用范例

总结与展望

Page 23: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 23

命令行客户端 特点: 所有的操作以命令的方式与用户交互 可以嵌入用户自己的程序中 适合高频率批量的数据访问

Page 24: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 24

命令行客户端 - 设计 总体结构:

Linux 或 Windows 环境下的 shell 或 bat 命令

后台调用服务器接口的 java 程序

Page 25: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 25

命令行客户端 - 设计

命令行客户端设计图

Page 26: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 26

命令行客户端 - 设计

工作流程 - 异步方式

发起异步请求 连接服务器

获取任务状态

提交任务

获取结果数据地址下载数据

异步方式工作流程

Page 27: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 27

命令行客户端 - 设计

- 同步方式

发起同步请求 连接服务器

等待结果数据

提交任务

返回结果数据

同步方式工作流程

Page 28: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 28

命令行客户端 - 设计

命令部分 - 与用户直接交互的部分 - 分别用 Shell脚本和批处理环境实现一套操作命令 - 实现流程:

命令实现流程

Page 29: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 29

命令行客户端 - 设计 后台部分 - 接收前台提交的数据,按照服务器接口标准予以转换, 并调用服务器接口。 与 GUI 客户端的异同: 同:对服务器接口的操作必须经由连接生成 Session 异:命令行用户每请求一次,连接一次;GUI 用户则 只连接一次 命令行服务器地址等配置信息存放于文件;GUI 则不是。 命令行以 XML 文本显示元数据信息;GUI 以树形结 构显示

Page 30: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 30

命令行客户端 - 实现 后台程序实现 实现一组支持客户端的请求操作

类名 说明

Class Commands_main

主类,所有命令的入口

Class Connect 连接服务器Class MetaData 获取并格式化元数据Class SynQ 同步查询Class AsynQ 异步查询Class Help 帮助

Page 31: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 31

命令行客户端 - 实现• 命令接口

命令名 说明

md 获取元数据

Syn 提交同步查询任务

Asyn 提交异步查询任务

Jobstatus 得到任务的状态

Dataurl 获取异步提交任务执行结果保存地址

destory 销毁服务器上任务

Page 32: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 32

命令行客户端 - 实现 应用: asyn.sh –f adqlSample 0

ftp://vodas:[email protected]/test/vodas.dat Session

Page 33: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 33

命令行客户端

Page 34: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 34

命令行客户端 -小结

• 以命令的方式提交用户请求• 适合高级用户海量数据的查询要求• 实现包含两部分:前台命令、后台程序

GUI 命令行工作方式 Push pull

开发者 复杂 简单用户 简单 复杂

GUI 与命令行比较

Page 35: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 35

主要内容

论文背景和意义 论文的主要内容

– GUI 客户端– 命令行客户端– 系统应用:科学应用范例– 系统集成与部署

总结与展望

Page 36: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 36

科学应用范例

• 目的: 用星流的运动轨迹研究银河系的引力势 在星流的运动轨道上,我们选取一类距离最容易确定

的恒星即 BHB 星(蓝水平分支星)来估算引力势。

确定包含 BHB 星所在的 A 型星区域。由于 A 型星中的 BHB 星会受到 BS 星(蓝离散星)的干扰,然后就需要分离出 BS 星来得到 BHB 星。将这些 BHB 星用工具将其可视化即可估算出 BHB 星的运动轨迹,从而可以进一步分析出银河系的引力势。

Page 37: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 37

科学应用范例• 应用步骤: 1)构造 ADQL 表达式,在 GUI 客户端查找包含 BHB 星所

在 A 型星 2 )确保 TOPCAT运行并启动内置 PLASTIC HUB 3 )将查询返回结果直接发送到 TOPCAT 4 )在 TOPCAT 中构建表达式从A 型星中筛选出 BHB 型 5 )求出 BHB 星的距离,进行坐标转换 6 )可视化 3D 图,估算运动轨迹。 从而进一步求出银河系的引力势

Page 38: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 38

科学范例 GUI 客户端同步查询结果

Page 39: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 39

科学应用范例

科学范例 3D可视化

Page 40: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 40

主要内容

论文背景和意义 论文的主要内容

– GUI 客户端– 命令行客户端– 系统应用:科学应用范例– 系统集成与部署

总结与展望

Page 41: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 41

系统集成与部署

- 数据结点配置工具

- VO-DAS 系统的集成

Page 42: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 42

数据结点配置工具• 传统的数据资源共享方式专业性强而繁杂• 数据结点配置工具解决数据资源的共享问题

Page 43: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 43

数据结点配置工具 总体结构

数据结点配置工具模块图

Page 44: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 44

数据结点配置工具 工作流程

初始化 资源部署 访问数据库

元数据显示配置元数据生成文件

Page 45: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 45

数据结点配置工具 OGSA-DAI 资源部署 - ANT : Java 工程自动化构建、部署工具 - OGSA-DAI 使用 ANT 实现资源部署 命令行 图形界面 - java编程调用 ANT 实现 OGSA-DAI 图形界面的资

源部署过程

Page 46: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 46

数据结点配置工具 数据库访问 - JDBC : Java 数据库连接应用程序接口简称,提供一套 数据库编程 API

- 实现访问已部署资源的数据库的元数据客户端 / 服务器的应用

Page 47: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 47

数据结点配置工具 元数据配置

元数据文件

Page 48: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 48

数据结点配置工具 主界面

数据结点配置工具主界面

资源部署

元数据显示

元数据配置

Page 49: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 49

VO-DAS 系统的集成 VO-DAS 系统的组成

VO-DAS Data NodeVO Registry Storage ServerClient

VO-DAS 系统关联图

Page 50: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 50

VO-DAS 系统的集成 部署步骤 1 ) VO-DAS Server :部署 VO-DAS 的 gar包及其配置文件 2 ) Data Node :运行数据结点配置工具的 jar包,经资源 配置并最终生成么metadata.xml 文件 3 ) VO Registry :将 metadata.xml 文件的 URL注册到 VO Registry 4) Storage Server :支持 AstroGrid 提供的 VOSpace ,允许 指定 FTP 或 GridFTP 5 ) Client : GUI ,设置 java_home并运行 jar包 命令行,设置 java_home 和命令存放目录 Web 客户端

Page 51: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 51

VO-DAS 系统的集成与部署 -小结

• 数据结点配置工具:实现了便捷的数据共享方式• VO-DAS 系统集成:用户访问 VO-DAS 系统必不可少

的工作

Page 52: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 52

主要内容

论文背景和意义 论文的主要内容

– GUI 客户端– 命令行客户端– 系统集成与部署– 系统应用:科学应用范例

总结与展望

Page 53: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 53

总结与展望 总结 - 客户端 GUI :适用初级用户低频率的数据查询 命令行客户端:适合高级用户高频率的数据访问 - 科学应用范例 - VO-DAS 系统的集成与部署 数据结点配置工具:生成数据结点,实现数据共享 VO-DAS 系统的集成展望 - Web 客户端的设计 - 1.0版本的发布以及后续版本中功能和性能的完善

Page 54: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 54

发表文章

• VO 数据访问服务客户端系统的设计与实现 . 杨阳 , 刘超 , 田海俊 , 崔辰州 , 赵永恒 . 天文研究与技术 , in press, 2008.

• 异地异构天文数据资源的统一访问 . 刘超 , 田海俊 , 高丹 , 杨阳 , 路勇 , 崔辰州 , 赵永恒 . 天文研究与技术, in press, 2008.

Page 55: 虚拟天文台数据访问 客户端设计与实现

23/4/19硕士论文答辩 55

谢 谢!