Class: Google::Apis::DataflowV1b3::SourceSplitRequest

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/dataflow_v1b3/classes.rb,
lib/google/apis/dataflow_v1b3/representations.rb,
lib/google/apis/dataflow_v1b3/representations.rb

Overview

Represents the operation to split a high-level Source specification into bundles (parts for parallel processing). At a high level, splitting of a source into bundles happens as follows: SourceSplitRequest is applied to the source. If it returns SOURCE_SPLIT_OUTCOME_USE_CURRENT, no further splitting happens and the source is used "as is". Otherwise, splitting is applied recursively to each produced DerivedSource. As an optimization, for any Source, if its does_not_need_splitting is true, the framework assumes that splitting this source would return SOURCE_SPLIT_OUTCOME_USE_CURRENT, and doesn't initiate a SourceSplitRequest. This applies both to the initial source being split and to bundles produced from it.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ SourceSplitRequest

Returns a new instance of SourceSplitRequest.



5501
5502
5503
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 5501

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#optionsGoogle::Apis::DataflowV1b3::SourceSplitOptions

Hints for splitting a Source into bundles (parts for parallel processing) using SourceSplitRequest. Corresponds to the JSON property options



5494
5495
5496
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 5494

def options
  @options
end

#sourceGoogle::Apis::DataflowV1b3::Source

A source that records can be read and decoded from. Corresponds to the JSON property source



5499
5500
5501
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 5499

def source
  @source
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5506
5507
5508
5509
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 5506

def update!(**args)
  @options = args[:options] if args.key?(:options)
  @source = args[:source] if args.key?(:source)
end