Integrating HDF5 with SRB

22
December 1, 2005 HDF & HDF-EOS Workshop IX Peter Cao, NCSA December 1, 2005 Sponsored by NLADR, NFS PACI Project in Support of NCSA-SDSC Collaboration Object-level Access to Remote Files Integrating HDF5 with SRB

description

Integrating HDF5 with SRB. Object-level Access to Remote Files. P eter Cao, NCSA December 1, 2005. Sponsored by NLADR, NFS PACI Project in Support of NCSA-SDSC Collaboration. Outline. Introduction to the HDF-SRB project The HDF-SRB model SRB Support in HDFView. - PowerPoint PPT Presentation

Transcript of Integrating HDF5 with SRB

Page 1: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX

Peter Cao, NCSA

December 1, 2005

Sponsored by NLADR, NFS PACI Project in Support of NCSA-SDSC Collaboration

Object-level Access to Remote Files

Integrating HDF5 with SRB

Page 2: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 2/22

Outline

Introduction to the HDF-SRB project

The HDF-SRB model

SRB Support in HDFView

Page 3: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 3/22

Overview of SRB What is

SRB

The SDSC Storage Resource Broker (SRB) is client-server middleware that provides a uniform interface for connecting to distributed data storage in multiple types of storage resources.

Page 4: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 4/22

Overview of SRB

Architecture

SRB Client

SRB Server

MCAT

DB2 FTPHDF5ObjStore HPSS Unitree

Distributed Storage Resources: database system, archival storage system, file system, ftp

Page 5: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 5/22

Project Description

Motivation

SRB HDF5

Indexing and searching Distributed data system Access control

Large and diverse data High performance access Interactive and subsetting

High performance distributed data system

Page 6: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 6/22

Remote Data Access on SRB

Methods

Normal ways to access SRB:Get the whole file: large files (100TB

SCEC)Use POSIX low level calls: low

performance

New way: Implement proxy operations to access

objects or parts of objects in one request

Page 7: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 7/22

Project Description

Goals

Working prototype of client/server system forobject-level access to HDF5 stored in the SRB

Use SRB as middleware to transfer data between the server and client Use Object-level access for interactive and efficient access to part of the file

Page 8: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 8/22

Normal SRB File Access Architecture

SRB ServerSRB Server

HDF5HDF5

MCAT

HDF5 File(whole file or a

sequence of bytes)

clientclient

Page 9: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 9/22

Object-level File Access Architecture

SRB ServerSRB Server

HDF5HDF5

MCAT

HDF5 LibraryHDF5 Library

HDF5-SRB Module(pack/unpack messages)

HDF5 Object(File, Group, Dataset,

Subset, Attribute)HDF5 Object

(File, Group, Dataset, Subset, Attribute)

HDF5-SRB Module(pack/unpack messages)

clientclient serverserver

Page 10: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 10/22

Examples of File Access

HDF5HDF5

I need to see the eye of Hurricane Bob!

Page 11: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 11/22

Examples of File Access Whole file

transfer

HDF5HDF5

Get the file

Page 12: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 12/22

Examples of File Access Whole file

transfer

HDF5HDF5

Transfer large image – slow!

HDF5HDF5HDF5HDF5HDF5HDF5

Page 13: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 13/22

Examples of File Access SRB

POSIX API

HDF5HDF5

I need to see the eye of Hurricane Bob!

Page 14: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 14/22

Examples of File Access SRB

POSIX API

HDF5HDF5

Many small messages – slow and complex!

image foundimage open

open image

find imagefile’s open

Open file

Page 15: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 15/22

Examples of File Access Object

level

HDF5HDF5

Get me the eye of hurricane Bob

Page 16: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 16/22

Examples of File Access Object

level

HDF5HDF5

One request & small image – fast & simple!

Get me the eye of hurricane Bob

Page 17: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 17/22

HDF5-SRB Model New

objects/APIs

A new set data objects H5File, H5Group, H5Dataset, H5Datatype, etc Encapsulated client requests and server results

Enhanced SRB APIs Pack/Unpack routines (exchange data between

byte stream and structure) to handle complicated struct – string, pointers, pointers to arrays, arrays of pointers, etc

New srbGenProxyFunct (general Proxy Function) handles other types of request besides HDF5

Page 18: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 18/22

HDF5-SRB Model Data Flow

Client APIsrbObjRequest(void *obj, int objID)

Server APIsrbObjProcess(void *obj, int objID)

srbGenProxyFunct

1. packMsg()

2. u

npac

kMsg

()

HDF5 Library

HDF5 file

3. H5Obj::op()

4. Access file

5. H5Object

6. p

ackM

sg()

7. unpackMsg()

SRB Server

Page 19: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 19/22

Runing Server/Client

A SRB server that supports HDF5 HDF5 library and other external libraries (SZIP, ZLIB) A SRB version 3.4 or later from

http://www.sdsc.edu/srb/ Follow instruction on how to run SRB server from UG

packed with SRB source release or online at http://hdf.ncsa.uiuc.edu/hdf-srb-html/HDF-SRB-UG.html

Any client application that implements HDF5-SRB Objects No HDF5 library is required on the client Example client application: HDFView 2.3 or above

Page 20: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 20/22

Short Demo HDFViewSupport Windows and LinuxMay support SGI, AIX if there is new funding

Page 21: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 21/22

Future Work?

Writing capabilities: the current HDF-SRB implementation only supports read-only operations. We propose to add write functionality so that users will be able to create new files and data objects, and to modify data content and attributes.Better support for complex datatypes such as compound datatype and variable length datatypeSupport for HDF5 indexing and ingesting HDF5 metadata, which will enable users to access HDF5 objects directly through MCATSupport for files across different servers (or SRB federation)More features for HDFView: compared to its local file-handling capabilities, the current version of HDFView has very limited features for remote file access on an SRB server.

Page 22: Integrating HDF5 with SRB

December 1, 2005 HDF & HDF-EOS Workshop IX 22/22

Question / Comments?