SlideShare a Scribd company logo
1 of 47
The HDF Group

Images of HDF5
Gerd Heber
The HDF Group
The 15th HDF and HDF-EOS Workshop
April 17-19, 2012

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

1

www.hdfgroup.org
Outline
Five long stories distilled into shorts:

• A model of the information in an HDF5 file
• A new XML representation of HDF5

• HDF5 as a Service
• The HDF5 user experience I always wanted

• An odd couple – HDF5 and databases
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

2

www.hdfgroup.org
“Language shapes the way we think, and determines
what we can think about.”
(Benjamin L. Whorf)

HDF5 INFORMATION SET

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

3

www.hdfgroup.org
HDF5 Information Set
• Is a model of the content of an HDF5 file
• Provides a consistent set of definitions

• Gives an undistorted view of HDF5*
• Puts the simplicity of HDF5 center stage
*Not tainted by the idiosyncrasies of a particular API
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

4

www.hdfgroup.org
HDF5 Information Set

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

5

www.hdfgroup.org
Sources of Complexity
1. Productivity
• Finite number of parts and combining-rules
yields an infinite number of unique structures
• HDF5 groups and datatypes

2. Reference (Cohesion)
•
•

The ability to refer from one part to another
HDF5 groups, links, and references

(By comparison, databases are only weakly productive and
their referential capabilities are limited by Codd’s Information
Principle.)
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

6

www.hdfgroup.org
HDF5 Micro-Web
/

Experiment Notes:
Serial Number: 99378920
Date: 3/13/09
Configuration: Standard 3

Viz

SimOut

TBL1

IMG1

IMG3

lat | lon | temp
----|-----|----12 | 23 | 3.1
15 | 24 | 4.2
17 | 21 | 3.6

Timestep
36,000

Apr. 17-19, 2012

Parameters
10;100;1000

TBL3

Ext

IMG2

September 28-30, 2010

Every HDF5 file
has a root group

HDF/HDF-EOS Workshop XIV

HDF/HDF-EOS Workshop XV

TBL2

TBL1

7

7

www.hdfgroup.org
Hypermedia

Hypermedia – An application that uses
associative relationships among information
contained within multiple media data
for the purpose of facilitating access to and
manipulation of the information encapsulated by
the data.
[Lowe & Hall 99]

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

8

www.hdfgroup.org
The HDF Group

Questions?

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

9

www.hdfgroup.org
“We find that the same word – Fidelity – can be used
both in connection with the excellence of sound
reproduction and picture reproduction.”
(1931 Electronics Oct. 137/1)

REPRESENTING HDF5 IN XML

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

10

www.hdfgroup.org
Use Cases
1. Viewing structure and contents of an HDF5 file in a web
browser (XSLT in the browser)
2. XML as a catalog record
3. XML as a light-weight intermediate form for applications
4. Generation, validation, and reconstruction of HDF5 files
5. XML as intermediate to other data languages or file
formats (e.g., ISO, netCDF)
6. XML as machine-readable documentation
7. Templates, skeleton files, etc.
(Source: The XML DTD for HDF5: Design Notes. 12 June 2000)

10+ years on – still a pretty complete list!
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

Where are we?
11

www.hdfgroup.org
HDF5/XML Survey
• http://www.surveymonkey.com/s/RMSZSSX
• 13 replies to date (still open)
• Users are fluent in XML Schema, XPath,
XSLT, and XLink/XPointer
• Descriptive data are more important than a fullfledged data element representation
• Hardly anybody uses the HDF Group‟s XML
schema, most respondents created their own
• Split on the fidelity of the representation

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

12

www.hdfgroup.org
Why another schema?
• Address shortcomings
•
•
•
•
•

•
•
•
•

Omissions
Eliminate redundancies
De-normalized group structure representation
Dataset and attribute value serialization
Simplify tools

Reflect simplicity of the HDF5 data model
High-fidelity representation
Be neutral with respect to application domains
Future proofing

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

13

www.hdfgroup.org
High-Level Structure
<domain xmlns=“http://www.hdfgroup.org/HDF5/XML/schema/2011/11/11”
xmlns:xlink=“http://www.w3.org/1999/xlink”>
<!-- “Pointer” to the HDF5 root group -->
<root xlink:href=“903d1d75-e617-4767-a3bf-0cb3ee509027”/>
<linkbase>
<!–- Representations of HDF5 groups -->
</linkbase>
<database>
<!–- Representations of HDF5 datasets -->
</database>
<encodingbase>
<!-- Collection of representations of HDF5 datatypes -->
</encodingbase>
</domain>
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

14

www.hdfgroup.org
HDF5/XML Summary
• HDF5/XML is a high-fidelity rendering of userlevel HDF5 items in XML
• Communities/domain experts should create
XML representations that work for their users
• HDF5/XML cannot fill that role

