apache_beam.transforms.userstate module

User-facing interfaces for the Beam State and Timer APIs.

Experimental; no backwards-compatibility guarantees.

class apache_beam.transforms.userstate.StateSpec[source]

Bases: object

Specification for a user DoFn state cell.

class apache_beam.transforms.userstate.BagStateSpec(name, coder)[source]

Bases: apache_beam.transforms.userstate.StateSpec

Specification for a user DoFn bag state cell.

class apache_beam.transforms.userstate.CombiningValueStateSpec(name, coder, combiner)[source]

Bases: apache_beam.transforms.userstate.StateSpec

Specification for a user DoFn combining value state cell.

class apache_beam.transforms.userstate.TimerSpec(name, time_domain)[source]

Bases: object

Specification for a user stateful DoFn timer.

apache_beam.transforms.userstate.on_timer(timer_spec)[source]

Decorator for timer firing DoFn method.

This decorator allows a user to specify an on_timer processing method in a stateful DoFn. Sample usage:

class MyDoFn(DoFn):
  TIMER_SPEC = TimerSpec('timer', TimeDomain.WATERMARK)

  @on_timer(TIMER_SPEC)
  def my_timer_expiry_callback(self):
    logging.info('Timer expired!')
class apache_beam.transforms.userstate.UserStateUtils[source]

Bases: object

static validate_stateful_dofn(dofn)[source]