How to use Flink Sum to get the sum of values in a set of data streams
This article mainly explains "how to use Flink Sum to obtain the sum of values in a set of data streams." Interested friends may wish to have a look. The method introduced in this paper is simple, fast and practical. Let's let Xiaobian take you to learn "how to use Flink Sum to get the sum of values in a set of data streams"!
sum operator: Gets the sum of values in a set of data streams
example environment
java.version: 1.8.xflink.version: 1.11.1
Sample Data Source (Project Code Cloud Download)
Flink System Example: Building Development Environment and Data
Sum.java
import com.flink.examples.DataSource;import org.apache.flink.api.common.functions.MapFunction;import org.apache.flink.api.common.typeinfo.Types;import org.apache.flink.api.java.functions.KeySelector;import org.apache.flink.api.java.tuple.Tuple2;import org.apache.flink.api.java.tuple.Tuple3;import org.apache.flink.streaming.api.datastream.DataStream;import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;import java.util.List;/** * @Description sum operator: Gets the sum of values in a set of data streams */public class Sum { /** * Traversing the collection, returning the sum of ages under each gender partition * @param args * @throws Exception */ public static void main(String[] args) throws Exception { final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); List tuple3List = DataSource.getTuple3ToList(); DataStream dataStream = env.fromCollection(tuple3List) .map(new MapFunction() { @Override public Tuple2 map(Tuple3 tuple3) throws Exception { return new Tuple2(tuple3.f1,tuple3.f2); } }) .returns(Types.TUPLE(Types.STRING,Types.INT)) .keyBy((KeySelector) k ->k.f0) //Scroll by number window, calculate once every 3 input data streams .countWindow(3) .sum(1); dataStream.print(); env.execute("flink Sum job"); }}
print result
4> (girl,74)2> (man,79) At this point, I believe that everyone has a deeper understanding of "how to use Flink Sum to obtain the sum of values in a set of data streams." Here is the website, more related content can enter the relevant channels for inquiry, pay attention to us, continue to learn!