xread
XREAD
Redis 開発者教育の申込
|
Redis 定期点検/技術サポートRedis Technical Support |
Redis エンタープライズサーバーRedis Enterprise Server |
|---|
データを読む
使い方は XREAD count 1 STREAMS key ID です。
Example
| コマンド> | XREAD count 1 STREAMS sensor-1234 0 |
| 結果> | 1) 1) "sensor-1234" 2) 1) 1) 1538319053569-0 2) 1) "temperature" 2) "98.7" |
| コマンド> | XREAD count 1 STREAMS sensor-1234 1538319053569-0 |
| 結果> | 1) 1) "sensor-1234" 2) 1) 1) 1538319053569-1 2) 1) "temperature" 2) "98.8" |
- 指定した ID より大きいデータを読みます。 そのため XRANGE のように +1 する必要はありません。繰り返し読むときは XRANGE より便利です。
- XRANGE とのもう一つの違いは key を複数指定できることです。
XREAD count 1 STREAMS sensor-1234 sensor-5678 0 0
このとき count は各キーあたり読み取るデータ件数です。
BLOCK オプション
これは List の BLPOP と似ています。使い方は次のとおりです。
Example
| コマンド> | XREAD count 1 block 1000 STREAMS sensor-1234 $ |
| 結果> | 1) 1) "sensor-1234" 2) 1) 1) 1538319053569-0 2) 1) "temperature" 2) "98.7" |
| コマンド> | XREAD count 1 block 1000 STREAMS sensor-1234 1538319053569-0 |
| 結果> | 1) 1) "sensor-1234" 2) 1) 1) 1538319053569-1 2) 1) "temperature" 2) "98.8" |
- BLOCK オプションの後にはミリ秒を入力します。該当データをこの時間待ってから読みます。
- 最初に読むときは特別な ID である $ を使うのがよいです。これはコマンド実行後に入ってくるデータを読みます。
構文
XREAD [COUNT count] [BLOCK milliseconds] STREAMS key [key ...] ID [ID ...]
- このコマンドは version 5.0.0 から使用できます。
- 時間計算量は O(log(N)+M) です。N はストリームに保存されているエントリ(ID)の個数、M は返されるエントリの個数です。
| << XREVRANGE | XREAD | XDEL >> |
|---|
Email
返事がかかってなれば、メールでお知らせします。
