[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Assign IDs to Operators

Dear All,

As stated here (https://ci.apache.org/projects/flink/flink-docs-stable/ops/state/savepoints.html), it is highly recommended to assign IDs to Operators, especially for the stateful ones.

My question is: what is the gradually of a so-called Operator.

To be more specific, in the following example, we have the Operators like, addSource and map. I am wondering is shuffle and print also a some kind of Operator?

DataStream<String> stream = env.
  // Stateful source (e.g. Kafka) with ID
  .addSource(new StatefulSource())
  .uid("source-id") // ID for the source operator
  // Stateful mapper with ID
  .map(new StatefulMapper())
  .uid("mapper-id") // ID for the mapper
  // Stateless printing sink
  .print(); // Auto-generated ID

Or, in the following example, how many Operator we have (that we can assign IDs to)? 3? KeyBy, window and aggregate?

    .keyBy(<key selector>)
    .window(<window assigner>)
    .aggregate(new AverageAggregate)

Then, how many Operators (and which are they) do we have in the following example?


Many Thanks.

Best regards/祝好,

Chang Liu 刘畅