1. 概述
Redis 提供了string、hash、list、set、sorted set、bitmap等一系列常用的数据结构。
Flink 没有直接提供官方的 Redis 连接器,但 Bahir 项目提供了 Flink-Redis 的连接工具
2. 使用
2.1 引入依赖
服务器上的flink版本与引入的依赖之间有冲突,使用exclusions排除

<dependency>
<groupId>org.apache.bahir</groupId>
<artifactId>flink-connector-redis_2.11</artifactId>
<version>1.0</version>
<exclusions>
<exclusion>
<groupId>org.apache.flink</groupId>
<artifactId>flink-streaming-java_2.11</artifactId>
</exclusion>
</exclusions>
</dependency>
2.2 RedisSink
连接器提供了一个 RedisSink,继承抽象类 RichSinkFunction,RedisSink 的构造方法需要传入两个参数:FlinkJedisConfigBase:Jedis 的连接配置;RedisMapper:Redis 映射类接口,说明怎样将数据转换成写入 Redis 的类型
2.3 代码
pojo对象
public class Event {
public String user;
public String url;
public long timestamp;
public Event() {
}
public Event(String user, String url, Long timestamp) {
this.user = user;
this.url = url;
this.timestamp = timestamp;
}
@Override
public int hashCode() {
return super.hashCode();

本文介绍了如何在Apache Flink中使用Bahir项目提供的Flink-Redis连接器,实现从Kafka源读取数据,进行转换后写入Redis,包括依赖引入、RedisSink的使用和示例代码。
最低0.47元/天 解锁文章
4858

被折叠的 条评论
为什么被折叠?



