内容简介:编辑 pom.xml 文件,添加依赖:Redis Sink 支持多种 Redis 环境:
更新至 Flink 1.8 版本
Apache Bahir 项目提供了基于 Flink DataStream API 的 Redis Connector,其内部使用了 Java Redis 客户端 jedis 实现了 Redis Sink。
依赖
编辑 pom.xml 文件,添加依赖:
<dependency> <groupId>org.apache.bahir</groupId> <artifactId>flink-connector-redis_2.11</artifactId> <version>1.1-SNAPSHOT</version> </dependency>
配置
Redis Sink 支持多种 Redis 环境:
- 单节点
- 集群
- 哨兵
以单节点连接池配置为例:
FlinkJedisPoolConfig config = new FlinkJedisPoolConfig.Builder() .setHost(ip) .setPassword(password) .setMaxTotal(maxTotal) .setMaxIdle(maxIdle) .setMinIdle(minIdle) build()
Redis Mapper
Redis Mapper 用于将输入数据映射为 Redis 操作,需要实现 RedisMapper<T>
接口。
RedisMapper 接口定义:
public interface RedisMapper<T> extends Function, Serializable { RedisCommandDescription getCommandDescription(); // ① String getKeyFromData(T data); // ② String getValueFromData(T data); // ③ }
① Redis 命令描述。当前支持的 Redis 命令和数据类型对应,如下表所示:
Redis 命令 | Redis 数据类型 |
---|---|
HSET | HASH |
RPUSH,LPUSH | LIST |
SADD | SET |
PUBLISH | PUBSUB |
SET | STRING |
PFADD | HYPER LOG LOG |
ZADD | SORTED SET |
ZREM | SORTED SET |
所有的 Redis 命令定义在 RedisCommand
枚举类型中,所有的 Redis 数据类型定义在 RedisDataType
枚举类型中。
注意:数据类型为 RedisDataType.HASH
和 RedisDataType.SORTED_SET
,需要提供额外的键信息。
SET 命令,对应数据类型 STRING:
new RedisCommandDescription(RedisCommand.SET)
HSET 命令,对应数据类型 HASH,需要额外键:
new RedisCommandDescription(RedisCommand.HSET, key)
② 返回键。如果数据类型为 RedisDataType.HASH
和 RedisDataType.SORTED_SET
,这里返回的键值是数据类型的键值。
③ 返回值。
Redis Sink
有了配置信息和 Redis Mapper,就可以创建 Redis Sink 写入数据到 Redis 了:
stream.addSink(new RedisSink<>( config, mapper ));
参考
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 一文读懂监督学习、无监督学习、半监督学习、强化学习这四种深度学习方式
- 学习:人工智能-机器学习-深度学习概念的区别
- 统计学习,机器学习与深度学习概念的关联与区别
- 混合学习环境下基于学习行为数据的学习预警系统设计与实现
- 学习如何学习
- 深度学习的学习历程
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
深入浅出HTML与CSS、XHTML
[美] 弗里曼 Freeman.E. / 东南大学出版社 / 2006-5 / 98.00元
《深入浅出HTML与CSS XHTML》(影印版)能让你避免认为Web-safe颜色还是紧要问题的尴尬,以及不明智地把标记放入你的页面。最大的好处是,你将毫无睡意地学习HTML、XHTML 和CSS。如果你曾经读过深入浅出(Head First)系列图书中的任一本,就会知道书中展现的是什么:一个按人脑思维方式设计的丰富的可视化学习模式。《深入浅出HTML与CSS XHTML》(影印版)的编写采用了......一起来看看 《深入浅出HTML与CSS、XHTML》 这本书的介绍吧!