Exa has developed exa-d, a data processing framework designed to ingest and process the entire web at scale. It represents data transformations as a dependency graph of typed columns, enabling declarative updates and efficient, parallel execution. exa-d utilizes Lance on S3 for storage, allowing for precise, incremental updates at the fragment and column level, minimizing write amplification and supporting dynamic data modification for ML-driven features. This post details the construction of a framework that allows engineers to declare relationships between data, rather than the steps to update them, ensuring strict typing and catching invalid transformations early. The storage layer leverages Lance for fragment-level updates, enabling precise modifications without rewriting entire datasets. The execution layer focuses on efficient and parallel processing, scaling from tens to thousands of nodes and minimizing waste by computing only what is necessary.
All Exa trails