![](https://img-blog.csdnimg.cn/2019092715111047.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
flink
文章平均质量分 65
flink框架
undo_try
这个作者很懒,什么都没留下…
展开
-
flink1.14 sql基础语法(二) flink sql表定义详解
flink1.14 sql基础语法(二) flink sql表定义详解原创 2023-04-04 23:53:11 · 3211 阅读 · 0 评论 -
Flink1.14 StreamApi(一)常见的source和sink总结
Flink1.14 StreamApi(一)常见的source和sink总结原创 2023-03-15 10:11:50 · 1873 阅读 · 0 评论 -
flink去重(二)解决flink、flink-sql去重过程中的热点问题
解决flink、flink-sql去重过程中的热点问题原创 2022-07-25 18:17:56 · 1052 阅读 · 0 评论 -
flink去重(一)flink、flink-sql中常见的去重方案总结
flink、flink-sql中常见的去重方案总结原创 2022-07-25 18:07:12 · 3676 阅读 · 0 评论 -
flink原理(一) 状态的TTL管理、容错机制
flink原理(一) 状态的TTL管理、容错机制原创 2022-07-22 14:17:48 · 2235 阅读 · 0 评论 -
flink中维表Join几种常见方式总结
flink中维表Join原创 2022-07-21 12:02:40 · 2430 阅读 · 0 评论 -
flink1.14 sql基础语法(一) flink sql表查询详解
flink sql表查询详解原创 2022-07-21 11:26:32 · 7190 阅读 · 0 评论 -
flink1.13 sql基础语法(二)join操作
flink1.13 sql基础语法(二)join操作原创 2022-07-02 17:01:53 · 2122 阅读 · 0 评论 -
flink1.13 sql基础语法(一)DDL、DML
flink1.13 sql基础语法(一)DDL、DML原创 2022-07-02 16:59:12 · 2226 阅读 · 0 评论 -
Flink调优(一)资源调优、背压问题的分析
flink优化原创 2022-06-20 14:40:51 · 3199 阅读 · 0 评论 -
Flink整合Drools
Flink整合Drools将drl文件转换为字符串,存入到mysql中(将drools规则字符串,构造成KieSession对象),通过canal监听此表,存入kafka中,然后通过flink,当作广播流,主流中数据得到动态规则,进行匹配。(1)drl文件package rules;import cn.yyds.rulemk.demos.flink_drools.DataBeanimport org.apache.commons.lang.StringUtilsrule "demo2"原创 2022-04-08 00:00:52 · 3740 阅读 · 2 评论 -
Drools规则引擎的基本使用
Drools规则引擎的基本使用1、概述规则引擎是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。Drools是一个基于java的规则引擎,开源的,可以将复杂多变的规则从硬编码中解放出来,以规则脚本的形式存放在文件中,使得规则的变更不需要修正代码重启机器就可以立即在线上环境生效。其前身是 Codehaus 的一个开源项目叫 Drools,最近被纳入 JBoss 门下,更名为 JBoss R原创 2022-04-07 23:48:40 · 2503 阅读 · 0 评论 -
Flink-SQL常用算子总结
Flink-SQL常用算子1 SELECTSELECT 用于从 DataSet/DataStream 中选择数据,用于筛选出某些列。示例:SELECT * FROM Table;// 取出表中的所有列SELECT name,age FROM Table;// 取出表中 name 和 age 两列与此同时 SELECT 语句中可以使用函数和别名,例如WordCount 中:SELECT word, COUNT(word) FROM table GROUP BY word; 2 WHERE原创 2022-03-30 23:27:53 · 1139 阅读 · 0 评论 -
Flink之Table API& SQL(案例)
Flink之Table API& SQL自 2015 年开始,阿里巴巴开始调研开源流计算引擎,最终决定基于 Flink 打造新一代计算引擎,针对 Flink 存在的不足进行优化和改进,并且在 2019 年初将最终代码开源,也就是Blink。Blink 在原来的 Flink 基础上最显著的一个贡献就是 Flink SQL 的实现。官网地址:https://nightlies.apache.org/flink/flink-docs-release-1.12/dev/table/common.htm原创 2022-03-30 23:21:53 · 2416 阅读 · 0 评论 -
flink中窗口函数(二)函数合用
(4) ProcessWindowFunction with Incremental Aggregation(与增量聚合结合)可将ProcessWindowFunction与增量聚合函数ReduceFunction、AggregateFunction结合。元素到达窗口时增量聚合,当窗口关闭时对增量聚合的结果用ProcessWindowFunction再进行全量聚合。既能够增量聚合,也能够访问窗口的元数据信息(如开始结束时间、状态等)。DataStream<SensorReading原创 2022-03-29 17:44:05 · 1266 阅读 · 0 评论 -
flink中窗口函数(一)基础函数
flink中窗口函数(一)基础函数(1)ReduceFunctionA ReduceFunction specifies how two elements from the input are combined to produce an output element of the same type. Flink uses a ReduceFunction to incrementally aggregate(增量聚合) the elements of a window.ReduceFunction原创 2022-03-29 17:18:50 · 1263 阅读 · 0 评论 -
Flink CDC(二)自定义反序列化器
自定义反序列化器(1)java序列化器生成的数据SourceRecord{sourcePartition={server=mysql_binlog_source}, sourceOffset={ts_sec=1648039948, file=mysql-bin.000064, pos=2881, row=1, server_id=1, event=2}} ConnectRecord{topic='mysql_binlog_source.flink.base_trademark', kafkaPar原创 2022-03-23 21:09:05 · 3040 阅读 · 1 评论 -
Flink CDC(一)基础
Flink CDC一、概述CDC 是 Change Data Capture(变更数据获取)的简称。 核心思想是,监测并捕获数据库的变动(包括数据或数据表的插入、 更新以及删除等),将这些变更按发生的顺序完整记录下来,写入到消息中间件中以供其他服务进行订阅及消费。Flink 社区开发了 flink-cdc-connectors 组件,这是一个可以直接从 MySQL、 PostgreSQL等数据库直接读取全量数据和增量变更数据的 source 组件。目前也已开源,开源地址:https://githu原创 2022-03-22 23:52:35 · 1865 阅读 · 0 评论 -
flink api和flink sql中得窗口操作及案例
滚动窗口、滑动窗口及会话窗口/** * (1)滚动窗口 * * 滚动窗口(Tumbling windows)要用 Tumble 类来定义, 另外还有三个方法: * ⚫ over:定义窗口长度 * ⚫ on:用来分组(按时间间隔) 或者排序(按行数) 的时间字段 * ⚫ as:别名,必须出现在后面的 groupBy 中 */ // Tumbling Event-time Window (事件时间字段rowtime) tab原创 2021-10-27 17:36:11 · 813 阅读 · 0 评论 -
Flink sql 中指定处理时间以及事件时间
Flink sql 中如何指定处理时间?Flink sql 中如何指定事件时间?原创 2021-10-27 17:31:35 · 3599 阅读 · 1 评论 -
dataFrame 和 Table的转换,以及结果表的输出
1、将 DataStream 转换成表 //创建一个流式的执行环境 val env: StreamExecutionEnvironment = StreamExecutionEnvironment.getExecutionEnvironment // 1、 基于dataStream 先流式的读取数据源 val inputStream: DataStream[String] = env.readTextFile("sensor.txt") // 2、map成样例类,这样就原创 2021-10-26 10:33:03 · 1744 阅读 · 0 评论 -
flink sql基础
Table API 和 SQLTable API 和 SQL 的程序结构,与流式处理的程序结构类似; 也可以近似地认为有这么几步:首先创建执行环境,然后定义 source、 transform 和 sink。创建表环境第一种:基于流处理的执行环境/** * 第一种:基于流处理的执行环境 */ val env: StreamExecutionEnvironment = StreamExecutionEnvironment.getExecutionEnvironment原创 2021-10-25 19:20:17 · 152 阅读 · 0 评论 -
Flink的Window
Window概述streaming流式计算是一种被设计用于处理无限数据集的数据处理引擎,而无限数据集是指一种不断增长的本质上无限的数据集,而window是一种切割无限数据为有限数据流进行处理的手段。Window是无限数据流处理的核心,Window将一个无限的stream拆分成有限大小的”buckets”桶,我们可以在这些桶上做计算操作。Window类型Window可以分成两类:**- GlobalWindow(CountWindow)**按照指定的数据条数生成一个Window,与时间无关。-原创 2021-07-05 00:08:45 · 180 阅读 · 0 评论 -
flink物理分区算子源码分析(shuffle,rebalance,broadcast)
0、keyBy参考:添加链接描述1、shuffle源码及案例(ShufflePartitioner,随机)源码//源码public DataStream<T> shuffle() { //通过ShufflePartitioner进行分区 return setConnectionType(new ShufflePartitioner<T>()); }public class ShufflePartitioner<T> e原创 2021-07-02 16:53:52 · 1396 阅读 · 1 评论 -
Flink operator之sum源码分析
1、底层先调用的是aggregate方法,传入SumAggregator,然后在调用reduce方法2、在reduce方法中,会根据数据的类型,调用具体的相加的方法,例如:IntSum、LongSumpublic SingleOutputStreamOperator<T> sum(int positionToSum) { //可以看出底层是调用的是aggregate方法 return aggregate(new SumAggregator<>(po原创 2021-07-02 10:07:40 · 885 阅读 · 0 评论 -
Flink算子(KeyBy的源码分析及案例)
在Flink中,Transformation主要负责对属于的转换操作,调用Transformation后会生成一个新的DataStream。1、KeyBy的源码分析总结:保证key相同的一定进入到一个分区内,但是一个分区内可以有多key的数据;是对数据进行实时的分区,不是上游发送给下游,而是将数据写入到对应的channel的缓存中,下游到上游实时拉取;keyBy底层是new KeyedStream,然后将父DataStream包起来,并且传入keyBy的条件(keySelector);最终会调用原创 2021-07-02 00:08:27 · 4018 阅读 · 2 评论