java.lang.Object
org.apache.beam.sdk.transforms.PTransform<PCollection<String>,PCollection<KV<String,Long>>>
org.apache.beam.runners.spark.structuredstreaming.examples.WordCount.CountWords
All Implemented Interfaces:
Serializable, HasDisplayData
Enclosing class:
WordCount

public static class WordCount.CountWords extends PTransform<PCollection<String>,PCollection<KV<String,Long>>>
A PTransform that converts a PCollection containing lines of text into a PCollection of formatted word counts.

Concept #3: This is a custom composite transform that bundles two transforms (ParDo and Count) as a reusable PTransform subclass. Using composite transforms allows for easy reuse, modular testing, and an improved monitoring experience.

See Also:
  • Constructor Details

    • CountWords

      public CountWords()
  • Method Details

    • expand

      public PCollection<KV<String,Long>> expand(PCollection<String> lines)
      Description copied from class: PTransform
      Override this method to specify how this PTransform should be expanded on the given InputT.

      NOTE: This method should not be called directly. Instead apply the PTransform should be applied to the InputT using the apply method.

      Composite transforms, which are defined in terms of other transforms, should return the output of one of the composed transforms. Non-composite transforms, which do not apply any transforms internally, should return a new unbound output and register evaluators (via backend-specific registration methods).

      Specified by:
      expand in class PTransform<PCollection<String>,PCollection<KV<String,Long>>>