Top Banner
HDF5 OPeNDAP Project Update and Demo MuQun Yang and Hyo-Kyung Lee (The HDF Group) James Gallagher (OPeNDAP, Inc.)
29

HDF5 OPeNDAP Project Update and Demo

Mar 21, 2016

Download

Documents

vance

MuQun Yang and Hyo -Kyung Lee (The HDF Group) James Gallagher ( OPeNDAP , Inc.). HDF5 OPeNDAP Project Update and Demo. OPeNDAP Review. A software framework that allows simple access to remote data Data Access Protocol Client-server model Widely used by Earth Science Community. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: HDF5  OPeNDAP  Project Update and Demo

HDF5 OPeNDAP ProjectUpdate and Demo

MuQun Yang and Hyo-Kyung Lee (The HDF Group)

James Gallagher (OPeNDAP, Inc.)

Page 2: HDF5  OPeNDAP  Project Update and Demo

OPeNDAP Review

• A software framework that allows simple access to remote data

• Data Access Protocol• Client-server model• Widely used by Earth Science Community

Page 3: HDF5  OPeNDAP  Project Update and Demo

Example Usage

OPeNDAP Client

OPeNDAPHDF4 Server

HDF4

Syntactic Structure of DataSemantic Meaning of Data

Actual Content of Data

OPeNDAP Visualization Client

Page 4: HDF5  OPeNDAP  Project Update and Demo

Why Important?

• HDF5: NASA EOS / NPOESS

• NASA’s MISSION: ACCESS!

• Our MISSION: Build a DAP-HDF5 Bridge

Page 5: HDF5  OPeNDAP  Project Update and Demo

Goals

•1st: Access HDF5 data via OPeNDAP

• 2nd: Construct HDF5 data from OPeNDAP

Page 6: HDF5  OPeNDAP  Project Update and Demo

OPeNDAP HDF5 Server

1. Map HDF5 Datatypes into DAP Datatypes

2. Plus, tweaks for OPeNDAP Clients

3. Plus, tweaks for HDF-EOS Files

Goal: Access HDF5 data via OPeNDAP

Page 7: HDF5  OPeNDAP  Project Update and Demo

Mapping HDF5 Datatypes• Prototype server in 2001

• NASA Grant from Nov. 2006

• Support for Compound Datatype

• Support for Group

• Support for References / Links

• First Product Release in Mar. 2008

Page 8: HDF5  OPeNDAP  Project Update and Demo

OPeNDAP HDF5 Server

1. Map HDF5 Datatypes in DAP Datatypes

2. Plus, tweaks for OPeNDAP Clients

3. Plus, tweaks for HDF-EOS Files

Goal: Access HDF5 data via OPeNDAP

Page 9: HDF5  OPeNDAP  Project Update and Demo

OPeNDAP Clients

• I hate long variable names.• I need special attributes on dataset.• I care only Grid datatypes.• I care only well-formed attributes.

Not all OPeNDAP clients are created equal!

Page 10: HDF5  OPeNDAP  Project Update and Demo

Tweaks for OPeNDAP Clients Two configuration options• --enable-short-name• --enable-CF

Page 11: HDF5  OPeNDAP  Project Update and Demo

OPeNDAP HDF5 Server

1. Map HDF5 Datatypes in DAP-way

2. Plus, tweaks for OPeNDAP Clients

3. Plus, tweaks for HDF-EOS5 Files

Goal: Transform HDF5 access in DAP-way

Page 12: HDF5  OPeNDAP  Project Update and Demo

HDF EOS

• Grid with No Dimension data Clients expect Grid with Dimension data

• Some Attributes stored in Extremely Long String(s) (e.g. StructMetada.0) Clients expect well-structured attributes

Not all HDF5 files are created for DAP!

Page 13: HDF5  OPeNDAP  Project Update and Demo

Tweaks for HDF-EOS Two more configuration options• --enable-eos-grid • --enable-eos-meta

Page 14: HDF5  OPeNDAP  Project Update and Demo

Day After Server Tweaks• Finally, Happy Clients!

GrADSNCLFerretMATLAB

ncBrowse

IDVODC

IDL

Page 15: HDF5  OPeNDAP  Project Update and Demo

Goals

