1 of 1

earthaccess

Acknowledgements

The challenge: accessing NASA Earthdata can be hard

In the age of cloud computing, the power of open science only reaches its full potential if we have easy-to-use workflows that facilitate research in an inclusive, efficient and reproducible way. Unfortunately —as it stands today— scientists and students alike face a steep learning curve adapting to systems that have grown too complex and end up spending more time on the technicalities of the tools, cloud and NASA APIs than focusing on their important science.

Issues �

  • API fragmentation
  • Cloud computing is complex
  • Data is getting BIG

What is earthaccess and what can it do for us?

Use cases

earthaccess in action: analyzing global sea level rise

Easy programmatic access to environmental data from NASA

Quick exploration by streaming data directly to Xarray

“Nearly a petabyte of NASA's Physical Oceanography Distributed Active Archive Center (PO.DAAC) data products have been moved to NASA's Earthdata Cloud—hosted in the Amazon Web Services (AWS) cloud. To maximize the full potential of cloud computing on the big Data, one needs to be familiar with not only the data products and their access methods, but also a new set of knowledge for working in a cloud environment. This can be a daunting task for the majority of the science community, who may be familiar with high-performance computing, but not with AWS services.”�

– Jinbo Wang, PO.DAAC Scientist

In this example we are using earthaccess to analyze a year of sea level anomalies using the NASA MEaSUREs Gridded Sea Surface Height Anomalies dataset (doi: 10.5067/SLREF-CDRV2) This code will work the same way if we run it from our laptops or from a cloud instance on AWS. �The executable notebook replicates the plot published by JPL’s study on sea level rise.

earthaccess is a Python library that simplifies data discovery and access to NASA Earth science data by providing an abstraction layer for NASA’s Common Metadata Repository (CMR) Search API so that searching for data can be done using a simpler notation instead of low level HTTP queries.

earthaccess handles authentication with NASA’s Earthdata Login (EDL) API and provides HTTP and AWS S3 sessions that can be used with Xarray and other PyData libraries to access NASA EOSDIS datasets directly allowing scientists get to their science in a simpler and faster way, reducing barriers to cloud-based data analysis.

Github: https://github.com/nsidc/earthaccess

Openscapes: https://nasa-openscapes.github.io

Glossary: https://www.earthdata.nasa.gov/learn/glossary

Personal: luis.lopez@nsidc.org

github.com/betolink

Access data in the cloud using the same code

Open science

Artwork by Allison Horst.

1

2

4

3

5

6

7

A Python Library for NASA Earthdata

Luis López • Andrew P. Barrett • Julie Lowndes�Joseph H. Kennedy • Erin Robinson • Amy Steiker �Jessica Scheick • The NASA Openscapes mentors team.�

https://nasa-openscapes.github.io/mentors.html

Solutions�

  • Abstract NASA APIs into a unified client library
  • Work with existing PyData ecosystem
  • Provide executable examples for cloud native workflows

  • Line 3: earthaccess handles authentication with NASA EDL.

  • Line 5: earthaccess abstracts NASA’s search API (CMR) into a pythonic module.

  • Line 11: earthaccess can download or open data for both cloud and on-prem hosted datasets.

Use earthaccess to find environmental datasets across any of NASA’s Distributed Active Archive Centers (DAACs) using keywords, doi, mission or any other spatiotemporal parameter relevant to our research.

Easy integration with the Pangeo ecosystem, we can explore datasets and stream NetCDF and HDF5 directly into xarray without downloading any data.

With earthaccess we use the same functions to access cloud-hosted or DAAC hosted datasets!

Data Access

2

Science

3

earthaccess is the result of a cross-DAAC collaboration through the NASA Openscapes program. NASA mentors from different DAACs and scientists from all over the world contributed with feedback, ideas and suggestions. �

Here are some of the faces of this open science effort!

Data discovery

1

First, we search for data relevant to our research and print the information we need to access it.

Next, we get to the data using only 2 lines of code and stream it directly to Xarray for plotting it.

Once our data is in Xarray we can leverage the Pangeo ecosystem to reproduce scientific results.

Scan this QR code with your smartphone and execute this analysis using Binder!

Contact

This infographic shows the rise in sea levels since 1900. Pre-1940, glaciers and Greenland meltwater dominated the rise; dam projects slowed the rise in the 1970s. Now, ice sheet and glacier melt, plus thermal expansion, dominate the rise. Tide-gauge data shown in blue and satellite data in orange. Credits: NASA/JPL-Caltech

We are reproducing the plot used by NASA on their infographic

Artwork by Allison Horst.

Open Science is a collaborative effort that involves people from different technical backgrounds. The data analysis needed for the pressing problems we face should not be limited by the complexity of the underlying systems or a lack of computer engineering skills. Providing easy access to NASA Earth science is the primary motivation behind this library.