1. Introduction
This webpage was written to provide supplementary material specifically in support of NASA’s Research Opportunities in Earth and Space Science 2017 (ROSES 17) solicitation for A.42 Advancing Collaborative Connections for Earth System Science (ACCESS). Although this page is specifically intended to provide ACCESS 2017 proposers with pertinent information about the Earth Observing System Data and Information System (EOSDIS), the information on this page will be helpful for anyone participating in ESDS Competitive Programs.
EOSDIS is a distributed data system that supports Earth science research and applied science users with a wide range of science data from a large number of satellite, airborne, and field campaign missions as part of NASA’s Earth Science Program. The data cover a wide range of Earth science disciplines. EOSDIS consists of a constellation of discipline-specific Distributed Active Archive Centers (DAACs), each with expertise in particular disciplines and tasked with supporting the data in those disciplines and their user communities.
For a more general and complete view of EOSDIS, see the EOSDIS Handbook.
For questions about the systems noted on this page or for more information about ACCESS, please contact Dr. Manil Maskey at manil.maskey@nasa.gov.
1.1 Scope
This webpage covers the high-level organization of EOSDIS into constituent Distributed Active Archive Centers (DAACs) and EOSDIS common elements that apply across the system. The material covered focuses primarily on the functional aspects of EOSDIS that are applicable to ACCESS projects planning to develop and deploy tools and capabilities at one or more DAACs.
1.2 Configuration Management
This webpage maintains tight configuration control. Note, however, that information on webpages linked from this webpage is subject to change without notification.
2. EOSDIS Common Services
A number of shared common services and tools are offered by EOSDIS that may be pertinent to the ACCESS 2017 solicitation. Awarded projects are expected to use these services where applicable. The table below summarizes these services, and provides links to other related resources, application programming interface (API) documentation, and software source code.
Note that some services and tools listed below (where there is no link) can only be accessed via a NASA approval process that can only be considered for funded projects upon execution. Note also that some information resources below require an Earthdata Login (EL) account to access. Proposers can obtain an Earthdata Login.
Service | Service or Tool | Other Resources | API | Software |
---|---|---|---|---|
Web | Earthdata Developer Portal | N/A | N/A | N/A |
Earthdata Website | Earthdata User Interface | N/A | N/A | |
Conduit Content Management System | N/A | N/A | TBD* | |
Status Application | Integrating the Status Application | N/A | TBD* | |
Feedback Module | Integrating the Feedback Module | N/A | N/A | |
Tophat2 | Integrating with Earthdata Tophat2 | N/A | N/A | |
Metadata Management | Common Metadata Repository (CMR) | CMR Overview Unified Metadata Model |
CMR API | CMR Github |
Metadata Management Tool (MMT) | N/A | N/A | MMT Github | |
Search | Earthdata Search | Portal Creation Guide | N/A | Earthdata Search Github |
Browse Imagery | Global Imagery Browse Services (GIBS) | GIBS API for Developers Available GIBS Imagery Products GIBS Blog |
GIBS API | GIBS Github |
Worldview | Worldview Overview Worldview Blog |
N/A | Worldview Github | |
Data Services | Open-source Project for a Network Data Access Protocol (OPeNDAP) | OPeNDAP Guide for EOSDIS Users | N/A | OPeNDAP Github |
Programmatic Access | User Documentation | N/A | N/A | |
User Profile Management | Earthdata Login | Earthdata Login Overview and Knowledge Base | Earthdata Login API | N/A |
Development Framework | Earthdata Code Collaborative (ECC) | Earthdata Wiki (Earthdata Login required for full access) | N/A | N/A |
* Availability of open source software pending
3. Description of Capabilities
3.1 Web
3.1.1 Earthdata Developer Portal
NASA's Earthdata Developer Portal is the central location for all publicly accessible developer APIs and other documentation related to EOSDIS common services and applications.
3.1.2 Earthdata Website
NASA's Earthdata website is a collaborative environment integrating information from across EOSDIS. Earthdata is the entry point for EOSDIS data, articles, documentation, and collaboration. It also leverages NASA’s Common Metadata Repository (CMR) to provide comprehensive search capabilities. Earthdata offers new and experienced users an organized view of EOSDIS resources and latest events. EOSDIS DAACs are key contributors to Earthdata, providing the latest information on Atmosphere, Calibrated Radiance, Cryosphere, Human Dimensions, Land, and Ocean science.
The Earthdata Website is supported by a number of components that support and encourage a common User Interface/User Experience (UI/UX) for all tools across EOSDIS for the benefit of end users. The Earthdata User Interface (EUI) is a toolbox of guidelines, examples, and best practices for implementing a common UI/UX across EOSDIS.
3.1.3 Conduit Content Management System
Conduit is a lightweight Content Management System that supports the Earthdata Website.
3.1.4 Status Application
The Status Application provides notification alerts for EOSDIS websites and web applications. Notifications are configured at a central location and made available to client applications through public APIs, JavaScript widgets, and end-user-facing status pages. The primary uses include notifications to end users of planned maintenance, changes to tools or services, or other messages and alerts.
3.1.5 User Feedback Module
The User Feedback Module allows websites and applications to easily add user feedback and support functionality. It provides JavaScript code that can be referenced in a client webpage to add a "Feedback" icon on the side of the page. Clicking this icon opens a feedback form where the user can enter their name, email address, the subject of their feedback and any details. The Feedback Module will also collect information about the current browser type, location and page/screen size, if it is available. When feedback is submitted, it is submitted to the Kayako user feedback system.
3.1.6 Earthdata Tophat2
The Earthdata Tophat2 is a thin, lightweight menu bar that is displayed at the top of an EOSDIS webpage or web application using a bit of Javascript. In addition to providing links to all of the DAACs, the Tophat2 is mini platform where the Status Application and Feedback Module can be integrated, thus providing these tools to end users in a consistent manner across all EOSDIS.
3.2 Metadata Management
3.2.1 Common Metadata Repository (CMR)
The Common Metadata Repository (CMR) is a high-performance, high-quality metadata system providing Ingest and Discovery capabilities for EOSDIS metadata. The CMR provides a single, authoritative metadata repository though the Unified Metadata Model (UMM). The UMM is an extensible metadata model that provides mappings between supported metadata standards and identifies EOSDIS-compliant profiles.
Detailed information about the open source CMR architecture and the CMR API is available from the Earthdata Developer Resources.
3.2.2 Metadata Management Tool (MMT)
The Metadata Management Tool (MMT) is a web-based user interface which allows metadata authors to create and manage their metadata records using the CMR’s Unified Metadata Model (UMM). The MMT allows metadata authors to create and update CMR metadata records by importing XML or by using a data entry form based on the metadata fields in the CMR UMM. Metadata authors may also publish, view, delete, and manage CMR metadata records and and access using the MMT. Detailed information about the open source MMT is available on the Earthdata Wiki.
3.3 Search
3.3.1 Earthdata Search
Earthdata Search is an open source EOSDIS web application that provides easy-to-use access to EOSDIS services for Earth science data discovery, filtering, visualization, and access. It serves as a platform to feature planned EOSDIS services as they become available and integrates several core EOSDIS services into a unified user experience. Earthdata Search is able to take advantage of data services exposed by the EOSDIS community, in many cases simplifying data access and providing more targeted information to the user.
Earthdata Search allows users search for Earth observation data, preview Earth observation data, and download data using imagery from GIBS. Users also have access to customized data services through Earthdata Search including capabilities from OPeNDAP servers and advanced services like the HDF-EOS to GeoTIFF Converter (HEG), the MODIS Reprojection Tool (MRT), and Geospatial Data Abstraction Library (GDAL) Translate.
Developers can leverage Earthdata Search to design a customized portal that targets a specific user community. Instructions for creating an Earthdata Search portal are available on the Earthdata Developer Portal Website.
Visit the Earthdata Search Github portal.
3.4 Browse Imagery
3.4.1 Global Browse Imagery Services (GIBS)
The Global Imagery Browse Services (GIBS) system is a core EOSDIS component which provides a scalable, responsive, highly available, and community standards-based set of imagery services. These services are designed with the goal of advancing user interactions with EOSDIS’ inter-disciplinary data through enhanced visual representation and discovery. For a full overview and access to the source code visit the GIBS home page on Github. Documentation on using GIBS is available on the Earthdata Developer Portal.
3.4.2 Worldview
Worldview is an open source EOSDIS web application that enables users to interactively browse global satellite imagery within hours of it being acquired then download the underlying data. Most of the 900+ available products are updated within three hours of observation, essentially showing Earth as it looks "right now." This supports time-critical application areas such as wildfire management, air quality measurements, and flood monitoring. Arctic and Antarctic views of several products are also available for a "full globe" perspective. Browsing on tablet and smartphone devices is generally supported for mobile access to the imagery. Worldview uses GIBS to rapidly retrieve its imagery for an interactive browsing experience. Additional information on Worldview is available.
Visit the Worldview/GIBS Blog.
3.5 User Profile Management
EOSDIS includes a component named Earthdata Login to help track data usage by users, enabling both accurate metrics on data usage and the ability to send critical data update messages. Earthdata Login includes a User Registration site and protocols that allow both DAAC-developed and Earth Science Data and Information System (ESDIS)-developed services to look up the User ID for anyone accessing data. In general, the intent is to require registration for data access, but to leave it optional for search and browse functions. Users who register for an Earthdata Login account may potentially use the same account for all EOSDIS web services. Information on how to integrate applications with Earthdata Login is available on the Earthdata Developer Portal.
Create a new user profile on Earthdata Login.
3.6 Data Services
3.6.1 OPeNDAP
OPeNDAP is the developer of client/server software, of the same name, that enables scientists to share data more easily over the internet. The OPeNDAP group is also the original developer of the Data Access Protocol (DAP) that the software uses. Many other groups have adopted DAP and provide compatible clients, servers, and software development kits. OPeNDAP’s DAP is also a NASA community standard. An OPeNDAP User Guide and examples of using OPeNDAP with NASA data are available on the Earthdata Developer Portal.
3.6.2 Programmatic Access
The Programmatic Access interface is used to locate and access DAAC-hosted data, optionally performing services on the data. The resulting output data are synchronously streamed back to the user, either as a single file or a multi-file zip file. It combines into one interface functions that formerly required multiple interfaces: searching CMR for science granules of interest, and then obtaining the science data files with optional services applied. Details are available on the Earthdata Developer Portal.
3.7 Development Framework
3.7.1 Earthdata Code Collaborative (ECC)
The Earthdata Code Collaborative (ECC) provides a full suite of development tools to EOSDIS projects that embody current best practices for software development. You must first have an Earthdata Login, then request access to the ECC.
The ECC provides access to the following capabilities for supporting development projects:
3.7.1.1 USER STORY / WORK TRACKING
The ECC offers full Agile Development process support for implementation through Atlassian JIRA. User Stories can be automatically synchronized with requirements to minimize process overhead while providing a consistent view of project progress and features. The ECC offers a standard workflow for projects with support for developers, internal testing, external testing, and deployments as well as custom workflows, if needed.
3.7.1.2 SOURCE CODE CONTROL
The ECC offers full lifecycle source code control through Atlassian’s BitBucket. This git-based source code control has support for branching and merging, code reviews, and linkage to JIRA tickets. A BitBucket user guide is available.
3.7.1.3 AUTOMATED BUILDS AND CONTINUOUS INTEGRATION
The ECC offers sophisticated support for automated builds and continuous integration through Bamboo. The ECC is capable of monitoring a project’s source code repository for changes and then invoking custom builds and automated tests when detected. The ECC can monitor for branch creation as well, providing full support for feature-branch style development coupled with code reviews and subsequent merging. For approved, hosted EOSDIS projects, the ECC supports Continuous Deployment, automatically deploying the latest build of a project after a successful test execution and properly monitoring versions by environment.
3.7.1.4 TEAM AND USER COLLABORATION
Each registered ECC project gets a dedicated space in the Earthdata Wiki for team and user support. Team members can control access to their project wiki allowing for internally focused communication and collaboration as well as public-facing support and communication. The ECC Wiki is aware of the other ECC components and can easily surface common agile graphs including burndowns, backlogs, build and test results, and latest deployment information. A Wiki user guide is available. Additional information on Confluence is also available from Atlassian.
4. Getting Started
4.1 Earthdata Login
All members of the project team should have Earthata Login accounts. This provides access to multiple tools and services. First time users should go to https://urs.earthdata.nasa.gov and click on the Register button to create an account. Note that Earthdata Login accounts require an activation step via an email that new users should receive. The account is not active until this step is taken.
4.2 Earthdata Code Collaborative (ECC)
A prerequisite for ECC access is an activated Earthdata Login account (Section 4.1). Next, request access to the ECC at https://ecc.earthdata.nasa.gov. Project teams should designate the project lead (typically, the Project PI) to manage the permissions of other members in the project. To create a new project in ECC, view the ECC instructions after you get an Earthdata Login account. Once created, the project will be automatically set up in the Earthdata Wiki, JIRA bug tracking, and in BitBucket Git.
4.3 Development Environments
All software developed is submitted to a version control repository, BitBucket (Git-based), and tested prior to moving to production systems. Integration begins behind the firewall in a development environment where code developed by projects is tested alongside functionality developed by other projects. After testing is confirmed, features are moved from a Development Integration and Testing (DIT) environment to a System Integration and Testing (SIT) environment, where regression testing is performed. Features are then moved from the SIT environment to a User Acceptance Testing (UAT) environment, allowing for testing by selected end users. Once the release candidate is successfully tested in UAT, it is then moved into the Production (PROD) environment.
The BitBucket is intended for projects that are not open source or not yet open source. Open source projects should make software available in a public repository, such as NASA's Github portal.
4.4 Getting Help
To request help, report a problem, or to submit feedback regarding any data, web tool, application, or service across EOSDIS (i.e., at any DAAC), email support@earthdata.nasa.gov. This will automatically result in the creation of a ticket in the Kayako ticketing system that will be routed to the DAAC or organization most able to respond. Alternatively, on the Earthdata website and on many DAAC websites, you can submit feedback (including questions) by clicking on the feedback icon in the top hat of the webpage (upper right). This also results in a Kayako ticket being created. A number of the DAACs provide other means to provide feedback or submit questions through their own interfaces.