EdX

Rust Data Engineering (edX)

Rust Data Engineering (edX)

Use Rust's power for high-performance, concurrent data pipelines - from core principles to real-world deployments.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

Rust for Data Engineering: Efficient, Safe, and Concurrent Data Processing

  • Learn to build robust data processing systems using Rust
  • Explore Rust's performance, safety, and concurrency for data tasks

This 4-week course dives deep into leveraging Rust for efficient and reliable data engineering workflows:

  • Mastering Rust data structures and collections for data processing
  • Leveraging Rust's safety/security features in data engineering context
  • Using Rust libraries like Diesel, async, Polars, Apache Arrow
  • Interfacing with data stores, REST/gRPC APIs, AWS SDK
  • Designing full-fledged data pipelines and processing systems in Rust
  • Hands-on projects for building data ingestion tools, ETL pipelines
  • Best practices for handling large datasets, optimizing performance
  • Techniques for writing safe, concurrent, and lock-free code
  • Deploying and maintaining Rust-based data engineering solutions

By the end, you'll gain practical experience building high-performance, secure data systems using Rust - preparing you for real-world data challenges.
This course is part of the following programs:

What you'll learn

  • Leverage Rust's robust data structures and collections for efficient data manipulation.
  • Use Rust's safety and security features to build reliable and secure data engineering solutions.
  • Utilize Rust's libraries and tools specific to data engineering, such as Diesel, async, Polars, and Apache Arrow.
  • Interface effectively with databases, data processing systems, REST and gRPC protocols, and leverage AWS SDK for cloud-based data operations in Rust.
  • Design and implement comprehensive data processing systems in Rust.
  • Apply the principles of concurrent programming in Rust to build high-performance data processing applications.
  • Identify and mitigate common data engineering problems using Rust's unique features, like its strong type system and memory safety guarantees.
  • Develop command-line applications and multi-threaded servers in Rust, focusing on efficient, safe, and concurrent processing of data.
  • Create practical projects, gaining hands-on experience in Rust for data engineering.

Syllabus

\- Module 1: Rust Data Structures: Collections (18 hours)
\- 24 videos (Total 111 minutes)
\- 29 readings (Total 290 minutes)
\- 1 quiz: Rust Collections (Quiz, 30 minutes)
\- 2 assignments
\- Quiz-Getting Started With The Modern Rust Development Ecosystem (Assignment, 180 minutes)
\- Quiz-Rust Sequences and Maps (Assignment, 180 minutes)
\- 5 ungraded labs (60 minutes each)
\- Module 2: Safety, Security and Concurrency with Rust (17 hours)
\- 22 videos (Total 93 minutes)
\- 21 readings (Total 210 minutes)
\- 1 quiz: Safety, Security and Concurrency with Rust (Quiz, 30 minutes)
\- 3 assignments
\- Quiz-Rust Safety and Security Features (Assignment, 180 minutes)
\- Quiz-Security Programming with Rust (Assignment, 180 minutes)
\- Quiz-Rust Concurrency (Assignment, 180 minutes)
\- 3 ungraded labs (60 minutes each)
\- Module 3: Rust Data Engineering Libraries and Tools (13 hours)
\- 21 videos (Total 127 minutes)
\- 14 readings (Total 140 minutes)
\- 1 quiz: Quiz3: Rust Data Engineering Libraries and Tools (Quiz, 30 minutes)
\- 2 assignments
\- Quiz-Using Rust to Manage Data, Files and Network Storage (Assignment, 180 minutes)
\- Quiz-DataFrames with Rust, Python and Notebooks (Assignment, 180 minutes)
\- 3 ungraded labs (60 minutes each)
\- Module 4: Designing Data Processing Systems in Rust (13 hours)
\- 22 videos (Total 124 minutes)
\- 17 readings (Total 170 minutes)
\- 2 quizzes
\- Designing Data Processing Systems in Rust (Quiz, 30 minutes)
\- Final Course Quiz (Quiz, 30 minutes)
\- 2 assignments
\- Quiz-Getting Started with Rust Data Pipelines (Including ETL) (Assignment, 180 minutes)
\- Quiz-Using Rust and Python for LLMs, ONNX, Hugging Face, and PyTorch Pipelines (Assignment, 180 minutes)
\- 2 ungraded labs (60 minutes each)

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Data Structures & Algorithms Using C++ (edX) EdX
IBM

