Skip to content
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,5 @@ example_data/
*.nc
_freeze
.venv/

**/*.quarto_ipynb
7 changes: 5 additions & 2 deletions _quarto.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ website:
- text: "Data types and formats"
href: reference-guides/data-structures.qmd
- text: "NASA collections and granules"
href: reference-guides/collections-granules.qmd
- text: "NSIDC map projections and grids"
href: reference-guides/projections.qmd
- text: "Quirky datasets"
Expand Down Expand Up @@ -86,8 +87,10 @@ website:
contents:
- text: "Contributing"
href: appendices/contributing.qmd
- text: "Best Practices"
- text: "What is an API?"
- text: "Glossary"
href: glossary/glossary.qmd
#- text: "Best Practices"
#- text: "What is an API?"

format:
html:
Expand Down
59 changes: 58 additions & 1 deletion glossary/glossary.qmd
Original file line number Diff line number Diff line change
@@ -1,2 +1,59 @@
# Glossary
---
title: "Glossary"
format:
html:
toc: true
---
#### Filter your search by using the handy bar below!

<!-- Search bar -->
<input id="glossary-search" type="text" placeholder="Search terms or definitions..." style="width: 100%; padding: 0.5em; margin-bottom: 1em; font-size: 1em;">
<!-- Glossary entries -->
<details>
<summary>Coordinate Reference System</summary>
A coordinate system that has its position, scale, and orientation defined with respect to an object. This is accomplished through a datum. For geospatial data this is usually the Earth.
</details>

<details>
<summary>Coordinate System</summary>
A set of rules that define how coordinates are assigned to points. Coordinates describing locations on Earth or another object are referenced to a Coordinate Reference System.
</details>

<details>
<summary>Geodetic Coordinate System</summary>
A coordinate reference system based on a geodetic datum.
</details>

<details>
<summary>Map Projection</summary>
A coordinate conversion from an ellipsoidal coordinate system to a plane.
</details>

<details>
<summary>Projected Coordinate Reference System</summary>
A Coordinate Reference System derived from a two dimensional geodetic coordinate reference system by applying a map projection.
</details>

<details>
<summary>Projection Parameters</summary>
Parameters defining a map projection.
</details>

<script>
const searchInput = document.getElementById("glossary-search");
const entries = document.querySelectorAll("details");

searchInput.addEventListener("input", () => {
const filter = searchInput.value.toLowerCase();
entries.forEach(entry => {
const term = entry.querySelector("summary").textContent.toLowerCase();
const definition = entry.textContent.toLowerCase();
// Show if term or definition matches
if (term.includes(filter) || definition.includes(filter)) {
entry.style.display = "";
} else {
entry.style.display = "none";
}
});
});
</script>
6 changes: 3 additions & 3 deletions glossary/glossary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,13 @@ Coordinate System: |
Geodetic Coordinate System: |
A coordinate reference system based on a geodetic datum.

Map Projection: |
A coordinate conversion from an ellipsoidal coordinate system to a plane.

Projected Coordinate Reference System: |
A Coordinate Reference System derived from a two dimensional
geodetic coordinate reference system by applying a map projection.

Map Projection: |
A coordinate conversion from an ellipsoidal coordinate system to a plane.

Projection Parameters: |
Parameters defining a map projection.

129 changes: 129 additions & 0 deletions reference-guides/collections-granules.qmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
---
title: "Collections & Granules"
format:
html:
toc: true
code-fold: false
execute:
enabled: false
---

NASA Earth science data can feel overwhelming when you're new to it... there are thousands of datasets, millions of files, and many tools for accessing them. A first step in combatting the overhwhelm is better understanding how NASA organizes, and talks about, their data.

---

# What Are Collections and Granules?

## 📘 Collections

A **collection** is NASA’s version of a “dataset family.”
Every collection groups together many related files that share common features, such as:

- The same satellite or instrument
- The same science product type
- The same processing level
- A consistent file structure

A collection is the *group* that defines **what** the dataset is.

**Examples:**

- *SMAP L4 Global 3-hourly 9 km EASE-Grid Surface and Root Zone Soil Moisture Geophysical Data V008*
- *ATLAS/ICESat-2 L3A Land and Vegetation Height V007*

Collection metadata includes at least the following:

- Product description
- Spatial & temporal coverage
- Data provider
- Variables
- Version

## 📄 Granules

A **granule** is a single file within a collection.

Each granule usually represents a **single point in space and/or time**. For example, one granule could represent:

- One SMAP orbit pass, or
- One ICESat-2 ground track

Granules also have their own metadata, such as:

- Timestamps
- A spatial bounding box
- File size
- Variables included, etc.

Granules are what you actually **download and analyze**. It is common to need MANY granules for a specific research objective!

---

# NASA’s Metadata Backbone: CMR

NASA stores all metadata (for collections *and* granules) in a system called the **Common Metadata Repository (CMR)**. CMR serves as NASA's search index, metadata database, and API system for data tools.

CMR powers:

- Earthdata Search
- DAAC search portals
- APIs for programmatic discovery
- Cloud-native data access workflows

CMR metadata is stored using the **Unified Metadata Model (UMM)**:

- **UMM-C** → Collection metadata
- **UMM-G** → Granule metadata
- **UMM-Var** → Variables
- **UMM-Svc** → Services
- **UMM-T** → Tools

Using the UMM allows CMR to host its metadata records in several supported native formats, with translation services available between formats.

# Collection & Granule Names

NASA uses structured naming so files can be indexed, searched, and recognized by automated workflows.

### 📘 Collection Names

A collection has:

##### 1. **Long Name (Human-Readable)**
Example:
*SMAP L4 Global 3-hourly 9 km EASE-Grid Surface and Root Zone Soil Moisture Geophysical Data V008*

##### 2. **Short Name (Machine-Friendly)**
Example:
*SPL4SMGP*

##### 3. **Version**
Example:
*008*

The combination **short name + version** uniquely identifies a dataset within CMR.

### 📄 Granule Names

Granule names can get pretty lengthy and will include some important information about the data collection they are contained within, as well as specifics about that granule in particulat. For example, most products will have a naming "formula" that includes the following:

- Product short name
- Date and optional time
- Version
- File type

::: {.callout-note}
Not all naming structures are the same for all data products! If there is a User Guide (found on the data set landing page, NSIDC0803's linked [here](https://nsidc.org/data/nsidc-0803/versions/2)) for that product, it will explain it all for you!
:::

#### Here is an example granule from AMSR2 Daily Polar Gridded Sea Ice Concentrations, Version 2:
`NSIDC0803_SEAICE_AMSR2_S_20240105_v2.0.nc`

##### Naming Breakdown

| Component | Example | Meaning |
|----------|---------|---------|
| Short name | `NSIDC0803` | AMSR2 Daily Polar Gridded Sea Ice Concentrations Product |
| Information | `SEAICE_AMSR2_S` | Variable, satellite, and hemisphere |
| Date/time | `20240105` | YYYYMMDD format |
| Version | `v2.0` | Collection version |
| File type | `.nc` | NetCDF format |
Loading