• One can use XSLT or XQuery to connect to
the HDF5/XML tool chain (to be developed)
See me for a demo and additional information /
questions /comments / suggestions / donations
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

15

www.hdfgroup.org
The HDF Group

Questions?

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

16

www.hdfgroup.org
But let your communication bee, GET, PUT: POST,
DELETE: For whatsoeuer is more then these, commeth of
euill.”
(Matthew 5:37, KJV 1611, Tyndale
1526)

HDF5/REST*
*The support of Wenming Ye and Daniel Odievich (Microsoft) for this project is
gratefully acknowledged.
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

17

www.hdfgroup.org
Outline
• REST
• Resources
• Representations
• URIs

• Cloud / Windows Azure
• Summary

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

18

www.hdfgroup.org
REST*
*REpresentational State Transfer
[Fielding 2000]

Why create complex data service architectures when
the Internet as it was originally conceived
is perfectly suited for transferring both
hypermedia-based documents and data ?

[Scribner & Seely 2009]
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

19

www.hdfgroup.org
Four Simple Principles
1. The server maintains resources that are
separate from representations returned to clients

2. Clients manipulate resources via the
representations issued to them
3. The messages that convey representations to
the client are self-describing
4. Application state is transferred using hypermedia
techniques
[Scribner & Seely 2009]
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

20

www.hdfgroup.org
HDF5/REST Resources

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

21

www.hdfgroup.org
HDF5/REST URIs

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

22

www.hdfgroup.org
HDF5/REST URIs – Examples

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

23

www.hdfgroup.org
Examples
Get (a representation of) the HDF5 root
GET /root

Create a new HDF5 group (unlinked)
POST /groups # server replies with {groupID}

Link the newly created group as „New Group‟
POST /groups/{groupID1}/participants/New%20Group
{groupID} # content

Delete an HDF5 attribute
DELETE /datasets/{datasetID}/attributes/{name}
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

24

