|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
KeyIn
- type of key used as input key typeValueIn
- type of value used as input value type@Beta public interface Job<KeyIn,ValueIn>
This interface describes a mapreduce Job that is build by JobTracker.newJob(KeyValueSource)
.
It is used to execute mappings and calculations on the different cluster nodes and reduce or collate these mapped
values to results.
Implementations returned by the JobTracker are fully threadsafe and can be used concurrently and multiple times once the configuration is finished.
Caution: The generic types of Jobs change depending on the used methods which can make it necessary to use different assignment variables when used over multiple source lines.
An example on how to use it:
HazelcastInstance hz = getHazelcastInstance(); IMap<Integer, Integer> map = (...) hz.getMap( "default" ); JobTracker tracker = hz.getJobTracker( "default" ); Job<Integer, Integer> job = tracker.newJob( KeyValueSource.fromMap( map ) ); ICompletableFuture<Map<String, Integer>> future = job .mapper( buildMapper() ).reducer( buildReducer() ).submit(); Map<String, Integer> results = future.get();
Method Summary | ||
---|---|---|
Job<KeyIn,ValueIn> |
chunkSize(int chunkSize)
Defines the number of elements per chunk. |
|
Job<KeyIn,ValueIn> |
keyPredicate(KeyPredicate<KeyIn> predicate)
Defines the KeyPredicate implementation to preselect keys the MapReduce task will be executed on. |
|
|
mapper(Mapper<KeyIn,ValueIn,KeyOut,ValueOut> mapper)
Defines the mapper for this task. |
|
Job<KeyIn,ValueIn> |
onKeys(Iterable<KeyIn> keys)
Defines keys to execute the mapper and a possibly defined reducer against. |
|
Job<KeyIn,ValueIn> |
onKeys(KeyIn... keys)
Defines keys to execute the mapper and a possibly defined reducer against. |
|
Job<KeyIn,ValueIn> |
topologyChangedStrategy(TopologyChangedStrategy topologyChangedStrategy)
Defines the strategy to handle topology changes while executing the map reduce job. |
Method Detail |
---|
Job<KeyIn,ValueIn> onKeys(Iterable<KeyIn> keys)
keys
- keys to be executed against
Job<KeyIn,ValueIn> onKeys(KeyIn... keys)
keys
- keys to be executed against
Job<KeyIn,ValueIn> chunkSize(int chunkSize)
ReducerFactory
is defined the chunk will be send to the nodes that
is responsible for the emitted keys.
chunkSize
- the number of elements per chunk
Job<KeyIn,ValueIn> topologyChangedStrategy(TopologyChangedStrategy topologyChangedStrategy)
TopologyChangedStrategy
.
topologyChangedStrategy
- strategy to use
Job<KeyIn,ValueIn> keyPredicate(KeyPredicate<KeyIn> predicate)
KeyPredicate
implementation to preselect keys the MapReduce task will be executed on.
Preselecting keys can speed up the job massively.onKeys(Iterable)
or onKeys(Object...)
to define a
range of known and evaluated keys.
predicate
- predicate implementation to be used to evaluate keys
<KeyOut,ValueOut> MappingJob<KeyIn,KeyOut,ValueOut> mapper(Mapper<KeyIn,ValueIn,KeyOut,ValueOut> mapper)
IllegalStateException
to be thrown telling you to not change the internal state.
KeyOut
- type of the emitted keyValueOut
- type of the emitted valuemapper
- tasks mapper
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |