
flink streaming
文章平均质量分 78
codemosi
hadoop hive hbase mahout storm spark kafka flume,等连载中,做个爱分享的人。
干一件事,干好一件事!
QQ :1606588828
展开
-
07_Flink Streaming transform
flatmap,map,filter都是转换,通过datastream的transform方法。以最经典的flatmap为例,transform,需要三个参数,操作名字,输出类型,对输入数据的操作。返回SingleOutputStreamOperator,是datastream的子类,也就是可以链式的调用。返回一个OneInputTransformation。是StreamTransforma原创 2016-06-08 10:15:45 · 1586 阅读 · 0 评论 -
03_Flink Streaming SinkFunction
env对象的addSink(SinkFunction)。需要传入一个SinkFunction对象。这个对象处理的出口。之后无法再进行数据操作。package com.alibaba.flink.train.streaming;import org.apache.flink.configuration.Configuration;import org.apache.flink.stream原创 2016-06-06 08:38:15 · 4469 阅读 · 0 评论 -
04_Flink Streaming DataStream
DataStream对象,简称ds,作为流计算编程的核心上下文。提供多种功能//1:接入数据源1:ds由env和SourceFunction产生,完成接入数据源的功能//2:数据处理2:filter。实现过滤功能3:map,实现1->1的映射转换4:flatmap,实现拆解字符串等复杂的转换功能5:project,实现字段裁剪6:transform实现复杂需求的功能原创 2016-06-06 09:51:25 · 2899 阅读 · 0 评论 -
12_Flink Streaming cluster
在此之前的都是如何编写api,制作topology的过程。提交到集群后,就是运行topology了。运行时的模块大多都是scala写的,可能是因为使用akka通信。之前绘制DAG的过程大多是java写的。flink的cluster有两种,LocalFlinkMiniCluster和FlinkMiniCluster,本地运行时是LocalFlinkMiniCluster,集群运行时是FlinkM原创 2016-06-09 17:23:35 · 1371 阅读 · 0 评论 -
06_Flink Streaming State
state,状态管理可以用来物化流计算的数据,做聚合和容错。可以物化到jobmanager内存中和文件系统中。有四种类型的state,通过StreamingRuntimeContext.get对应的state。package com.alibaba.flink.train.streaming;import org.apache.flink.api.common.functions.Rich原创 2016-06-07 11:10:37 · 2210 阅读 · 0 评论 -
11_Flink Streaming partition
flink的处理逻辑包括1:transform算子类型(我们指定的map,filter转换算子)2:operator(我们实现的Function具体业务)3:partition(数据的分区分组划分,上一个算子处理后的数据,如何传输给下一个算子。)StreamPartitioner是partition的接口。需要实现这个接口,才能实现数据传输的逻辑。1:copy;2:int[原创 2016-06-09 15:28:37 · 2565 阅读 · 0 评论 -
10_Flink Streaming jobSubmit
./bin/flink run ./examples/batch/WordCount.jar通过shell提交job后。flink将程序产生的jobGraph和jar包传给 jobmanager(简称JM)。再由jobmanager(类似nimbus)将任务分解到taskmanager(一个jvm带一个taskmanager)运行。JM将jobGraph转化成executionGrap原创 2016-06-09 14:22:18 · 8339 阅读 · 1 评论 -
09_Flink Streaming execute
通过env.execute();启动任务。env有四个实现类。LocalStreamEnvironment,是在本地jvm使用多线程模拟一个flink集群。四个实现类都是通过getStreamGraph来获取DAG图对象StreamGraph。StreamGraph,保存着点边关系,和需要的上下文对象。可以重新api编程的语义。持有一个JobGraph对象,用来提交给集群。由Client,Jo原创 2016-06-09 11:26:14 · 4978 阅读 · 1 评论 -
01_Flink Streaming env
package com.alibaba.flink.train.streaming;import org.apache.flink.api.common.functions.FlatMapFunction;import org.apache.flink.api.java.tuple.Tuple2;import org.apache.flink.streaming.api.dat原创 2016-06-03 10:02:03 · 3233 阅读 · 0 评论 -
02_Flink Streaming SourceFunction
env对象的addSource(Source)。需要传入一个Source对象。这个对象作为接入数据源的接口package com.alibaba.flink.train.streaming;import org.apache.flink.configuration.Configuration;import org.apache.flink.streaming.api.functions.原创 2016-06-03 10:25:23 · 3866 阅读 · 1 评论 -
08_Flink Streaming window
flink提供时间和事件的滑动和跳动的四种窗口。来看下滑动时间窗口的实现。flink中支持三种时间语义,1:系统时间,也就是operator在处理数据的时候,当时机器上的时间,性能最高,ProcessingTime。2:采集时间,也就是flink第一次采集到数据的时间,数据一进来的时候就指定好了。性能一般,还需要把source的时间往下传,IngestionTime3:事件时间:也原创 2016-06-08 11:04:43 · 1952 阅读 · 0 评论 -
05_Flink Streaming KeyedStream
KeyedStream继承了DataStream,是由datastream的keyBy(),产生的。表示按key的value分区过的流。在datastream的功能基础上,由添加了一些max,min等聚合的功能。//1:聚合函数1:aggregate,通过AggregationFunction实现类,实现各种数据聚合的功能2:sum,数据累加3:max,取最大数4:mi原创 2016-06-06 10:20:40 · 5802 阅读 · 0 评论