Flink学习4 - 富函数 + 数据重分区操作 + sink 操作(kafka、redis、jdbc)

1、富函数 - 函数类接口,可以获取运行环境的上下文,实现更复杂的功能


2、数据重分区操作


3、sink操作

sink - kafka

1、引入kafka的pom依赖

bash 复制代码
<dependency>
	<groupId>org.apache.flink</groupId>
<!--<artifactId>flink-connector-kafka_${scala.binary.version}</artifactId>-->
<!--<version>${flink.version}</version>-->
	<artifactId>flink-connector-kafka-0.11_2.12</artifactId>
	<version>1.10.1</version>
</dependency>

2.启动 zookeeper

bash 复制代码
$ bin/zookeeper-server-start.sh config/zookeeper.properties

3.启动 kafka 服务

bash 复制代码
$ bin/kafka-server-start.sh config/server.properties

4.启动 kafka 生产者

bash 复制代码
$ bin/kafka-console-profucer.sh --broker-list localhost:9092 --topic sensor

5.运行 Flink 程序,在 kafka 生产者输入数据,查看 kafka 消费者的输出结果

![在这里插入图

sink - redis

1、添加 pom 依赖

2、 java代码


3、启动 redis

bash 复制代码
redis-server..exe redis.windows.conf

原来的不要关闭,启动另一个窗口

bash 复制代码
redis-cli.exe -h 127.0.0.1 -p 6379

4、运行程序,进行查询

sink-JDBC自定义sink-mysql

1.pom依赖



错误

1 启动 zookeeper,却无法启动 kafka

原因:kafka 日志被异常清理导致进程频繁挂掉

linux 会定时清理 /tmp 目录下的文件, kafka 日志文件目录正是放在了 /tmp/kafka-logs目录下,导致被定时给清理掉了,所以 kafka 在尝试读取或追加日志时就会出错。

修改:配置文件中的log.dirs

bash 复制代码
vi ./config/server.properties

重启kafka

2 另一个程序正在使用此文件,进程无法访问

原因:该问题是因为在关闭启动命令窗口时,直接点击右上角的×号关闭,下次启动就会出现该问题。

正确的关闭窗口方法:在启动窗口按ctrl+C

输入字母---Y则可成功关闭。需要注意的是该选择可能需要等待一会。这样子关闭窗口下次就可以正常启动了。

3由于 window 自带的 linux 子系统,由于是个 mini 的系统,没有其他功能,也无法下载软件 ,因此 windows 版本的 redis,在 window 中的 cmd 中测试

相关推荐
阿达和自己1 小时前
springboot学习-springboot引入MyBatis-Plus
spring boot·学习·mybatis
旖旎夜光2 小时前
【C++ 基础入门】C++11 新特性(中):右值引用、移动语义与完美转发
开发语言·c++·笔记·学习
§ꦿCFོ༉13 小时前
嵌入式八股文—C语言入门学习(四)
c语言·开发语言·学习
我不会起名字32215 小时前
会话缓存失效排查:区分 Redis 失效与节点广播
redis·后端·go·即时通讯·im·故障排查
2603_9696948515 小时前
【JavaWeb学习记录】MyBatis核心知识点与实战笔记:从入门到动态SQL
笔记·sql·学习·mysql·mybatis·javaweb·学习方法
北京云帆互联科技21 小时前
云帆培训考试系统更新说明:v9.3.0
java·学习
aiks_yuan21 小时前
Redis 大key怎么排查和删除:--bigkeys 每类只报一个,DEL 百万字段的 Hash 卡 0.3 秒(Redis 7.2 实测)
redis
sxlishaobin1 天前
Maven Setting详解
java·学习·maven
羑悻的小杀马特1 天前
Redis持久化三剑客:RDB二进制快照、AOF文本日志、混合模式如何守护你的数据安全?
数据库·redis·缓存·aof·持久化存储·rdb
时间的拾荒人1 天前
Redis 进阶实战:渐进式遍历、持久化机制与事务详解
数据库·redis·缓存