Build production-grade ETL pipelines in Rust that never drop rows silently and never panic on malformed input. In five weeks you will design the Extract boundary with serde-typed readers, enforce a Transform totality contract where every row either yields a validated record or flows through a structured error channel, and emit NDJSON and CSV from the same typed pipeline using the Write trait. You will master thiserror enums, ? propagation, proptest-based property testing, round-trip invariants, and the stderr-vs-stdout separation that makes every pipeline run auditable. The course closes with a preview of how the same contracts migrate to async with tokio — same invariants, different runtime. Every concept is demonstrated with real Rust code the instructor authored in the public repository, not pseudocode. This is the course for engineers who have shipped a Python ETL script that lost data at 2 a.m. and want the Rust type system to make that incident impossible.
Covers ETL pattern, type safety, Rust vs. Bash/Python, ReaderBuilder, and StringRecord.
涵盖的内容
5个视频4篇阅读材料1个作业
显示有关单元内容的信息
5个视频•总计13分钟
Why Typed Pipelines Beat Bash Glue•3分钟
CSV Ingestion with csv::ReaderBuilder•3分钟
Deriving Deserialize for CSV Rows•2分钟
When Row 847 Is Garbage•3分钟
Files, Stdin, Byte Slices: The Read Trait•3分钟
4篇阅读材料•总计40分钟
Key Terms•10分钟
Reflection•10分钟
Key Terms•10分钟
Reflection•10分钟
1个作业•总计30分钟
Extract — The Input Boundary•30分钟
Transform — The Business Logic Layer
第 2 单元•小时 后完成
单元详情
Covers totality invariant, audit compliance, transform signature, error channel, and accumulation vs. short-circuit.
涵盖的内容
6个视频4篇阅读材料1个作业
显示有关单元内容的信息
6个视频•总计18分钟
The Totality Contract: Zero Data Loss•3分钟
Validation and Rejection•3分钟
Normalizing Fields: Dollars to Cents•3分钟
Deriving Computed Columns•3分钟
Composing Filter, Map, and Enrich•3分钟
Accumulating Results Without unwrap•3分钟
4篇阅读材料•总计40分钟
Key Terms•10分钟
Reflection•10分钟
Key Terms•10分钟
Reflection•10分钟
1个作业•总计5分钟
Transform — The Business Logic Layer•5分钟
Load — The Output Boundary
第 3 单元•小时 后完成
单元详情
Covers NDJSON format, serde_json::to_string(), NDJSON advantages, serde Serialize, and csv::Writer.
涵盖的内容
6个视频4篇阅读材料1个作业
显示有关单元内容的信息
6个视频•总计16分钟
Newline-Delimited JSON with serde_json•3分钟
CSV Output with csv::Writer•2分钟
Proving Round-Trip Safety•3分钟
Dual-Format Sinks: Same Data, Two Files•2分钟
Sink Error Recovery: Skip, Log, Continue•3分钟
Files, Stdout, Buffers: The Write Trait•2分钟
4篇阅读材料•总计40分钟
Key Terms•10分钟
Reflection•10分钟
Key Terms•10分钟
Reflection•10分钟
1个作业•总计5分钟
Load — The Output Boundary•5分钟
Composition, Testing, and Observability
第 4 单元•小时 后完成
单元详情
Covers thin orchestrator, function composition, exit codes, thiserror derive, and ? propagation.
涵盖的内容
6个视频4篇阅读材料1个作业
显示有关单元内容的信息
6个视频•总计16分钟
Wiring E→T→L in main•2分钟
Formalizing Errors with thiserror•3分钟
Property-Based Testing for Pipelines•3分钟
Integration Tests with Fixture Data•3分钟
Structured Pipeline Reporting•2分钟
From Sync to Async: What C4 Changes•3分钟
4篇阅读材料•总计40分钟
Key Terms•10分钟
Reflection•10分钟
Key Terms•10分钟
Reflection•10分钟
1个作业•总计5分钟
Composition, Testing, and Observability•5分钟
Capstone
第 5 单元•小时 后完成
单元详情
Integrate every stage of the ETL pipeline into one end-to-end Rust
program. The capstone has two tracks: a local Cargo project with a
passing test suite and a zero-install Playground reading that runs
end-to-end in any browser at play.rust-lang.org.
When will I have access to the lectures and assignments?
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
What will I get if I subscribe to this Specialization?
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Is financial aid available?
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.