CalCOFI.io CalCOFI.io open data ecosystem

CalCOFI Integrated Database

v2026.09.112026-09-11all versions

Every ingested CalCOFI dataset assembled into one versioned, frozen database — 23 tables, 362,124,968 rows, 2.4 GB of Parquet with a JSON catalog. It is what calcofi4r, calcofi4py, the browser SQL playground, ERDDAP and every app on calcofi.io read.

Access

catalog.json every table and object in this release, with bytes and sha256
datasets.json the record every page on this site is built from (schema 1.0)
release folder the sidecars: metadata, coverage, the station grid, spatial layers
db-schema tables, columns and the entity-relationship diagram at this version
db-query SQL in your browser, straight over the released Parquet
R · calcofi4r
con <- calcofi4r::cc_get_db()   # v2026.09.11
Python · calcofi4py
con = calcofi4py.cc_get_db()   # v2026.09.11
RELEASES.md what changed between releases, and why

Tables

Every table in this release, biggest first, from catalog.json. A view is a table the catalog defines as SQL over others and still ships as Parquet so an older reader keeps working: its rows are counted a second time in the 362,124,968 above.

obs_ctd_full 275,231,999 rows · 1.3 GB · supplemental — the full-resolution CTD series, every bin as the instrument recorded it
obs 31,096,758 rows · 436 MB · view (compatibility copy) — observations — one row per measurement or occurrence, at the event it was taken on
obs_env 29,838,093 rows · 374 MB — environmental observations — one object per measurement type
obs_mets_full 19,926,523 rows · 239 MB · supplemental — the full-resolution underway meteorology series
sample 1,469,151 rows · 24.8 MB — sampling events — casts, bottles, tows, nets, transects; nested where the source nests them (a bottle under its cast, a net under its tow under its station visit) via parent_sample_key, each with its cruise_key
obs_bio 1,258,665 rows · 24.9 MB — biological observations — occurrences with their tow’s gear, effort and densities
sample_spatial 929,632 rows · 7.0 MB
climatology 736,916 rows · 9.5 MB — the 1993–2013 monthly baseline every anomaly subtracts
sample_measurement 589,603 rows · 1.9 MB — event-level effort and conditions — volume filtered, tow depth, wind
obs_attribute 458,184 rows · 1.8 MB — sub-occurrence detail — size or stage classes, counts, behaviour
sample_root 421,450 rows · 10.0 MB · supplemental
spatial_attribute 148,461 rows · 525 KB
spatial 13,206 rows · 45.6 MB
taxon 2,614 rows · 85.8 KB — one row per taxon, keyed to WoRMS or ITIS
dataset_taxon 1,917 rows · 56.6 KB — each dataset’s own taxon vocabulary, resolved to taxon
cruise 842 rows · 19.2 KB — one row per cruise — the designated month, ship and date span
taxon_group 441 rows · 2.7 KB — functional and reporting groups over taxon
grid 218 rows · 101 KB — the CalCOFI station grid
measurement_type 200 rows · 11.7 KB — the measurement vocabulary — units, bounds, NERC ids
ship 49 rows · 1.2 KB — the ship registry, by NODC code
lookup 26 rows · 1.6 KB
dataset 16 rows · 14.3 KB — one row per dataset — citation, licence, measured coverage
region 4 rows · 3.9 KB

Cite

What to cite, and how — the release, one dataset, or a portal record — is a chapter of the docs book.

CalCOFI (2026). CalCOFI Integrated Database, release v2026.09.11 [Data set]. Scripps Institution of Oceanography, NOAA Fisheries, and California Department of Fish and Wildlife. https://calcofi.io/db-schema/?v=v2026.09.11
BibTeX
@misc{calcofi_release_v2026_09_11,
  title     = {CalCOFI Integrated Database, release v2026.09.11},
  author    = {CalCOFI},
  year      = {2026},
  publisher = {Scripps Institution of Oceanography, NOAA Fisheries, and California Department of Fish and Wildlife},
  url       = {https://calcofi.io/db-schema/?v=v2026.09.11}
}

Parts

16 datasets are part of this release.