This table function allows integrating ClickHouse with Redis.
redis(host:port, key, structure[, db_index[, password[, pool_size]]])
host:port— Redis server address, you can ignore port and default Redis port 6379 will be used.
key— any column name in the column list.
structure— The schema for the ClickHouse table returned from this function.
db_index— Redis db index range from 0 to 15, default is 0.
password— User password, default is blank string.
pool_size— Redis max connection pool size, default is 16.
primarymust be specified, it supports only one column in the primary key. The primary key will be serialized in binary as a Redis key.
columns other than the primary key will be serialized in binary as Redis value in corresponding order.
queries with key equals or in filtering will be optimized to multi keys lookup from Redis. If queries without filtering key full table scan will happen which is a heavy operation.
A table object with key as Redis key, other columns packaged together as Redis value.
Create a table in ClickHouse which allows to read data from Redis:
CREATE TABLE redis_table
ENGINE = Redis('redis1:6379') PRIMARY KEY(k);
SELECT * FROM redis(
'key String, v1 String, v2 UInt32'