We may earn an affiliate commission when you visit our partners.

Streams

Save
May 1, 2024 Updated June 22, 2025 21 minute read

An Introduction to Streams: Navigating the Flow of Modern Data

In the vast and ever-evolving landscape of technology, "Streams" represent a fundamental concept in how we handle and process data. At a high level, a stream refers to a continuous flow of data, often generated from various sources, that needs to be processed, analyzed, and acted upon in real-time or near real-time. Think of it like a river: water (data) is constantly flowing, and we can build mechanisms to observe, divert, or utilize this flow for specific purposes. This paradigm contrasts with traditional batch processing, where data is collected over a period and processed in chunks. The ability to manage and interpret these ceaseless data currents is becoming increasingly vital across numerous sectors.

Path to Streams

Take the first step.
We've curated 24 courses to help you on your path to Streams. Use these to develop your skills, build background knowledge, and put what you learn to practice.
Sorted from most relevant to least relevant:

Share

Help others find this page about Streams: by sharing it with your friends and followers:

Reading list

We've selected four books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Streams.
Introduces reactive programming using Kotlin, a modern programming language well-suited for stream processing. It covers the core concepts and patterns of reactive programming, with a focus on building scalable and responsive applications.
Covers the architecture, APIs, and use cases of Apache Flink, a popular distributed stream processing framework. It provides a comprehensive guide to building and deploying scalable and reliable stream processing applications with Flink.
Teaches stream processing using the Scala programming language. It covers the fundamentals of stream processing and provides practical examples of building and deploying stream processing applications in Scala.
Provides a deep dive into concurrency and parallelism, covering fundamental concepts and advanced topics. While it does not directly focus on streams, it offers valuable insights into the challenges and techniques involved in designing and implementing concurrent systems, which are essential for understanding stream processing.
Table of Contents
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser