Flink
远处的海亲吻着天
从事JAVA软件开发
展开
-
Flink paralleism并行度
TaskManager与SlotFlink的每个TaskManager为集群提供solt,slot的数量通常与每个TaskManager可用CPU内核数成比例。一般情况下你的Slot数是每个节点的cpu核数。并行度(Parallel)一个Flink程序由多个任务组成(source、transformation和 sink)。一个任务由多个并行度的实例(线程)来执行,一个任务的并...原创 2019-11-24 20:40:23 · 280 阅读 · 0 评论 -
Flink Window 和 Time、Watermarks 详解
Window聚合事件 (比如 计数、求和)在流上的工作方式与批处理不同比如,对流中的所有元素进行计数是不可能的,因为通常流量是无限的。所以,流上的聚合需要由window来划定范围,比如“计算过去的5分钟”,或者“最后的100各元素的和” window 是一种可以把无限数据切割为有限数据块的手段窗口可以是事件驱动的【Time Window】 比如:每30秒 或者数据驱动的【Count Wi...原创 2019-11-24 19:20:06 · 567 阅读 · 0 评论 -
Flink state、checkPoint
状态(State)我们前面写的word count的例子,没有包含状态管理,如果一个task在处理过程中挂掉了,那么它在内存中的状态都会丢失,所有的数据都需要重新计算,从容错和消息处理的语义上,flink引入了state和checkpoint. 首先取分两个概念 1)state一般指一个具体的task/operator的状态【state数据默认保存在java的堆内存中】 ...原创 2019-11-14 19:27:44 · 512 阅读 · 0 评论 -
Flink Broadcast & Accumlators
DataStreaming Broadcast把元素广播所有的分区,数据会被重复处理 1) 类似于storm 中的allGrouping 2)dataStream.broadcast()package com.im.flink.task.Streaming;import org.apache.flink.api.common.functions.MapFun...原创 2019-11-10 21:14:00 · 194 阅读 · 0 评论 -
DataSet API 介绍
Transformationsmap:输入一个元素,然后返回一个元素,中间可以做一些清洗转换等操作 FlatMap:输入一个元素,可以返回零个,或一个多个元素 MapPartiton:类似map,一次处理一个分区的数据【如果再进行map处理的时候需要获取第三方资源连接,建议使用MapPartiton】 filter:过滤函数,对传入的数据进行判断,符合条件的数据会被保留下 reduce...原创 2019-11-04 11:20:45 · 1517 阅读 · 0 评论 -
DataStream API 介绍
Data Sourcessource是程序的数据输入,你可以通过SteamExecutionEnvironmpent.addSource(SourceFuntion) 来为你的程序添加一个source flink提供了大量的已经实现好的source方法,你也可以自己自定义source (1). 通过实现sourceFunction接口来自定义无并行度的sourcepa...原创 2019-11-03 21:59:26 · 292 阅读 · 0 评论