Apache Flink with Scala 3

Master everything you need to write production-level Flink applications in Scala 3 through hands-on exercises!

As the latest Flink course in Scala 3 released in 2024, it covers Flink’s basic and advanced concepts each followed by hands-on exercises. This course cuts through all the complexities of integrating the very recent Flink version 1.17 with Scala 3 and Kubernetes. Starting with version 1.15 of Flink, Scala support was removed to make it easier to integrate with multiple versions of Scala, including Scala 3. This course includes step by step video demonstrations on how to resolve the problem of classpath collision when deploying Flink applications in Scala 3 on Kubernetes.

What you’ll learn

  • Learn Flink’s basic and advanced concepts and architecture each followed by hands-on exercises in Scala 3.
  • Learn how Flink handles stream processing, distributed and stateful computation.
  • Learn to handle event time processing using Flink’s watermarks mechanism and window operation.
  • Learn to integrate Flink version 1.17 with Kafka and Kubernetes using Scala 3.
  • Learn to write stateful applications using Flink’s key concepts including checkpoint mechanism, map state, list state and value state.
  • Learn Flink’s deployment modes and deploy your own Flink application on Kubernetes.

Course Content

  • Introduction –> 4 lectures • 17min.
  • Anatomy of a Flink Pipeline –> 17 lectures • 1hr 5min.
  • Advanced Flink Concepts –> 17 lectures • 1hr 8min.
  • Flink Application Deployment –> 1 lecture • 10min.

Auto Draft

Requirements

As the latest Flink course in Scala 3 released in 2024, it covers Flink’s basic and advanced concepts each followed by hands-on exercises. This course cuts through all the complexities of integrating the very recent Flink version 1.17 with Scala 3 and Kubernetes. Starting with version 1.15 of Flink, Scala support was removed to make it easier to integrate with multiple versions of Scala, including Scala 3. This course includes step by step video demonstrations on how to resolve the problem of classpath collision when deploying Flink applications in Scala 3 on Kubernetes.

Concretely, here’s what you will learn to either ace your next Flink interview or be ready to write your production level Flink application:

1. Flink and Streaming Fundamentals

You’ll understand how Flink handles stream processing, distributed and stateful computation; You’ll learn Flink’s architecture including Flink cluster’s components; You’ll know how to deploy and manage the lifecycle of a Flink application.

2. Flink Data Pipeline

You’ll understand different levels of abstraction for developing streaming applications; You’ll be able to process big data in real time any way you want to by mastering fundamental Flink concepts including: data ingestion, efficient data transformation, controlling your applications with lower level APIs, producing output streams to data sinks.

3. Integration with Apache Kafka

You’ll learn configuration of Kafka Source and Kafka Sink; You’ll master how to set up Kafka dependencies in built.sbt and how to integrate Kafka with Flink as a data source or data sink.

4. Time Handling, Watermarks and Windows

You’ll be able to handle event time processing using Flink’s watermarks mechanism and window operation including tumbling window, sliding window and global window.

5. Fault Tolerant

You’ll be able to write stateful applications using Flink’s key concepts including checkpoint mechanism, map state, list state and value state.

6. Integration with Kubernetes

You’ll learn Flink’s deployment modes and deploy your own Flink application on Kubernetes by following along the video demonstration of every deployment step and deployment configurations.

What you’ll get from this course:

You will get 30+ total Flink video lessons with slides and illustrative diagrams plus access to Github Repo with all the code in the course;

You can practice by writing more than 20 Flink applications for common use cases and following along the hands-on video lessons;

You will quickly master the configurations of all the dependencies and steps to deploy Flink 1.17 applications on Kubernetes by following the video demonstration;

You will learn transferrable principles of big data streaming and distributed systems that you can apply on other streaming systems.