はじめに
この実験では、Redisにおける基本的なキー・バリュー操作を学びます。コマンドラインインターフェースである redis-cli を使用してRedisサーバーと対話し、キーの設定、取得、存在確認、削除、および有効期限の設定といった基本操作を実行します。この実験を終える頃には、Redisをシンプルなデータストアとして活用するための確かな基礎知識が身についているはずです。
キー・バリューペアの設定と取得
このステップでは、Redisにおけるキー・バリューペアの設定と取得というコア操作に焦点を当てます。これはRedisをデータストアとして利用するための基礎となります。
Redisは、辞書のようにデータをキー・バリューペアとして保存します。キーは一意の識別子であり、バリューはそのキーに関連付けられたデータです。
Redisへの接続:
LabEx VMでターミナルを開きます。すでに
~/projectディレクトリにいるはずです。redis-cliコマンドを使用してRedisサーバーに接続します。redis-cliRedisのプロンプト
127.0.0.1:6379>が表示されれば、Redisサーバーへの接続は成功です。キー・バリューペアの設定:
SETコマンドを使用してキー・バリューペアを設定してみましょう。キーmykeyに値myvalueを設定します。SET mykey myvalueRedisは以下のように応答します。
OKこれで、キー・バリューペアが正常に保存されたことが確認できました。
キーの値の取得:
キーに関連付けられた値を取得するには、
GETコマンドを使用します。mykeyの値を取得してみましょう。GET mykeyRedisは以下のように応答します。
"myvalue"これで、キー
mykeyに関連付けられた値を正常に取得できました。別のキー・バリューペアの設定:
別のキーと値で、もう一つキー・バリューペアを設定してみましょう。今回はキーに
user:1001、値にJohnを使用します。SET user:1001 JohnRedisは以下のように応答します。
OK新しいキーの値の取得:
それでは、
user:1001キーの値を取得してみましょう。GET user:1001Redisは以下のように応答します。
"John"これで、Redisでのキー・バリューペアの設定と取得が完了しました。
Redis CLIの終了:
各ステップの終了時には、コマンドが正しく記録されるようにRedis CLIを終了させるのが重要です。以下を入力してください。
exit
キーの存在確認
このステップでは、EXISTS コマンドを使用してRedis内のキーの存在を確認する方法を学びます。これは、値を取得したり他の操作を行ったりする前に、キーが設定されているかどうかを判断するのに役立ちます。
Redisへの接続:
redis-cliコマンドを使用してRedisサーバーに接続します。redis-cliRedisのプロンプト
127.0.0.1:6379>が表示されます。既存のキーの存在確認:
前のステップで
mykeyを設定しました。EXISTSコマンドを使用して、それが存在するか確認してみましょう。EXISTS mykeyRedisは以下のように応答します。
(integer) 1応答が
1であれば、キーmykeyがRedisに存在することを意味します。存在しないキーの確認:
次に、設定していないキーが存在するか確認してみましょう。例えば、
nonexistentkeyという名前のキーを確認します。EXISTS nonexistentkeyRedisは以下のように応答します。
(integer) 0応答が
0であれば、キーnonexistentkeyはRedisに存在しないことを意味します。Redis CLIの終了:
コマンドが記録されるよう、Redis CLIを終了します。
exit
キーの削除
このステップでは、DEL コマンドを使用してRedisからキーを削除する方法を学びます。これはデータの管理や、不要になったエントリを削除するために不可欠です。
Redisへの接続:
redis-cliコマンドを使用してRedisサーバーに接続します。redis-cliRedisのプロンプト
127.0.0.1:6379>が表示されます。既存のキーの削除:
前のステップで設定した
mykeyをDELコマンドで削除してみましょう。DEL mykeyRedisは以下のように応答します。
(integer) 1応答が
(integer) 1であれば、1つのキーが正常に削除されたことを意味します。存在しないキーの削除:
存在しないキー(例:
nonexistentkey)を削除しようとするとどうなるか試してみましょう。DEL nonexistentkeyRedisは以下のように応答します。
(integer) 0応答が
(integer) 0であれば、削除されたキーはなかった(キーが存在しなかったため)ことを意味します。複数のキーの削除:
DELコマンドは、一度に複数のキーを削除することもできます。先ほど作成したuser:1001キーを削除し、同時にnonexistentkeyも削除しようとしてみましょう。DEL user:1001 nonexistentkeyRedisは以下のように応答します。
(integer) 1応答が
(integer) 1であれば、1つのキー(user:1001)が正常に削除され、nonexistentkeyの削除試行は存在しなかったために無視されたことを意味します。Redis CLIの終了:
Redis CLIを終了します。
exit
キーの有効期限の設定
このステップでは、EXPIRE コマンドと SET コマンドの EX パラメータを使用して、Redisのキーに有効期限を設定する方法を学びます。これは、セッションデータや一時的なキャッシュなど、一定期間後にデータを自動的に削除したい場合に便利です。
Redisへの接続:
redis-cliコマンドを使用してRedisサーバーに接続します。redis-cliRedisのプロンプト
127.0.0.1:6379>が表示されます。有効期限付きキー・バリューペアの設定(方法1: SETコマンドのEXパラメータ):
Redisでは、
EXパラメータを使用することで、1つのコマンドでキー・バリューペアと有効期限を同時に設定できます。キーsessionkeyに値sessionvalueを設定し、有効期限を15秒にしてみましょう。SET sessionkey sessionvalue EX 15Redisは以下のように応答します。
OKこのコマンドはキー・バリューペアの設定と有効期限の設定を一度に行うため、別々のコマンドを使うよりも効率的です。
EXで設定したキーのTTL確認:
sessionkeyの残り有効時間(TTL: Time To Live)を確認してみましょう。TTL sessionkeyRedisはキーが期限切れになるまでの残り秒数(例:
(integer) 14)を返します。設定してから経過した時間があるため、値は15より少し小さくなります。キー・バリューペアの設定(方法2: EXPIREコマンドを個別に使用):
あるいは、まずキー・バリューペアを設定し、後から個別に有効期限を設定することもできます。キー
tempkeyに値tempvalueを設定してみましょう。SET tempkey tempvalueRedisは以下のように応答します。
OKEXPIREコマンドを使用した有効期限の設定:
次に、
EXPIREコマンドを使用してtempkeyに10秒の有効期限を設定します。EXPIRE tempkey 10Redisは以下のように応答します。
(integer) 1応答が
(integer) 1であれば、有効期限が正常に設定されたことを意味します。残り有効時間(TTL)の確認:
tempkeyの残り有効時間を確認するには、TTLコマンドを使用します。TTL tempkeyRedisは残り秒数(例:
(integer) 9)を返します。設定からの経過時間により、値は10より少し小さくなる場合があります。キーが存在しない場合や有効期限がない場合、TTLはそれぞれ-2または-1を返します。Redis CLIの終了:
Redis CLIを終了します。
exit
まとめ
この実験では、redis-cli コマンドラインインターフェースを使用して、Redisの基本的なキー・バリュー操作を学びました。Redisサーバーへの接続方法、SET コマンドによるデータの保存、GET コマンドによる値の取得を習得しました。さらに、EXISTS コマンドによるキーの存在確認、DEL コマンドによる削除、そして SET コマンドの EX パラメータや EXPIRE コマンドによる有効期限の設定方法も練習しました。特に SET コマンドの EX パラメータは、キー・バリューペアの設定と有効期限の設定を一度に効率よく行えるため非常に便利です。これらは、Redisをシンプルかつ効率的なデータストアとして活用するための基本構成要素となります。