Data Structures & Algorithms Using C++ (edX)

Build efficient programs by learning how to implement data structures using algorithmic techniques and solve various computational problems using the C++ programming language. Understanding various data structures and algorithms is the foundation of modern programming. In this self-paced course you will learn about the characteristics of commonly used data structures and algorithms and how to implement them to be able to conduct efficiency analyses in C++ from scratch.

Self Paced
Self-Paced
AP Computer Science A: Java Programming Polymorphism and Advanced Data Structures (edX) EdX
Purdue University,PurdueX

AP Computer Science A: Java Programming Polymorphism and Advanced Data Structures (edX)

AP Computer Science A from Purdue University. This computer science course covers advanced OOP strategies, including polymorphism, abstract classes, super keyword, exceptions, generics, sorting and searching algorithms. This course is for anyone interested in taking a first-level computer-programming course, particularly those who attend a school that does not provide a similar class.

This course is archived
5-12 Weeks
Fundamentals of Python (edX) EdX
SDA_Bocconi,SDA Bocconi School of Management

Fundamentals of Python (edX)

We will equip you with everything you need to properly start using Python in your daily work activities. You will learn how to install Python and work with it through different graphical front-ends. You will then learn how to define objects and how to recognize different characteristics and functionalities. Finally, you will learn how to make Python execute a series of instructions in a sequential order through loops, as well as how to write your own functions.

Self Paced
Self-Paced
Data Structures and Algorithm Design Part I | 数据结构与算法设计(上) (edX) EdX
Tsinghua University,TsinghuaX

Data Structures and Algorithm Design Part I | 数据结构与算法设计(上) (edX)

Learn the basics of data structures and methods to design algorithms and analyze their performance. 本课程旨在围绕各类数据结构的设计与实现,揭示其中的规律原理与方法技巧;同时针对算法设计及其性能分析,使学生了解并掌握主要的套路与手段。

Self Paced
Self-Paced
Introducción a la programación en Java: estructuras de datos y algoritmos (edX) EdX
Universidad Carlos III de Madrid - UC3M,UC3Mx

Introducción a la programación en Java: estructuras de datos y algoritmos (edX)

¡Aprende a mejorar tu código en Java utilizando estructuras de datos fundamentales y potentes algoritmos de programación! En este curso introductorio de java aprenderás programación en Java de forma fácil e interactiva. Trabajarás con estructuras de datos fundamentales, tales como listas, pilas, colas y árboles, sobre las cuales se presentarán algoritmos para insertar, eliminar, buscar y ordenar información de una manera eficiente.

Self Paced
Self-Paced
Algorítmica Básica (edX) EdX
Tecnológico de Monterrey,TecdeMonterreyX

Algorítmica Básica (edX)

Aprende los fundamentos del pensamiento algorítmico, estructuras de datos y los principios básicos de programación con aplicación a los negocios. Los algoritmos pueden ser utilizados para la solución de problemas de negocio. En este curso aprenderás los conceptos básicos de algoritmos y el manejo de estructuras de datos.

Self Paced
Self-Paced
Introduction to Java Programming: Fundamental Data Structures and Algorithms (edX) EdX
Universidad Carlos III de Madrid - UC3M,UC3Mx

Introduction to Java Programming: Fundamental Data Structures and Algorithms (edX)

Learn to enhance your code by using fundamental data structures and powerful algorithms in Java. In this introductory course, you will learn programming with Java in an easy and interactive way. You will learn about fundamental data structures, such as lists, stacks, queues and trees, and presents algorithms for inserting, deleting, searching and sorting information on these data structures in an efficient way.

Self Paced
Self-Paced