Akka Materialization
In this section, we will talk about one of the important key concepts of Akka Streams—Materialization. If you are not that keen to know what happens when we run a Graph or RunnableGraph under the hood, you can skip this section and move on to the next section.
What is materialization?
In general, materialization meansgenerating a value (or a set of values) by performing an operation (or some set of operations) on a data element (or a set of data elements).
In simple Akka Streams API terminology:

Then why do we need to know this in Akka Streams? What is the relationship between this concept and Akka Streams? Good questions.
Let's explore this Akka Toolkit's component in more detail in the coming sections.
Akka's Materializer
Akka Toolkit has a Materializer SPI (Service Provider Interface) to support the Materialization component for Akka Stream-based Graphs:
package akka.stream abstract class Materializer { // SPI }
If we want our own customized Materializer, we should provide...