21
GRASS 文文文文文文文文 / 文文文文文文文 2010-08-17

GRASS 文件预留系统

  • Upload
    asher

  • View
    268

  • Download
    0

Embed Size (px)

DESCRIPTION

GRASS 文件预留系统. 黄秋兰 / 高能所计算中心 2010-08-17. 主要内容. 项目背景及意义 系统设计与实现 系统的关键技术 总结与展望. 项目背景. GRASS ( Grid-enabled Advanced Storage System )是异构介质的分级存储系统 GRASS 文件预留系统的处理对象是 GRASS 中的海量数据 GRASS 文件预留系统是 BES 数据管理系统的有机组成部分. 解决的问题. 存在问题 GRASS 的迁移策略:存储池水位和迁移时间间隔( 系统级的因素 ) 没有全面考虑 用户的使用模式与需求 采取的措施 - PowerPoint PPT Presentation

Citation preview

Page 1: GRASS 文件预留系统

GRASS 文件预留系统

黄秋兰 / 高能所计算中心2010-08-17

Page 2: GRASS 文件预留系统

主要内容

项目背景及意义 系统设计与实现 系统的关键技术 总结与展望

Page 3: GRASS 文件预留系统

项目背景 GRASS ( Grid-enabled Adv

anced Storage System )是异构介质的分级存储系统

GRASS 文件预留系统的处理对象是 GRASS 中的海量数据

GRASS 文件预留系统是 BES数据管理系统的有机组成部分

Page 4: GRASS 文件预留系统

解决的问题 存在问题

GRASS 的迁移策略:存储池水位和迁移时间间隔(系统级的因素)

没有全面考虑用户的使用模式与需求

采取的措施 基于用户级的数据迁移,生成用户指定的文件预留列表 ,根据预留列表

将用户预留的文件保存在磁盘上

避免用户频繁访问的数据迁移到磁带库,从而提高数据访问速度

Page 5: GRASS 文件预留系统

系统总体设计

为高能所计算中心的 GRASS 系统提供服务,改进 GRASS 系统的数据

迁移功能,实现面向用户的数据迁移,从而提高用户访问数据的速度。

MySQL

预留信息

用户

服务器

cron.daily

文件列表

文件列表

文件列表

C/S形式

B/S形式

预留信息存取

Page 6: GRASS 文件预留系统

GRASS 文件预留系统 ----C/S 形式 使用形式: reserve 命令参数 [--dataset] 文

件名 / 数据集名 命令参数:

-q 查询预留信息 -c 修改预留天数 -r 预留文件 -d 删除预留文件

注:支持正则表达式 File1*,file2?,…,file[x-y] ( 其中 *、?、[x-y] 位置任意 )

用户输入

存取数据库

合法性检验

命令参数检验

文件信息检验

cron.daily

预留列表生成

预留列表

GRASSStorage

Page 7: GRASS 文件预留系统

GRASS 文件预留系统 ----B/S 形式

GRASS目录树浏览

预留信息浏览

信息浏览

存取数据库

用户登录 AFS登录认证API

API

DataSetBookkeeping

GRASSStorage

Mysql

Hibernate

cron.daily预留文件列表

系统的 WEB 形式主要基于 Structs+Hibernate+Mysql 框架开发

Page 8: GRASS 文件预留系统

子模块设计

用户选定预留目录

预留

当前

页对象

预留所有

对象

预留某个

对象

浏览GRASS目录树结构用户登录

用户名合法性判断

密码合法性判断

AFS账户认证

浏览GRASS预留信息

选定欲修改对象

修改预留天数

用户选定欲修改目录

修改当前页对象

修改所有对象

修改某个对象

浏览GRASS目录树结构

输入欲修改对象

Page 9: GRASS 文件预留系统

功能实现 ---- 用户登录界面

Page 10: GRASS 文件预留系统

功能实现 ---- 主页显示

显示当前的登录用户

Page 11: GRASS 文件预留系统

功能实现 ----GRASS 系统的目录信息

Page 12: GRASS 文件预留系统

功能实现 ----GRASS 数据操作

Browse dataset hierarchy Cancel Reservation

Reservation

Submit Transfer Request

Submit Del data Replica

Select a destination site

search your data

Page 13: GRASS 文件预留系统

功能实现 ---- 预留信息修改

用户可以对选定的预留信息进行修改,默认的预留天数为 30

Page 14: GRASS 文件预留系统

功能实现 ---- 预留信息浏览

Page 15: GRASS 文件预留系统

关键技术 ----AFS 用户登录

采用 AFS 账号登录认证 ,实现与整个集群环境的有机整合

无需对用户管理,节省资源 后台实现调用 AFS 用户认证的 klog 命令获取 tokens

Page 16: GRASS 文件预留系统

关键技术 ----Ajax 技术的使用

Server-side systems服务器 Server-side systems服务器

Datastorages,backend,Processing,legacy systems

Datastorages,backend,Processing,legacy systems

Web Server Web Server

HTTP requestHTML+CSS data

HTTP requestXML data

用户界面User Interface Ajax engine

User Interface

Browser Client

Browser ClientJavaScript callHTML+CSS data

未使用 Ajax 和使用 Ajax 的 WEB 比较

Page 17: GRASS 文件预留系统

关键技术 ----Ajax 技术的使用

GRASS 目录树的实现

采用 AJAX 技术动态构造目录树,服务器无需一次将海量数据装载到 WEB

浏览器,这大大缩短服务器的响应时间。 预留所有对象按钮的实现

在用户发出请求时,后台才处理 nsls –l filepath 命令,获取 filepath 下的所有文件,无需每次装载页面时处理,大大缩短 WEB 页面与服务器的交互时间

Page 18: GRASS 文件预留系统

关键技术 ----GRASS 文件分页显示

自定义的分页 提出的原因:当目录下文件数目太多时, nsls 、 nslisttape 等命令反应太慢 解决的方法:重新编写 GRASS 文件显示命令,每次只返回一个页面的记录数 ,

无需将所有记录数返回给 WEB 前端,解决文件数目太多(成千上万个)显示慢的问题。

使用方法: myls –s startN –e endN( 仅返回 endN-startN+1 条记录 )

Page 19: GRASS 文件预留系统

运行结果

性能测试

0

100

200

300

400

500

600

700

800

900

1 2 3 4 5测试组

用户数

进程数平均事务响应时间(秒)

KB/ s吞吐率( )每秒处理事务请求

性能上已基本满足应用需求 利用 Mercury

LoadRunner 8.1 测试软件进行测试

模拟不同的用户量进行并发测试: 10, 50, 100,500, 800 等

测试结果显示,目前系统在 400到 500 个用户并发访问下是稳定的

测试环境已部署 http://cdev01.ihep.ac.cn:8

080/FileReserve/main.jsp

Page 20: GRASS 文件预留系统

小结 本系统旨在解决 GRASS 分级存储系统的迁移策略存在的问题,实现面向

用户的数据迁移,提高用户访问数据的速度。主要实现的功能有: 实现命令行和图形界面两种用户接口

实现 WEB界面上的动态目录树构造,便于浏览 GRASS 系统的海量数据

重写 GRASS 数据显示命令,从而解决文件数目多,服务器反应慢的问题

实现基于文件、数据集以及磁带的预订

实现预留信息的浏览、修改、删除、批量预留、批量修改及批量删除功能

实现 AFS 、 GRASS 及 LUSTRE 的有机结合

具有良好的通用性和扩展性,是较好的海量数据管理软件的辅助工具。

本系统正在申请软件著作权。

Page 21: GRASS 文件预留系统

谢谢大家!