# CalCOFI CTD on ERDDAP — benchmark artifacts

Reproducibility bundle for "Serving large CalCOFI CTD profiles on ERDDAP:
NetCDF vs DuckDB vs Parquet vs CSV".

- Report (HTML): bench_erddap_ctd.html  (also at https://calcofi.io/workflows/bench_erddap_ctd.html)
- results_all.csv      — backend x table benchmark matrix (load memory, query latency)
- layout_results.csv   — Parquet partitioning/ordering experiment
- calcofi_ctd.db        — the 274 KB DuckDB file of CREATE VIEW ... read_parquet(...) views
- build_views.sql       — the view definitions
- dataset-xml/          — generated ERDDAP <dataset> blocks (NetCDF/DuckDB/Parquet/CSV; prod_*)
- sample-netcdf/        — one per-cruise CF profile file for each table (cruise 1998-04-31JD)

Code: https://github.com/CalCOFI/workflows  (libs/erddap_netcdf.R, libs/erddap_duckdb.R, scripts/)
Live datasets: https://erddap.calcofi.io/erddap/tabledap/calcofi_ctd_thin.html
               https://erddap.calcofi.io/erddap/tabledap/calcofi_ctd_measurement.html
The full per-cruise NetCDF set is downloadable from ERDDAP (accessibleViaFiles).
