中英双文网站怎么做,企业主页制作方法,php工程师对wordpress,上海国际建设总承包公司网站Flink的数据流处理#xff0c;是持续流模型#xff0c;数据不会落地#xff0c;上游和下游的Task同时启动#xff0c;等待数据的到达#xff0c;Flink的批处理还是用的MapReduce计算模型#xff0c;先处理map端#xff0c;再执行reduce端。
flink的流处理(STREAMING)是持续流模型数据不会落地上游和下游的Task同时启动等待数据的到达Flink的批处理还是用的MapReduce计算模型先处理map端再执行reduce端。
flink的流处理(STREAMING)
是持续流模型上游和下游的task任务同时启动持续等待数据的到达可以处理无界流和有界流因为数据是一条条进行处理的但是处理有界流的时候打印出来的结果会显示多个(最终结果) 比如文本每行都有java,一共有java20,但是会打印java 8 ,java 10,java 20,显示多个最终结果
flink的批处理(BATCH):
底层还是MapReduce的计算模型先处理map端再处理reduce端只能处理有界流 不能处理无界流 因为执行的方式不同MR不可能持续等待数据的到达而是一次性批量的处理数据
代码展示如下 import org.apache.flink.api.common.RuntimeExecutionMode;
import org.apache.flink.streaming.api.datastream.DataStream;
import org.apache.flink.streaming.api.datastream.DataStreamSource;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;//TODO:无界流程序开始之后数据量是不确定的没有边界程序一直持续等待数据的到达
// 有界流就是指数据量是确定的比如一个文件是知道具体的大小的//todo:flink的流处理(STREAMING)是持续流模型上游和下游的task任务同时启动持续等待数据的到达
// 可以处理无界流和有界流因为数据是一条条进行处理的但是处理有界流的时候打印出来的结果会显示多个(最终结果)
// 比如文本每行都有java,一共有java20,但是会打印java 8 ,java 10,java 20,显示多个最终结果//todo:flink的批处理(BATCH):底层还是MapReduce的计算模型先处理map端再处理reduce端只能处理有界流
// 不能处理无界流 因为执行的方式不同MR不可能持续等待数据的到达而是一次性批量的处理数据public class flinkTest {public static void main(String[] args) throws Exception {//创建flink环境StreamExecutionEnvironment env StreamExecutionEnvironment.getExecutionEnvironment();//设置并行度env.setParallelism(2);//数据从上游发送到下游的缓存时间,默认也是200ms延迟env.setBufferTimeout(200);//数据读取,无界流//nc -lk 8888DataStreamSourceString linesDSN env.socketTextStream(master, 8888);linesDSN.print();// //数据读取有界流,N是no代表无界H是have代表有界
// //设置为批处理的方式
// env.setRuntimeMode(RuntimeExecutionMode.STREAMING);
// DataStreamString linesDSH env.readTextFile(ScalaTest/src/main/java/data/score.txt);
// linesDSH.print();//启动flink,execute会触发任务调度env.execute(w);}
}