RedisにはStrings, Lists, Sets, Hashes, Sorted Setsなどのデータ型があります。このページではBitmaps型の使い方を説明します。
前提
公式ドキュメント
参考になる公式ドキュメントを以下に示します。
動作確認済環境
- Rocky Linux 8.6
- Redis 5.0.3
コマンド一覧
Bitmapsを操作するコマンドを以下にまとめます。
コマンド | 意味 |
---|---|
SETBIT key offset value | Bitmaps型のデータを登録します |
GETBIT key offset | Bitmaps型のデータを取得します |
Bitmaps
概要
正確に言えば、RedisにBitmapsというデータ型は存在しません。ですが、Bitmapsを扱うのに便利なSETBITなどのコマンドが用意されており、内部的にはString型として処理される仕組みがあります。
Bitmapsとは文字通り、0または1の表を扱うデータです。例えば、以下の表で示されるような100箇所のセンサーに対して、1時間間隔でpingを実行し、応答があるかどうかを示すようなデータはBitmapsで表す事ができます。
SETBIT
SETBITコマンドを使用すると、Bitmapsのデータを登録できます。書式は以下の通りです。
offsetは整数で指定する必要があります。
SETBIT key offset value
例えば、2024/01/01の0:00にsensor003に対してpingを実行し応答があった場合のデータならば、以下のように登録します。
SETBIT pings:2024-01-01-00:00 3 1
GETBIT
GETBITコマンドを使用すると、Bitmapsのデータを取得できます。
127.0.0.1:6379> GETBIT pings:2024-01-01-00:00 3
(integer) 1
127.0.0.1:6379>