www.hdfgroup.org
Representations
• Clients express preferences via Accept header
Accept: application/json;0.9,
text/xml, application/xml;q=0.8,
application/octet-stream;q=0.7,
image/png, image/gif, image/jpeg;q=0.2,
*/*; q=0.1
Accept-Encoding: gzip, deflate, compress;q=0.9

• Server may reply with
Content-Type: text/xml
Content-Length: 2890
…

or
HTTP/1.1 406 Not Acceptable
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

25

www.hdfgroup.org
Windows Azure
SDK

VS

Fabric

Storage

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

26

www.hdfgroup.org
Windows Azure Implementation
Why it’s easy…
Challenges
• HDF5/XML proxy
• Cloud BLOB/block
stores aren‟t file
• XSLT does most of the
systems
heavy lifting
• Performance from
• HDF5DotNet for data
• Caching
access
• Latency hiding
• Great development
• Parallelism
and deployment tools
• Easy scale-out

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

27

www.hdfgroup.org
HDF5/REST Summary
• HDF5/REST is an “HTTP API” for HDF5
• RISC rather than CISC
• Build more complex services on top of
HDF5/REST (e.g., HDF5DNS, HDF5WHOIS)
• HDF5 domains = “virtual HDF5 files”
See me for a demo and additional information /
questions /comments / suggestions / donations

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

28

www.hdfgroup.org
The HDF Group

Questions?

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

29

www.hdfgroup.org
A Winning Team:
HDF5 + The Best Shell on the Planet

AN HDF5 MODULE FOR

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

30

www.hdfgroup.org
A Word from the Author
“In the end, there’s no hard-and-fast distinction between
a shell language and a scripting language. Some of the
features that make a good scripting language result in
poor shell user experience.
Conversely, some of the features that make for a
good interactive shell experience can interfere
with scripting.
Because PowerShell’s goal is to be both a good scripting
language and a good interactive shell, balancing the
tradeoffs between user experience and scripting
authoring was one of the major design challenges.”
(Bruce Payette)
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

31

www.hdfgroup.org
Provider Core

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

32

www.hdfgroup.org
Show Time

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

33

www.hdfgroup.org
Windows PowerShell Resources
• Bruce Payette, Windows PowerShell in Action,
2nd Edition, Manning 2011
• Scripting with Windows PowerShell

• Windows PowerShell: Learn It Before It‟s an
Emergency – Part 1-5
• Windows PowerShell Blog

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

34

www.hdfgroup.org
The HDF Group

Questions?

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

35

www.hdfgroup.org
“Complaint for true loue vnrequited.”
(Sir Thomas Wyatt, 1542)

HDF5 AND DATABASES

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

36

www.hdfgroup.org
Fatal Attraction
• The power and simplicity of the relational
model
• SQL is a declarative language
• Optimizable
• Data independence

• Greater productivity, because it‟s easier to
express intent at a high-level
(Source: Don Chamberlin on SQL in “Masterminds of
Programming”, O‟Reilly 2009)

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

37

www.hdfgroup.org
First Symptoms (Mid-Late 90s)

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

38

www.hdfgroup.org
HDF and HDF-EOS Workshop 1

An HDF-EOS DataBlade
using Informix‟s Object- Relational
Database
Renu Chaudhry ECOlogic

www.ecologic.net

September 8-10, 1897
GSFC, Maryland
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

39

www.hdfgroup.org
BCS Universal File Interface

Source: Barrodale Computing Services Ltd.
http://www.barrodale.com/universal-file-interface-ufi
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

40

www.hdfgroup.org
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

41

www.hdfgroup.org
SciQL Highlights
• An extension of SQL:2003 (pronounced as
„cycle‟)
• Array as first class citizens of DBMS
• Seamless integration of tables and arrays
• Named dimensions with constraints
• Flexible structure-based grouping

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

42

www.hdfgroup.org
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

43

www.hdfgroup.org
HDF5/DBMS Summary
Three significant developments:
• Arrays can be first class citizens
• Database file systems offer the potential to
store Level 0 data and analyze Level 1 and
Level 3 data within the same DBMS
• All vendors (IBM, Microsoft, Oracle) have rolled
out BigData connectors

Databases have morphed into data hubs.
We are working hard to get HDF5 connected!
Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

44

www.hdfgroup.org
The HDF Group

Thank You!

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

45

www.hdfgroup.org
Acknowledgements
This work was supported by Subcontract number
114820 under Raytheon Contract number
NNG10HP02C, funded by the National Aeronautics
and Space Administration (NASA) and by
cooperative agreement number NNX08AO77A from
the NASA. Any opinions, findings, conclusions, or
recommendations expressed in this material are
those of the authors and do not necessarily reflect
the views of Raytheon or the National Aeronautics
and Space Administration.

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

46

www.hdfgroup.org
The HDF Group

Questions/comments?

Apr. 17-19, 2012

HDF/HDF-EOS Workshop XV

47

www.hdfgroup.org

More Related Content

What's hot

Python and HDF5: Overview
Python and HDF5: OverviewPython and HDF5: Overview
Python and HDF5: Overview
andrewcollette
 

What's hot (20)

NASA HDF/HDF-EOS Data for Dummies (and Developers)
NASA HDF/HDF-EOS Data for Dummies (and Developers)NASA HDF/HDF-EOS Data for Dummies (and Developers)
NASA HDF/HDF-EOS Data for Dummies (and Developers)
 
Using HDF5 and Python: The H5py module
Using HDF5 and Python: The H5py moduleUsing HDF5 and Python: The H5py module
Using HDF5 and Python: The H5py module
 
HDF & HDF-EOS Data & Support at NSIDC
HDF & HDF-EOS Data & Support at NSIDCHDF & HDF-EOS Data & Support at NSIDC
HDF & HDF-EOS Data & Support at NSIDC
 
Parallel HDF5 Developments
Parallel HDF5 DevelopmentsParallel HDF5 Developments
Parallel HDF5 Developments
 
HDF-EOS 2/5 to netCDF Converter
HDF-EOS 2/5 to netCDF ConverterHDF-EOS 2/5 to netCDF Converter
HDF-EOS 2/5 to netCDF Converter
 
Status of HDF-EOS, Related Software and Tools
 Status of HDF-EOS, Related Software and Tools Status of HDF-EOS, Related Software and Tools
Status of HDF-EOS, Related Software and Tools
 
Python and HDF5: Overview
Python and HDF5: OverviewPython and HDF5: Overview
Python and HDF5: Overview
 
HDF OPeNDAP Project Update and Demo
HDF OPeNDAP Project Update and DemoHDF OPeNDAP Project Update and Demo
HDF OPeNDAP Project Update and Demo
 
NetCDF and HDF5
NetCDF and HDF5NetCDF and HDF5
NetCDF and HDF5
 
Easy Access of NASA HDF data via OPeNDAP
Easy Access of NASA HDF data via OPeNDAPEasy Access of NASA HDF data via OPeNDAP
Easy Access of NASA HDF data via OPeNDAP
 
GES DISC Eexperiences with HDF Formats for MEaSUREs Projects
GES DISC Eexperiences with HDF Formats for MEaSUREs ProjectsGES DISC Eexperiences with HDF Formats for MEaSUREs Projects
GES DISC Eexperiences with HDF Formats for MEaSUREs Projects
 
Substituting HDF5 tools with Python/H5py scripts
Substituting HDF5 tools with Python/H5py scriptsSubstituting HDF5 tools with Python/H5py scripts
Substituting HDF5 tools with Python/H5py scripts
 
HDF5 Tools
HDF5 ToolsHDF5 Tools
HDF5 Tools
 
Hdf5 is for Lovers (PyData SV 2013)
Hdf5 is for Lovers (PyData SV 2013)Hdf5 is for Lovers (PyData SV 2013)
Hdf5 is for Lovers (PyData SV 2013)
 
Introduction to HDF5
Introduction to HDF5Introduction to HDF5
Introduction to HDF5
 
NASA HDF/HDF-EOS Data Access Challenges
NASA HDF/HDF-EOS Data Access ChallengesNASA HDF/HDF-EOS Data Access Challenges
NASA HDF/HDF-EOS Data Access Challenges
 
Easy Remote Access Via OPeNDAP
Easy Remote Access Via OPeNDAPEasy Remote Access Via OPeNDAP
Easy Remote Access Via OPeNDAP
 
HDF Tools Tutorial
HDF Tools TutorialHDF Tools Tutorial
HDF Tools Tutorial
 
Digital Object Identifiers for EOSDIS data
Digital Object Identifiers for EOSDIS dataDigital Object Identifiers for EOSDIS data
Digital Object Identifiers for EOSDIS data
 
Introduction to HDF5
Introduction to HDF5Introduction to HDF5
Introduction to HDF5
 

Viewers also liked

Access HDF-EOS data with OGC Web Coverage Service - Earth Observation Applica...
Access HDF-EOS data with OGC Web Coverage Service - Earth Observation Applica...Access HDF-EOS data with OGC Web Coverage Service - Earth Observation Applica...
Access HDF-EOS data with OGC Web Coverage Service - Earth Observation Applica...
The HDF-EOS Tools and Information Center
 

Viewers also liked (14)

Granules Are Forever
Granules Are ForeverGranules Are Forever
Granules Are Forever
 
HDF Tools Updates and Discussions
HDF Tools Updates and DiscussionsHDF Tools Updates and Discussions
HDF Tools Updates and Discussions
 
HDF-EOS to GeoTIFF Conversion Tool & HDF-EOS Plug-in for HDFView
HDF-EOS to GeoTIFF Conversion Tool & HDF-EOS Plug-in for HDFViewHDF-EOS to GeoTIFF Conversion Tool & HDF-EOS Plug-in for HDFView
HDF-EOS to GeoTIFF Conversion Tool & HDF-EOS Plug-in for HDFView
 
Bridging ICESat and ICESat-2 Standard Data Products
Bridging ICESat and ICESat-2 Standard Data ProductsBridging ICESat and ICESat-2 Standard Data Products
Bridging ICESat and ICESat-2 Standard Data Products
 
Earth Science Data and Information System (ESDIS) Project Update
Earth Science Data and Information System (ESDIS) Project UpdateEarth Science Data and Information System (ESDIS) Project Update
Earth Science Data and Information System (ESDIS) Project Update
 
Connecting HDF with ISO Metadata Standards
Connecting HDF with ISO Metadata StandardsConnecting HDF with ISO Metadata Standards
Connecting HDF with ISO Metadata Standards
 
2011 ACSI Survey Summary
2011 ACSI Survey Summary2011 ACSI Survey Summary
2011 ACSI Survey Summary
 
HDF Project Status and Plans
HDF Project Status and PlansHDF Project Status and Plans
HDF Project Status and Plans
 
Web-based On-demand Global NDVI Data Services
Web-based On-demand Global NDVI Data ServicesWeb-based On-demand Global NDVI Data Services
Web-based On-demand Global NDVI Data Services
 
Data Storage for Remote Monitoring of CAT Machines Using HDF
Data Storage for Remote Monitoring of CAT Machines Using HDFData Storage for Remote Monitoring of CAT Machines Using HDF
Data Storage for Remote Monitoring of CAT Machines Using HDF
 
MATLAB, netCDF, and OPeNDAP
MATLAB, netCDF, and OPeNDAPMATLAB, netCDF, and OPeNDAP
MATLAB, netCDF, and OPeNDAP
 
HDF and netCDF Data Support in ArcGIS
HDF and netCDF Data Support in ArcGISHDF and netCDF Data Support in ArcGIS
HDF and netCDF Data Support in ArcGIS
 
Access HDF-EOS data with OGC Web Coverage Service - Earth Observation Applica...
Access HDF-EOS data with OGC Web Coverage Service - Earth Observation Applica...Access HDF-EOS data with OGC Web Coverage Service - Earth Observation Applica...
Access HDF-EOS data with OGC Web Coverage Service - Earth Observation Applica...
 
iRODS: Interoperability in Data Management
iRODS: Interoperability in Data ManagementiRODS: Interoperability in Data Management
iRODS: Interoperability in Data Management
 

Similar to Images of HDF5

Ensuring Long Term Access to Remotely Sensed HDF4 Data with Layout Maps
Ensuring Long Term Access to Remotely Sensed HDF4 Data with Layout MapsEnsuring Long Term Access to Remotely Sensed HDF4 Data with Layout Maps
Ensuring Long Term Access to Remotely Sensed HDF4 Data with Layout Maps
The HDF-EOS Tools and Information Center
 

Similar to Images of HDF5 (20)

Introduction to HDF5
Introduction to HDF5Introduction to HDF5
Introduction to HDF5
 
Introduction to HDF5
Introduction to HDF5Introduction to HDF5
Introduction to HDF5
 
HDF5 iRODS
HDF5 iRODSHDF5 iRODS
HDF5 iRODS
 
Ensuring Long Term Access to Remotely Sensed HDF4 Data with Layout Maps
Ensuring Long Term Access to Remotely Sensed HDF4 Data with Layout MapsEnsuring Long Term Access to Remotely Sensed HDF4 Data with Layout Maps
Ensuring Long Term Access to Remotely Sensed HDF4 Data with Layout Maps
 
HDF5 OPeNDAP project update and demo
HDF5 OPeNDAP project update and demoHDF5 OPeNDAP project update and demo
HDF5 OPeNDAP project update and demo
 
HDF Update
HDF UpdateHDF Update
HDF Update
 
HDF5 Software Process
HDF5 Software ProcessHDF5 Software Process
HDF5 Software Process
 
HDF OPeNDAP project update and demo
HDF OPeNDAP project update and demoHDF OPeNDAP project update and demo
HDF OPeNDAP project update and demo
 
HDF Status and Development
HDF Status and DevelopmentHDF Status and Development
HDF Status and Development
 
Adding new servicees for HDF in THREDDS Data Server (TDS)
Adding new servicees for HDF in THREDDS Data Server (TDS)Adding new servicees for HDF in THREDDS Data Server (TDS)
Adding new servicees for HDF in THREDDS Data Server (TDS)
 
HDF-Java Products
HDF-Java ProductsHDF-Java Products
HDF-Java Products
 
HDF5 and Storage Resource Broker
HDF5 and Storage Resource BrokerHDF5 and Storage Resource Broker
HDF5 and Storage Resource Broker
 
HDFView and HDF Java Products
HDFView and HDF Java ProductsHDFView and HDF Java Products
HDFView and HDF Java Products
 
Transition from HDF4 to HDF5
Transition from HDF4 to HDF5 Transition from HDF4 to HDF5
Transition from HDF4 to HDF5
 
D Robinson - Using HDF5 to work with large quantities of rich biological data
D Robinson - Using HDF5 to work with large quantities of rich biological dataD Robinson - Using HDF5 to work with large quantities of rich biological data
D Robinson - Using HDF5 to work with large quantities of rich biological data
 
HDF OPeNDAP update
HDF OPeNDAP updateHDF OPeNDAP update
HDF OPeNDAP update
 
ESDIS Status (2002)
ESDIS Status (2002)ESDIS Status (2002)
ESDIS Status (2002)
 
The New HDF-EOS WebSite - How it can help you
The New HDF-EOS WebSite - How it can help youThe New HDF-EOS WebSite - How it can help you
The New HDF-EOS WebSite - How it can help you
 
Support for NPP/NPOESS by The HDF Group
Support for NPP/NPOESS by The HDF GroupSupport for NPP/NPOESS by The HDF Group
Support for NPP/NPOESS by The HDF Group
 
HDF5 Tools
HDF5 ToolsHDF5 Tools
HDF5 Tools
 

More from The HDF-EOS Tools and Information Center

More from The HDF-EOS Tools and Information Center (20)

Cloud-Optimized HDF5 Files
Cloud-Optimized HDF5 FilesCloud-Optimized HDF5 Files
Cloud-Optimized HDF5 Files
 
Accessing HDF5 data in the cloud with HSDS
Accessing HDF5 data in the cloud with HSDSAccessing HDF5 data in the cloud with HSDS
Accessing HDF5 data in the cloud with HSDS
 
The State of HDF
The State of HDFThe State of HDF
The State of HDF
 
Highly Scalable Data Service (HSDS) Performance Features
Highly Scalable Data Service (HSDS) Performance FeaturesHighly Scalable Data Service (HSDS) Performance Features
Highly Scalable Data Service (HSDS) Performance Features
 
Creating Cloud-Optimized HDF5 Files
Creating Cloud-Optimized HDF5 FilesCreating Cloud-Optimized HDF5 Files
Creating Cloud-Optimized HDF5 Files
 
HDF5 OPeNDAP Handler Updates, and Performance Discussion
HDF5 OPeNDAP Handler Updates, and Performance DiscussionHDF5 OPeNDAP Handler Updates, and Performance Discussion
HDF5 OPeNDAP Handler Updates, and Performance Discussion
 
Hyrax: Serving Data from S3
Hyrax: Serving Data from S3Hyrax: Serving Data from S3
Hyrax: Serving Data from S3
 
Accessing Cloud Data and Services Using EDL, Pydap, MATLAB
Accessing Cloud Data and Services Using EDL, Pydap, MATLABAccessing Cloud Data and Services Using EDL, Pydap, MATLAB
Accessing Cloud Data and Services Using EDL, Pydap, MATLAB
 
HDF - Current status and Future Directions
HDF - Current status and Future DirectionsHDF - Current status and Future Directions
HDF - Current status and Future Directions
 
HDFEOS.org User Analsys, Updates, and Future
HDFEOS.org User Analsys, Updates, and FutureHDFEOS.org User Analsys, Updates, and Future
HDFEOS.org User Analsys, Updates, and Future
 
HDF - Current status and Future Directions
HDF - Current status and Future Directions HDF - Current status and Future Directions
HDF - Current status and Future Directions
 
H5Coro: The Cloud-Optimized Read-Only Library
H5Coro: The Cloud-Optimized Read-Only LibraryH5Coro: The Cloud-Optimized Read-Only Library
H5Coro: The Cloud-Optimized Read-Only Library
 
MATLAB Modernization on HDF5 1.10
MATLAB Modernization on HDF5 1.10MATLAB Modernization on HDF5 1.10
MATLAB Modernization on HDF5 1.10
 
HDF for the Cloud - Serverless HDF
HDF for the Cloud - Serverless HDFHDF for the Cloud - Serverless HDF
HDF for the Cloud - Serverless HDF
 
HDF5 <-> Zarr
HDF5 <-> ZarrHDF5 <-> Zarr
HDF5 <-> Zarr
 
HDF for the Cloud - New HDF Server Features
HDF for the Cloud - New HDF Server FeaturesHDF for the Cloud - New HDF Server Features
HDF for the Cloud - New HDF Server Features
 
Apache Drill and Unidata THREDDS Data Server for NASA HDF-EOS on S3
Apache Drill and Unidata THREDDS Data Server for NASA HDF-EOS on S3Apache Drill and Unidata THREDDS Data Server for NASA HDF-EOS on S3
Apache Drill and Unidata THREDDS Data Server for NASA HDF-EOS on S3
 
STARE-PODS: A Versatile Data Store Leveraging the HDF Virtual Object Layer fo...
STARE-PODS: A Versatile Data Store Leveraging the HDF Virtual Object Layer fo...STARE-PODS: A Versatile Data Store Leveraging the HDF Virtual Object Layer fo...
STARE-PODS: A Versatile Data Store Leveraging the HDF Virtual Object Layer fo...
 
HDF5 and Ecosystem: What Is New?
HDF5 and Ecosystem: What Is New?HDF5 and Ecosystem: What Is New?
HDF5 and Ecosystem: What Is New?
 
HDF5 Roadmap 2019-2020
HDF5 Roadmap 2019-2020HDF5 Roadmap 2019-2020
HDF5 Roadmap 2019-2020
 

Recently uploaded

Recently uploaded (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Images of HDF5

  • 1. The HDF Group Images of HDF5 Gerd Heber The HDF Group The 15th HDF and HDF-EOS Workshop April 17-19, 2012 Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 1 www.hdfgroup.org
  • 2. Outline Five long stories distilled into shorts: • A model of the information in an HDF5 file • A new XML representation of HDF5 • HDF5 as a Service • The HDF5 user experience I always wanted • An odd couple – HDF5 and databases Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 2 www.hdfgroup.org
  • 3. “Language shapes the way we think, and determines what we can think about.” (Benjamin L. Whorf) HDF5 INFORMATION SET Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 3 www.hdfgroup.org
  • 4. HDF5 Information Set • Is a model of the content of an HDF5 file • Provides a consistent set of definitions • Gives an undistorted view of HDF5* • Puts the simplicity of HDF5 center stage *Not tainted by the idiosyncrasies of a particular API Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 4 www.hdfgroup.org
  • 5. HDF5 Information Set Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 5 www.hdfgroup.org
  • 6. Sources of Complexity 1. Productivity • Finite number of parts and combining-rules yields an infinite number of unique structures • HDF5 groups and datatypes 2. Reference (Cohesion) • • The ability to refer from one part to another HDF5 groups, links, and references (By comparison, databases are only weakly productive and their referential capabilities are limited by Codd’s Information Principle.) Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 6 www.hdfgroup.org
  • 7. HDF5 Micro-Web / Experiment Notes: Serial Number: 99378920 Date: 3/13/09 Configuration: Standard 3 Viz SimOut TBL1 IMG1 IMG3 lat | lon | temp ----|-----|----12 | 23 | 3.1 15 | 24 | 4.2 17 | 21 | 3.6 Timestep 36,000 Apr. 17-19, 2012 Parameters 10;100;1000 TBL3 Ext IMG2 September 28-30, 2010 Every HDF5 file has a root group HDF/HDF-EOS Workshop XIV HDF/HDF-EOS Workshop XV TBL2 TBL1 7 7 www.hdfgroup.org
  • 8. Hypermedia Hypermedia – An application that uses associative relationships among information contained within multiple media data for the purpose of facilitating access to and manipulation of the information encapsulated by the data. [Lowe & Hall 99] Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 8 www.hdfgroup.org
  • 9. The HDF Group Questions? Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 9 www.hdfgroup.org
  • 10. “We find that the same word – Fidelity – can be used both in connection with the excellence of sound reproduction and picture reproduction.” (1931 Electronics Oct. 137/1) REPRESENTING HDF5 IN XML Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 10 www.hdfgroup.org
  • 11. Use Cases 1. Viewing structure and contents of an HDF5 file in a web browser (XSLT in the browser) 2. XML as a catalog record 3. XML as a light-weight intermediate form for applications 4. Generation, validation, and reconstruction of HDF5 files 5. XML as intermediate to other data languages or file formats (e.g., ISO, netCDF) 6. XML as machine-readable documentation 7. Templates, skeleton files, etc. (Source: The XML DTD for HDF5: Design Notes. 12 June 2000) 10+ years on – still a pretty complete list! Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV Where are we? 11 www.hdfgroup.org
  • 12. HDF5/XML Survey • http://www.surveymonkey.com/s/RMSZSSX • 13 replies to date (still open) • Users are fluent in XML Schema, XPath, XSLT, and XLink/XPointer • Descriptive data are more important than a fullfledged data element representation • Hardly anybody uses the HDF Group‟s XML schema, most respondents created their own • Split on the fidelity of the representation Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 12 www.hdfgroup.org
  • 13. Why another schema? • Address shortcomings • • • • • • • • • Omissions Eliminate redundancies De-normalized group structure representation Dataset and attribute value serialization Simplify tools Reflect simplicity of the HDF5 data model High-fidelity representation Be neutral with respect to application domains Future proofing Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 13 www.hdfgroup.org
  • 14. High-Level Structure <domain xmlns=“http://www.hdfgroup.org/HDF5/XML/schema/2011/11/11” xmlns:xlink=“http://www.w3.org/1999/xlink”> <!-- “Pointer” to the HDF5 root group --> <root xlink:href=“903d1d75-e617-4767-a3bf-0cb3ee509027”/> <linkbase> <!–- Representations of HDF5 groups --> </linkbase> <database> <!–- Representations of HDF5 datasets --> </database> <encodingbase> <!-- Collection of representations of HDF5 datatypes --> </encodingbase> </domain> Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 14 www.hdfgroup.org
  • 15. HDF5/XML Summary • HDF5/XML is a high-fidelity rendering of userlevel HDF5 items in XML • Communities/domain experts should create XML representations that work for their users • HDF5/XML cannot fill that role • One can use XSLT or XQuery to connect to the HDF5/XML tool chain (to be developed) See me for a demo and additional information / questions /comments / suggestions / donations Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 15 www.hdfgroup.org
  • 16. The HDF Group Questions? Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 16 www.hdfgroup.org
  • 17. But let your communication bee, GET, PUT: POST, DELETE: For whatsoeuer is more then these, commeth of euill.” (Matthew 5:37, KJV 1611, Tyndale 1526) HDF5/REST* *The support of Wenming Ye and Daniel Odievich (Microsoft) for this project is gratefully acknowledged. Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 17 www.hdfgroup.org
  • 18. Outline • REST • Resources • Representations • URIs • Cloud / Windows Azure • Summary Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 18 www.hdfgroup.org
  • 19. REST* *REpresentational State Transfer [Fielding 2000] Why create complex data service architectures when the Internet as it was originally conceived is perfectly suited for transferring both hypermedia-based documents and data ? [Scribner & Seely 2009] Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 19 www.hdfgroup.org
  • 20. Four Simple Principles 1. The server maintains resources that are separate from representations returned to clients 2. Clients manipulate resources via the representations issued to them 3. The messages that convey representations to the client are self-describing 4. Application state is transferred using hypermedia techniques [Scribner & Seely 2009] Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 20 www.hdfgroup.org
  • 21. HDF5/REST Resources Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 21 www.hdfgroup.org
  • 22. HDF5/REST URIs Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 22 www.hdfgroup.org
  • 23. HDF5/REST URIs – Examples Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 23 www.hdfgroup.org
  • 24. Examples Get (a representation of) the HDF5 root GET /root Create a new HDF5 group (unlinked) POST /groups # server replies with {groupID} Link the newly created group as „New Group‟ POST /groups/{groupID1}/participants/New%20Group {groupID} # content Delete an HDF5 attribute DELETE /datasets/{datasetID}/attributes/{name} Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 24 www.hdfgroup.org
  • 25. Representations • Clients express preferences via Accept header Accept: application/json;0.9, text/xml, application/xml;q=0.8, application/octet-stream;q=0.7, image/png, image/gif, image/jpeg;q=0.2, */*; q=0.1 Accept-Encoding: gzip, deflate, compress;q=0.9 • Server may reply with Content-Type: text/xml Content-Length: 2890 … or HTTP/1.1 406 Not Acceptable Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 25 www.hdfgroup.org
  • 26. Windows Azure SDK VS Fabric Storage Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 26 www.hdfgroup.org
  • 27. Windows Azure Implementation Why it’s easy… Challenges • HDF5/XML proxy • Cloud BLOB/block stores aren‟t file • XSLT does most of the systems heavy lifting • Performance from • HDF5DotNet for data • Caching access • Latency hiding • Great development • Parallelism and deployment tools • Easy scale-out Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 27 www.hdfgroup.org
  • 28. HDF5/REST Summary • HDF5/REST is an “HTTP API” for HDF5 • RISC rather than CISC • Build more complex services on top of HDF5/REST (e.g., HDF5DNS, HDF5WHOIS) • HDF5 domains = “virtual HDF5 files” See me for a demo and additional information / questions /comments / suggestions / donations Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 28 www.hdfgroup.org
  • 29. The HDF Group Questions? Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 29 www.hdfgroup.org
  • 30. A Winning Team: HDF5 + The Best Shell on the Planet AN HDF5 MODULE FOR Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 30 www.hdfgroup.org
  • 31. A Word from the Author “In the end, there’s no hard-and-fast distinction between a shell language and a scripting language. Some of the features that make a good scripting language result in poor shell user experience. Conversely, some of the features that make for a good interactive shell experience can interfere with scripting. Because PowerShell’s goal is to be both a good scripting language and a good interactive shell, balancing the tradeoffs between user experience and scripting authoring was one of the major design challenges.” (Bruce Payette) Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 31 www.hdfgroup.org
  • 32. Provider Core Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 32 www.hdfgroup.org
  • 33. Show Time Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 33 www.hdfgroup.org
  • 34. Windows PowerShell Resources • Bruce Payette, Windows PowerShell in Action, 2nd Edition, Manning 2011 • Scripting with Windows PowerShell • Windows PowerShell: Learn It Before It‟s an Emergency – Part 1-5 • Windows PowerShell Blog Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 34 www.hdfgroup.org
  • 35. The HDF Group Questions? Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 35 www.hdfgroup.org
  • 36. “Complaint for true loue vnrequited.” (Sir Thomas Wyatt, 1542) HDF5 AND DATABASES Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 36 www.hdfgroup.org
  • 37. Fatal Attraction • The power and simplicity of the relational model • SQL is a declarative language • Optimizable • Data independence • Greater productivity, because it‟s easier to express intent at a high-level (Source: Don Chamberlin on SQL in “Masterminds of Programming”, O‟Reilly 2009) Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 37 www.hdfgroup.org
  • 38. First Symptoms (Mid-Late 90s) Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 38 www.hdfgroup.org
  • 39. HDF and HDF-EOS Workshop 1 An HDF-EOS DataBlade using Informix‟s Object- Relational Database Renu Chaudhry ECOlogic www.ecologic.net September 8-10, 1897 GSFC, Maryland Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 39 www.hdfgroup.org
  • 40. BCS Universal File Interface Source: Barrodale Computing Services Ltd. http://www.barrodale.com/universal-file-interface-ufi Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 40 www.hdfgroup.org
  • 41. Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 41 www.hdfgroup.org
  • 42. SciQL Highlights • An extension of SQL:2003 (pronounced as „cycle‟) • Array as first class citizens of DBMS • Seamless integration of tables and arrays • Named dimensions with constraints • Flexible structure-based grouping Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 42 www.hdfgroup.org
  • 43. Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 43 www.hdfgroup.org
  • 44. HDF5/DBMS Summary Three significant developments: • Arrays can be first class citizens • Database file systems offer the potential to store Level 0 data and analyze Level 1 and Level 3 data within the same DBMS • All vendors (IBM, Microsoft, Oracle) have rolled out BigData connectors Databases have morphed into data hubs. We are working hard to get HDF5 connected! Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 44 www.hdfgroup.org
  • 45. The HDF Group Thank You! Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 45 www.hdfgroup.org
  • 46. Acknowledgements This work was supported by Subcontract number 114820 under Raytheon Contract number NNG10HP02C, funded by the National Aeronautics and Space Administration (NASA) and by cooperative agreement number NNX08AO77A from the NASA. Any opinions, findings, conclusions, or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of Raytheon or the National Aeronautics and Space Administration. Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 46 www.hdfgroup.org
  • 47. The HDF Group Questions/comments? Apr. 17-19, 2012 HDF/HDF-EOS Workshop XV 47 www.hdfgroup.org

Editor's Notes

  1. Introduce Windows PowerShell, scripting or shell languages, What is a provider?
  2. What happened?