Package org.apache.heron.api
Enum Config.TopologyReliabilityMode
- java.lang.Object
-
- java.lang.Enum<Config.TopologyReliabilityMode>
-
- org.apache.heron.api.Config.TopologyReliabilityMode
-
- All Implemented Interfaces:
Serializable
,Comparable<Config.TopologyReliabilityMode>
- Enclosing class:
- Config
public static enum Config.TopologyReliabilityMode extends Enum<Config.TopologyReliabilityMode>
What is the reliability mode under which we are running this topology Topology writers must set TOPOLOGY_RELIABILITY_MODE to one one of the following modes
-
-
Enum Constant Summary
Enum Constants Enum Constant Description ATLEAST_ONCE
Heron guarantees that each emitted tuple is seen by the downstream components atleast once.ATMOST_ONCE
Heron provides no guarantees wrt tuple delivery.EFFECTIVELY_ONCE
Heron guarantees that each emitted tuple is seen by the downstream components effectively once.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Config.TopologyReliabilityMode
valueOf(String name)
Returns the enum constant of this type with the specified name.static Config.TopologyReliabilityMode[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
ATMOST_ONCE
public static final Config.TopologyReliabilityMode ATMOST_ONCE
Heron provides no guarantees wrt tuple delivery. Tuples emitted by components can get lost for any reason(network issues, component failures, overloaded downstream component, etc).
-
ATLEAST_ONCE
public static final Config.TopologyReliabilityMode ATLEAST_ONCE
Heron guarantees that each emitted tuple is seen by the downstream components atleast once. This is achieved via the anchoring process where emitted tuples are anchored based on input tuples. Note that in failure scenarios, downstream components can see the same tuple multiple times.
-
EFFECTIVELY_ONCE
public static final Config.TopologyReliabilityMode EFFECTIVELY_ONCE
Heron guarantees that each emitted tuple is seen by the downstream components effectively once. This is achieved via distributed snapshotting approach is described at https://docs.google.com/document/d/1pNuE77diSrYHb7vHPuPO3DZqYdcxrhywH_f7loVryCI/edit In this mode Heron will try to take the snapshots of all of the components of the topology every TOPOLOGY_STATEFUL_CHECKPOINT_INTERVAL_SECONDS seconds. Upon failure of any component or detection of any network failure, Heron will initiate a recovery mechanism to revert the topology to the last globally consistent checkpoint
-
-
Method Detail
-
values
public static Config.TopologyReliabilityMode[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (Config.TopologyReliabilityMode c : Config.TopologyReliabilityMode.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static Config.TopologyReliabilityMode valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null
-
-