use of org.apache.apex.malhar.lib.window.WindowOption in project apex-malhar by apache.
the class AutoComplete method populateDAG.
/**
* Populate the dag with High-Level API.
* @param dag
* @param conf
*/
@Override
public void populateDAG(DAG dag, Configuration conf) {
TweetsInput input = new TweetsInput();
Collector collector = new Collector();
WindowOption windowOption = new WindowOption.GlobalWindow();
ApexStream<String> tags = StreamFactory.fromInput(input, input.output, name("tweetSampler")).flatMap(new ExtractHashtags());
tags.window(windowOption, new TriggerOption().accumulatingFiredPanes().withEarlyFiringsAtEvery(1)).addCompositeStreams(ComputeTopCompletions.top(10, true)).print(name("console")).endWith(collector, collector.input, name("collector")).populateDag(dag);
}
use of org.apache.apex.malhar.lib.window.WindowOption in project apex-malhar by apache.
the class TwitterAutoComplete method populateDAG.
/**
* Populate the dag with High-Level API.
* @param dag
* @param conf
*/
@Override
public void populateDAG(DAG dag, Configuration conf) {
TwitterSampleInput input = new TwitterSampleInput();
WindowOption windowOption = new WindowOption.GlobalWindow();
ApexStream<String> tags = StreamFactory.fromInput(input, input.text, name("tweetSampler")).filter(new ASCIIFilter(), name("ACSII Filter")).flatMap(new ExtractHashtags(), name("Extract Hashtags"));
ApexStream<Tuple.WindowedTuple<KeyValPair<String, List<CompletionCandidate>>>> s = tags.window(windowOption, new TriggerOption().accumulatingFiredPanes().withEarlyFiringsAtEvery(Duration.standardSeconds(10))).addCompositeStreams(ComputeTopCompletions.top(10, true)).print();
s.populateDag(dag);
}
Aggregations