Faust: Stream Processing Using Windowing Operations


Overview/Description
Expected Duration
Lesson Objectives
Course Number
Expertise Level



Overview/Description
When working with data, windows are a handy tool to accumulate data subsets from input streams and perform aggregation operations on this specific data. In this course, you'll learn how to perform stream processing through windowing operations in Faust. You'll start by examining the different windowing operations possible on input streams, including tumbling, sliding, count, session, and global windows. Next, you'll distinguish the three notions of time associated with streaming events: event, ingestion, and processing time. You'll then use Faust window features to perform windowing operations on input streams and emit aggregation results for every window. Finally, you'll use the REST API server, which all Faust applications have, to make streaming code metrics and table data accessible to the user. Once you're done with this course, you'll be able to use windowing operations via Faust and expose metrics using web views.

Expected Duration (hours)
1.5

Lesson Objectives

Faust: Stream Processing Using Windowing Operations

  • discover the key concepts covered in this course
  • summarize how windowing operations work on input streams
  • recall the different types of windows supported by Faust and their characteristics
  • recall the differences between event time, ingestion time, and processing time
  • implement processing time tumbling windows
  • aggregate data on a per-key, per-window basis
  • contrast tumbling windows and hopping windows
  • use the key index to iterate over keys, values, and items in windowed tables
  • implement event time hopping windows
  • use web views to monitor metrics associated with workers
  • handle GET, PUT, POST, DELETE, and HTTP requests with web views
  • access tables from web views
  • summarize the key concepts covered in this course
  • Course Number:
    it_pyspwfdj_04_enus

    Expertise Level
    Expert