•1st : Access HDF5 via OPeNDAP

• 2nd: Construct HDF5 data from OPeNDAP Bonus: Help clients to better access EOS

Swath data

Page 16: HDF5  OPeNDAP  Project Update and Demo

HDF5 Served in OPeNDAP

• There are some things money can’t buy. For everything else, there is MasterCardTM.

• There are some things DAP can’t serve. For everything else, there is _________?

Minimize

Maximize

Page 17: HDF5  OPeNDAP  Project Update and Demo

Some Things

• Hard: Opaque, Bitmap, Enum, 64 bit Integer, Variable Length types

• Illegal: Reserved characters in DAP are used in Dataset/Group name in HDF5

(that OPeNDAP HDF5 server can’t serve)

Page 18: HDF5  OPeNDAP  Project Update and Demo

For Everything Else

• Let there be HDF5-Friendly OPeNDAP client library!

• Package and Deliver in DAP first.• Then, let the client library handle it.• Concept of Trojan Horse

Page 19: HDF5  OPeNDAP  Project Update and Demo

Example: Group in HDF5Traditional OPeNDAP client library: It’s an attribute that I don’t understand. I’ll ignore it.

HDF5-Friendly OPeNDAP client library: I was waiting for this key attribute to re-construct HDF5

Page 20: HDF5  OPeNDAP  Project Update and Demo

Example: Reference in HDF5

• Object / Regional Reference • Map to DAP URL at server• No de-referencing of URL at client library• Important for NPOESS

Page 21: HDF5  OPeNDAP  Project Update and Demo

• One more reason: Help Clients to view Swath• Only ODC can display Swath properly.

HDF5-Friendly OPeNDAP Client Library

• Easy but Rigid OPeNDAP NC Client Library! easy: same as netCDF C interface rigid: follows netCDF model

• Our client library must be Easy but Flexible

No Latitude and Longitude

Courtesy of NASA

Page 22: HDF5  OPeNDAP  Project Update and Demo

libnc-dap

???

liboc-dap

NC-Friendly OPeNDAP Client Library

libdap

dapserver

OPeNDAP NC Server

GrADS

NetCDFView NetCDFHDF5

Group/Ref/Swath

OPeNDAP HDF5 Server

View HDF5

GrADS

View G/R/Swath

HDF5-Friendly OPeNDAP Client Library

Page 23: HDF5  OPeNDAP  Project Update and Demo

Example: dap2h5

• A test application for the client library• It can construct HDF5 from DAP output

ORIGINAL

CONSTRUCTED

Page 24: HDF5  OPeNDAP  Project Update and Demo

Demo: GrADS

• GrADS is modified to use our library

• The client library provides grid mapping

from swath data

• GrADS displays swath through HDF-EOS5

specific client library API calls

Page 25: HDF5  OPeNDAP  Project Update and Demo

Caution

• Our Client Library is ONLY PROTOTYPE! It does NOT support all DAP data types It does NOT support all AURA files It does NOT support all Visualization clients

Page 26: HDF5  OPeNDAP  Project Update and Demo

Summary• HDF5 Access via OPeNDAP Is Easy / Efficient / Cool Loses some things Requires HDF5-friendly OPeNDAP Client Library

• HDF5-Friendly OPeNDAP Client Library Prototype Serves HDF5 better Benefits visualization clients

Page 27: HDF5  OPeNDAP  Project Update and Demo

Future Work• HDF5 to DAP2 Mapping Document

• Release HDF5-friendly OPeNDAP Client Library Prototype

• URL: http://hdfgroup.org/projects/opendap/index.html

Page 28: HDF5  OPeNDAP  Project Update and Demo

Credits

Mike Folk (THG)Robert McGrath (NCSA)

Peter Leonard, Daniel Kahn, Marghi Hopkins (ADNET)Christopher Lynnes, James Johnson, Denis Nadeau, Fan Fang (NASA)

Jennifer Adams (GrADS)Dave Brown (UCAR)

Page 29: HDF5  OPeNDAP  Project Update and Demo

Acknowledgement

This work was supported basing upon the Cooperative Agreement with the National Aeronautics and Space Administration (NASA) under NASA grant NNX06AC83A and NNX06AG75A. .  Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of NASA.