redis
此表函数允许 ClickHouse 与 Redis 集成。
语法
redis(host:port, key, structure[, db_index[, password[, pool_size]]])
参数
host:port
— Redis 服务器地址,您可以忽略端口,默认将使用 Redis 端口 6379。key
— 列列表中的任何列名。structure
— 从此函数返回的 ClickHouse 表的模式。db_index
— Redis 数据库索引范围,从 0 到 15,默认值为 0。password
— 用户密码,默认为空字符串。pool_size
— Redis 最大连接池大小,默认值为 16。必须指定
primary
,它只支持主键中的一列。主键将被序列化为二进制,作为 Redis 键。除主键以外的列将以二进制形式序列化为 Redis 值,并按相应的顺序排列。
带有键等于或在筛选中的查询将被优化为从 Redis 进行多键查找。如果查询没有筛选键,将发生全表扫描,这是一种繁重的操作。
目前,redis
表函数不支持 命名集合。
返回值
一个表对象,其中键作为 Redis 键,其他列打包在一起作为 Redis 值。
使用示例
从 Redis 读取
SELECT * FROM redis(
'redis1:6379',
'key',
'key String, v1 String, v2 UInt32'
)
插入 Redis
INSERT INTO TABLE FUNCTION redis(
'redis1:6379',
'key',
'key String, v1 String, v2 UInt32') values ('1', '1', 1);
另请参阅