for your wish
好记性不如烂笔头。个人笔记用的博客
展开
-
Grafana+Alter+webhook发预警给钉钉
Grafana通过为警报分配标签来处理警报通知,alert rules有定义label,即给不同的触发规则定义label。notification policies里配置label和contact points的关系。notification policies 将alert rules与contact points关联起来。1.架构简介:alert rules、contact points 、notification policies。首先复制出来钉钉群的钉钉机器人的access_token。原创 2023-08-02 09:53:25 · 1245 阅读 · 0 评论 -
Pushgateway+Prometheus监控Flink/Doris
思路方案。原创 2023-07-27 13:10:09 · 981 阅读 · 1 评论 -
FlinkUI和Flink常见问题解决
当用户提交一个Flink程序时,会首先创建一个Client,该Client首先会对用户提交的Flink程序进行预处理,并提交到Flink集群中处理,所以Client需要从用户提交的Flink程序配置中获取JobManager的地址,并建立到JobManager的连接,将Flink Job提交给JobManager。其中,flink 管理的内存,包括代码定义的对象,放到的JVM Heap 堆内存,以及flink定义好的状态会放在 Off-Heap Memory 的Managed Memory,还有直接内存。原创 2023-06-05 14:30:24 · 693 阅读 · 0 评论 -
FlinkCEP(2)-严格近邻代码演示-风控系统构建
输出满足条件的三条数据的合并结果为,e1的id,e1.price为平均,e1.rowtime为开始时间,e3.rowtime为结束时间。且代码中明示e1,e2,e3三个时间的间隔要在2min内完成。严格相邻的三条数据,分别满足1,2,3三个条件,回头看数据中满足的数据为。原创 2023-03-28 09:40:38 · 171 阅读 · 0 评论 -
FlinkCEP(1):复杂事件处理引擎介绍
SKIP TO NEXT ROW -匹配成功之后,从匹配成功的事件序列中的第⼀个事件的下⼀个事件开始进⾏下⼀次匹配。SKIP TO FIRST variable -匹配成功之后,从匹配成功的事件序列中第⼀个对应于变量的事件开始进行下⼀次匹配。SKIP PAST LAST ROW -匹配成功之后,从匹配成功的事件序列中的最后⼀个事件的下⼀个事件开始进⾏下⼀次匹配。{n,m} 在n到m(包含)行之间(0≤n≤m,0 {,m}一在0到m(包含)行之间(m>0){n} 严格n行(n>0)原创 2023-02-27 17:43:55 · 479 阅读 · 0 评论 -
FlinkSql-滚动窗口-滑动窗口-追加模式/缩进模式
滚动窗口(Tumbling Windows) 滚动窗口有固定的大小,是一种对数据进行均匀切片的划分方式。场景:接收通过socket发送过来的数据,每30秒触发一次窗口计算逻辑。(3)从socket端接收数据,并设置30秒触发执行一次窗口运算。窗口之间没有重叠,也不会有间隔,是“首尾相接”的状态。滚动窗口可以基于时间定义,也可以基于数据个数定义;(2)编写socket代码,模拟数据发送。(1)准备一个实体对象,消息对象。原创 2023-02-27 16:57:17 · 661 阅读 · 0 评论 -
FlinkSql-UDF
在大多数情况下,用户定义的函数必须先注册,然后才能在查询中使用。不需要专门为Scala 的Table API注册函数。函数通过调用registerFunction()方法在TableEnvironment中注册。当用户定义的函数被注册时,它被插入到TableEnvironment的函数目录中,这样Table API或SQL解析器就可以识别并正确地解释它。原创 2023-02-27 15:45:26 · 719 阅读 · 0 评论 -
Flink-Checkpoint&Savepoint-任务恢复,任务保障制度
checkpoint是flink job定期做的检测点,savepoint是停止job时人为指定的保存状态目录。老的方式(cancel,以过时),-s指定的是savepoint的目录。新的方式(stop),-p指定的是savepoint的目录。-s指定的是定checkpoint或savepoint目录。savepoint中的状态更新一些。原创 2023-02-22 17:48:58 · 849 阅读 · 0 评论 -
FlinkSQL对应的数据类型
DECIMAL、DECIMAL(p)、DECIMAL(p, s)、DEC、DEC(p)、DEC(p, s)、NUMERIC、NUMERIC(p)、NUMERIC(p, s):固定长度和精度的数值类型,就和 Java 中的 BigDecima一样,p 代表数值位数(长度),取值范围 [1, 38];BIGINT:-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 的 8 字节大小的有符号整数,就和 Java 中的 long 一样。原创 2023-02-21 18:03:11 · 1795 阅读 · 0 评论 -
Flink结合Mysql读写Doris数据
代码】FlinkConnector获取Doris数据。原创 2022-08-12 11:31:33 · 1324 阅读 · 0 评论 -
演示实时-mysql-flinksql-mysql/doris
代码】演示实时-mysql-flinksql-mysql。原创 2022-08-09 09:03:25 · 454 阅读 · 0 评论 -
Flink实时风控相关
rader 项目是springboot的,可以做风控flinkadmin是flink的 用的 flink13和cdc2,不会先全量后增量的过程导致锁表原创 2022-06-24 14:31:55 · 463 阅读 · 0 评论 -
CDH6.3.2编译安装Hudi0.9
1.准备编译环境1)Maven安装(1)把apache-maven-3.6.1-bin.tar.gz上传到linux的/data/software目录下(2)解压apache-maven-3.6.1-bin.tar.gz到/data/module/目录下面tar -zxvf apache-maven-3.6.1-bin.tar.gz -C /data/module/(3)修改apache-maven-3.6.1的名称为maven(4)添加环境变量到/etc/profile中.原创 2022-02-21 09:42:16 · 2268 阅读 · 0 评论 -
FlinkSQL水位和开窗
import org.apache.flink.streaming.api.datastream.DataStream;import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;import org.apache.flink.table.api.Table;import org.apache.flink.table.api.bridge.java.StreamTableEnvironment; /**.原创 2022-04-21 09:00:56 · 564 阅读 · 0 评论 -
Flink操作Hudi-工作实践
package org.example.hudi;import org.apache.flink.runtime.state.filesystem.FsStateBackend;import org.apache.flink.streaming.api.CheckpointingMode;import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;import org.apache.flink.tab..原创 2022-04-14 11:50:15 · 2031 阅读 · 1 评论 -
FlinkCDC写入kafka计算后写入写出hbase-工作实例
POM文件<!--Licensed to the Apache Software Foundation (ASF) under oneor more contributor license agreements. See the NOTICE filedistributed with this work for additional informationregarding copyright ownership. The ASF licenses this fileto you.原创 2022-03-25 18:15:28 · 3041 阅读 · 0 评论 -
MockKafka数据Flink消费写入Mysql/Oralce-工作实例
首先看pom<!--Licensed to the Apache Software Foundation (ASF) under oneor more contributor license agreements. See the NOTICE filedistributed with this work for additional informationregarding copyright ownership. The ASF licenses this fileto you原创 2022-03-17 10:56:07 · 1167 阅读 · 0 评论 -
快速启动flink项目
按照这个步骤1分钟内创建完成idea-----File----new---Project------Maven----Create from archetype----Add Archetype弹出框:GroupId填org.apache.flinkArtifactId填flink-quickstart-javaVersion填1.14.0选中刚刚添加的Archetype,点Next填写你要创建的这个flink demo的GroupId,ArtifactId,Version,点击原创 2022-03-15 11:05:38 · 1676 阅读 · 0 评论 -
Flink面试篇-基础/源码
面试题 1:请介绍一下 Flink 这道题是一道很简单的入门题,考察我们队 Flink 整体的掌握情况,我们应该从以下几个基本的概念入手。Flink 是大数据领域的分布式实时和离线计算引擎,其程序的基础构建模块是流(Streams)和转换(Transformations),每一个数据流起始于一个或多个Source,并终止于一个或多个Sink。数据流类似于有向无环图(DAG)。 Flink 提供了诸多高抽象层的 API 以便用户编写分布式任务: ...原创 2022-02-26 12:11:32 · 211 阅读 · 0 评论 -
三十五:自定义消息事件
上一课时中讲了 CEP 的基本原理并且用官网的案例介绍了 CEP 的简单应用。在 Flink CEP 中存在多个比较晦涩的概念,如果你对于这些概念理解有困难,我们可以把:创建系列 Pattern,然后利用 NFACompiler 将 Pattern 进行拆分并且创建出 NFA,NFA 包含了 Pattern 中的各个状态和各个状态间转换的表达式。这整个过程我们可以把 Flink CEP 的使用类比为正则表达式的使用。CEP 中定义的 Pattern 就是正则表达式,而 DataStream 是需要进行匹配的原创 2022-02-26 11:52:09 · 121 阅读 · 0 评论 -
三十四:FlinkCEP复杂事件处理
背景 我们在第 11 课时“Flink CEP 复杂事件处理”已经介绍了 Flink CEP 的原理,它是 Flink 提供的复杂事件处理库,也是 Flink 提供的一个非常亮眼的功能,当然更是 Flink 中最难以理解的部分之一。 Complex Event Processing(CEP)允许我们在源源不断的数据中通过自定义的模式(Pattern)检测并且获取需要的数据,还可以对这些数据做对应的处理。Flink 提供了非常丰富的 API 来帮助我们实现非常复杂的模式进行...原创 2022-02-26 11:45:13 · 213 阅读 · 0 评论 -
三十二:Flink计算PV,UV代码实现
我们学习了 Flink 消费 Kafka 数据计算 PV 和 UV 的水印和窗口设计,并且定义了窗口计算的触发器,完成了计算 PV 和 UV 前的所有准备工作。 接下来就需要计算 PV 和 UV 了。在当前业务场景下,根据 userId 进行统计,PV 需要对 userId 进行统计,而 UV 则需要对 userId 进行去重统计。下面我们使用不同的方法来统计 PV 和 UV。单窗口内存统计 这种方法需要把一天内所有的数据进行缓存,然后在内存中遍历接收的数据,进行 PV...原创 2022-02-26 11:40:56 · 625 阅读 · 0 评论 -
三十一:Flink 和 Kafka 整合时间窗口设计
在计算 PV 和 UV 等指标前,用 Flink 将原始数据进行了清洗,清洗完毕的数据被发送到另外的 Kafka Topic 中,接下来我们只需要消费指定 Topic 的数据,然后就可以进行指标计算了。Flink 消费 Kafka 数据反序列化上一课时定义了用户的行为信息的 Java 对象,我们现在需要消费新的 Kafka Topic 信息,并且把序列化的消息转化为用户的行为对象:public class UserClick { private String userI...原创 2022-02-26 11:34:56 · 406 阅读 · 0 评论 -
三十:Kakfa模拟Json数据生成和发送
在计算 PV 和 UV 的过程中关键的一个步骤就是进行日志数据的清洗。实际上在其他业务,比如订单数据的统计中,我们也需要过滤掉一些“脏数据”。所谓“脏数据”是指与我们定义的标准数据结构不一致,或者不需要的数据。因为在数据清洗 ETL 的过程中经常需要进行数据的反序列化解析和 Java 类的映射,在这个映射过程中“脏数据”会导致反序列化失败,从而使得任务失败进行重启。在一些大作业中,重启会导致任务不稳定,而过多的“脏数据”会导致我们的任务频繁报错,最终彻底失败。架构提过整个 PV 和 UV 计原创 2022-02-26 11:28:37 · 379 阅读 · 0 评论 -
二十六:Flink Redis Sink 实现
“Flink 常用的 Source 和 Connector”中提过 Flink 提供了比较丰富的用来连接第三方的连接器,可以在官网中找到 Flink 支持的各种各样的连接器。 此外,Flink 还会基于 Apache Bahir 发布一些 Connector,其中就有我们非常熟悉的 Redis。很多人在 Flink 项目中访问 Redis 的方法都是自己进行实现的,我们也可以使用 Bahir 实现的 Redis 连接器。事实上,使用 Redis Sink 常用的方法有很多,...原创 2022-02-26 11:11:41 · 735 阅读 · 0 评论 -
二十五:Flink聚合函数和累加器使用
提到了 Flink 所支持的窗口和时间类型,并且在第 25 课时中详细讲解了如何设置时间戳提取器和水印发射器。实际的业务中,我们在使用窗口的过程中一定是基于窗口进行的聚合计算。例如,计算窗口内的 UV、PV 等,那么 Flink 支持哪些基于窗口的聚合函数?累加器又该如何实现呢?Flink 支持的窗口函数我们在定义完窗口以后,需要指定窗口上进行的计算。目前 Flink 支持的窗口函数包含 3 种:ReduceFunction 增量聚合 AggregateFunction 增量聚合 Pro原创 2022-02-26 10:21:47 · 459 阅读 · 0 评论 -
二十四:Flink 中 watermark 的定义和使用
我们提过窗口和时间的概念,Flink 框架支持事件时间、摄入时间和处理时间三种。Watermark(水印)的出现是用于处理数据从 Source 产生,再到转换和输出,在这个过程中由于网络和反压的原因导致了消息乱序问题。那么在实际的开发过程中,如何正确地使用 Watermark 呢?使用 Watermark 必知必会Watermark 和事件时间事件时间(Event Time)是数据产生的时间,这个时间一般在数据中自带,由消息的生产者生成。例如,我们的上游是 Kafka 消息,那么每个生成的消原创 2022-02-24 23:03:47 · 674 阅读 · 0 评论 -
二十三:Flink消费Kafka数据开发
我们提过在实时计算的场景下,绝大多数的数据源都是消息系统,而 Kafka 从众多的消息中间件中脱颖而出,主要是因为高吞吐、低延迟的特点;同时也讲了 Flink 作为生产者像 Kafka 写入数据的方式和代码实现。这一课时我们将从以下几个方面介绍 Flink 消费 Kafka 中的数据方式和源码实现。Flink 如何消费 KafkaFlink 在和 Kafka 对接的过程中,跟 Kafka 的版本是强相关的。上一课时也提到了,我们在使用 Kafka 连接器时需要引用相对应的 Jar 包依赖,对于某些连原创 2022-02-24 22:02:43 · 2255 阅读 · 0 评论 -
flink Table API 与SQL入门实战
流处理和批处理都可以用,是非常的方便!导入依赖<dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-table_2.11</artifactId> <version>1.7.0</version></dependency>测试案例import org.apache.flink.stream原创 2022-02-23 17:22:46 · 132 阅读 · 0 评论 -
二十二:MockKafka消息并发送
大数据消息中间件的王者——Kafka 在上一课时中提过在实时计算的场景下,我们绝大多数的数据源都是消息系统。所以,一个强大的消息中间件来支撑高达几十万的 QPS,以及海量数据存储就显得极其重要。 Kafka 从众多的消息中间件中脱颖而出,主要是因为高吞吐、低延迟的特点;另外基于 Kafka 的生态越来越完善,各个实时处理框架包括 Flink 在消息处理上都会优先进行支持。在第 14 课时“Flink Exactly-once 实现原理解析”中提到 Flink 和 Kafka 结...原创 2022-02-21 23:16:38 · 627 阅读 · 0 评论 -
⑦Flink窗口、时间和水印
在 Flink 这个框架中,有很多独有的概念,比如分布式缓存、重启策略、并行度等,这些概念是我们在进行任务开发和调优时必须了解的,这一课时我将会从原理和应用场景分别介绍这些概念。分布式缓存熟悉 Hadoop 的你应该知道,分布式缓存最初的思想诞生于 Hadoop 框架,Hadoop 会将一些数据或者文件缓存在 HDFS 上,在分布式环境中让所有的计算节点调用同一个配置文件。在 Flink 中,Flink 框架开发者们同样将这个特性进行了实现。Flink 提供的分布式缓存类型 Had...原创 2022-02-20 15:43:41 · 168 阅读 · 0 评论 -
⑦Flink常用核心概念
在 Flink 这个框架中,有很多独有的概念,比如分布式缓存、重启策略、并行度等,这些概念是我们在进行任务开发和调优时必须了解的,这一课时我将会从原理和应用场景分别介绍这些概念。分布式缓存 熟悉 Hadoop 的你应该知道,分布式缓存最初的思想诞生于 Hadoop 框架,Hadoop 会将一些数据或者文件缓存在 HDFS 上,在分布式环境中让所有的计算节点调用同一个配置文件。在 Flink 中,Flink 框架开发者们同样将这个特性进行了实现。 Flink ...原创 2022-02-17 19:45:53 · 311 阅读 · 0 评论 -
⑥Flink集群安装部署和HA配置-实战
这一课时将讲解 Flink 常见的部署模式:本地模式、Standalone 模式和 Flink On Yarn 模式,然后分别讲解三种模式的使用场景和部署中常见的问题,最后将讲解在生产环境中 Flink 集群的高可用配置。Flink 常见的部署模式环境准备在绝大多数情况下,我们的 Flink 都是运行在 Unix 环境中的,推荐在 Mac OS 或者 Linux 环境下运行 Flink。如果是集群模式,那么可以在自己电脑上安装虚拟机,保证有一个 master 节点和两个 slave...原创 2022-02-17 15:22:00 · 173 阅读 · 0 评论 -
⑤FlinkSql&Table编程案例
前面使用 Flink Table & SQL 的 API 实现了最简单的 WordCount 程序。在这一课时中,将分别从 Flink Table & SQL 的背景和编程模型、常见的 API、算子和内置函数等对 Flink Table & SQL 做一个详细的讲解和概括,最后模拟了一个实际业务场景使用 Flink Table & SQL 开发。Flink Table & SQL 概述背景 我们在前面的课时中讲过 Flink 的分层模型,Fl...原创 2022-02-17 14:16:19 · 143 阅读 · 0 评论 -
④Flink常用DataSet和DataStreamAPI
现状 在前面的课程中,曾经提到过,Flink 很重要的一个特点是“流批一体”,然而事实上 Flink 并没有完全做到所谓的“流批一体”,即编写一套代码,可以同时支持流式计算场景和批量计算的场景。目前截止 1.10 版本依然采用了 DataSet 和 DataStream 两套 API 来适配不同的应用场景。DataSet 和 DataStream 的区别和联系在官网或者其他网站上,都可以找到目前 Flink 支持两套 API 和一些应用场景,但大都缺少了“为什么”这样的思考...原创 2022-02-17 13:28:32 · 152 阅读 · 0 评论 -
③Flink入门程序WordCount和Sql实现
Flink 开发环境 通常来讲,任何一门大数据框架在实际生产环境中都是以集群的形式运行,而我们调试代码大多数会在本地搭建一个模板工程,Flink 也不例外。 Flink 一个以 Java 及 Scala 作为开发语言的开源大数据项目,通常我们推荐使用 Java 来作为开发语言,Maven 作为编译和包管理工具进行项目构建和编译。对于大多数开发者而言,JDK、Maven 和 Git 这三个开发工具是必不可少的。关于 JDK、Maven 和 Git 的安装建议如下表所示:...原创 2022-02-16 18:55:35 · 267 阅读 · 0 评论 -
②Flink 部署应用
Flink集群架构Flink集群架构-JobManagerFlink集群架构-TaskManagerFlink集群架构-ClientFlink集群架构-JobGraphFlink集群部署模式集群部署模式对比Session集群运行模式Pre-Job运行模式...原创 2022-02-11 14:59:07 · 748 阅读 · 0 评论 -
①Flink应用场景和模型构建,核心特性
Flink 自从 2019 年初开源以来,迅速成为大数据实时计算领域炙手可热的技术框架。作为 Flink 的主要贡献者阿里巴巴率先将其在全集团进行推广使用,另外由于 Flink 天然的流式特性,更为领先的架构设计,使得 Flink 一出现便在各大公司掀起了应用的热潮。阿里巴巴、腾讯、百度、字节跳动、滴滴、华为等众多互联网公司已经将 Flink 作为未来技术重要的发力点,迫切地在各自公司内部进行技术升级和推广使用。同时,Flink 已经成为 Apache 基金会和 GitHub 社区最为活...原创 2022-02-11 11:25:34 · 385 阅读 · 0 评论 -
写Flink Spark遇到的问题
OOM:调小核数,增加每个核的内存调用map函数显示No implicits found for parameter evidence解决:要在这段前面加上隐式转换,就是注释掉的那个原创 2021-09-02 09:12:17 · 156 阅读 · 0 评论 -
Windows下安装Canal,Kafka,Flink,Spark
https://flink.apache.org/downloads.html地址下去下载flink找到 flink-1.8.1-bin-scala_2.11.tgz 这个安装包,Flink1.8对应的scala2.11版本进入bin目录,点击start-cluster.bat然后进入地址http://localhost:8081/这样就好了运行自带的example程序:进入cmd,目录切到bin目录下 先直接 D:切到D盘flink.bat run ../exampl...原创 2021-08-28 19:14:50 · 625 阅读 · 0 评论