Portfolio
Area C—Data Foundation
Archive-Scale DICOM Metadata Extraction
Parallel ETL · ~1M-file archives
Turning million-file binary archives into analysis-ready tables — the input to every cohort.
- files per archive
- ~1M
- files per archive
- curated tags, or all
- ~40
- curated tags, or all
01/Problem
Before any cohort can be curated, DICOM metadata has to exist in tabular form — but it's locked inside binary files across deep storage hierarchies, in archives too large to process serially.
02/Approach
A configurable parallel ETL that enumerates DICOMs across arbitrary cloud-storage layouts and extracts a curated tag subset or everything. It auto-detects directory topology and refuses to guess on ambiguous roots. Nested multiprocessing keeps memory bounded; batches flush incrementally and resume idempotently; malformed files are recorded, not fatal.
03/Outcome
- ~1M-file archives turned into analysis-ready manifests feeding cohort selection, EDA, de-identification and dataset building.
- Run across multiple production and multi-customer archives.
- Memory-bounded and restartable, making multi-hour runs practical.
04/My role
- Directed it be built as a reusable, operator-configurable tool rather than a per-project script — cohort selection recurred across every product line.
Stack
PythonpydicomGCSmultiprocessing