Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

redis

このテーブル関数を使用すると、ClickHouse を Redis と統合できます。

構文

redis(host:port, key, structure[, db_index[, password[, pool_size]]])

引数

Argument Description
host:port Redis server のアドレスです。ポートは省略可能で、その場合はデフォルトの Redis ポート 6379 が使用されます。
key カラム一覧内の任意のカラム名です。
structure この関数が返す ClickHouse テーブルのスキーマです。
db_index Redis の DB 索引で、範囲は 0〜15、デフォルトは 0 です。
password ユーザーパスワードです。デフォルトは空文字列です。
pool_size Redis の接続プールの最大サイズです。デフォルトは 16 です。
primary 指定は必須です。主キーとしてサポートされるのは 1 つのカラムのみです。主キーは Redis のキーとしてバイナリ形式でシリアライズされます。
  • 主キー以外のカラムは、対応する順序で Redis の値としてバイナリ形式でシリアライズされます。
  • key に対する equals または in フィルタを含むクエリは、Redis に対する複数キーのルックアップに最適化されます。key でフィルタしないクエリではテーブル全体のスキャンが発生し、負荷の高い操作になります。

Named collections は現時点では 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);
Navigation