wordcount command

wordcount is an example that counts words in Shakespeare and demonstrates Beam best practices.

This example is the second in a series of four successively more detailed 'word count' examples. You may first want to take a look at minimal_wordcount. After you've looked at this example, see the debugging_wordcount pipeline for introduction of additional concepts.

For a detailed walkthrough of this example, see

https://beam.apache.org/get-started/wordcount-example/

Basic concepts, also in the minimal_wordcount example: reading text files; counting a PCollection; writing to text files.

New concepts:

  1. Executing a pipeline both locally and using the selected runner
  2. Defining your own pipeline options
  3. Using ParDo with static DoFns defined out-of-line
  4. Building a composite transform

Concept #1: You can execute this pipeline either locally or by selecting another runner. These are now command-line options added by the 'beamx' package and not hard-coded as they were in the minimal_wordcount example. The 'beamx' package also registers all included runners and filesystems as a convenience.

To change the runner, specify:

--runner=YOUR_SELECTED_RUNNER

To execute this pipeline, specify a local output file (if using the 'direct' runner) or a remote file on a supported distributed file system.

--output=[YOUR_LOCAL_FILE | YOUR_REMOTE_FILE]

The input file defaults to a public data set containing the text of King Lear by William Shakespeare. You can override it and choose your own input with --input.

Version
v2.65.0 (latest)
Published
May 6, 2025
Platform
linux/amd64
Imports
11 packages
Last checked
1 day ago

Tools for package owners.