2026年8月4日
2026年8月4日
Redisのデータ型と基本コマンド一覧
はじめに
Redisは、高速なキー・バリュー形式のデータベースとして広く利用されています。特に、ウェブアプリケーションやマシンラーニングモデルなどでのキャッシュ機能を強力に支援します。本記事では、Redisの主要なデータ型とその基本的なコマンドについて詳しく解説します。
症状・背景
- ウェブサイトやモバイルアプリケーションで高速なレスポンスタイムが必要な場合
- フレッシュなデータを迅速に取得する必要があるキャッシュストアの実装に
- 大規模なデータセットに対してリアルタイム性と一貫性を保つために
手順・設定方法
ステップ1: データ型について理解する
# Redisには主に5つのデータ型があります。
ステップ2: キーの基本操作
# 新しいキーを設定します。
set mykey "Hello, Redis!"
# 存在するキーの値を取得します。
get mykey
# 値が存在しない場合はnilを返すため、以下のように確認します。
exists mykey
# キーを削除します。
del mykey
ステップ3: リスト(List)データ型
# 新しいリストを作成し、要素を追加します。
rpush mylist "element1"
rpush mylist "element2"
# 末尾から要素を取り出します。
lpop mylist
# 先頭から要素を取り出します。
rpop mylist
# リストの長さを確認します。
hlen mylist
ステップ4: 品目集合(Set)データ型
# 新しいセットを作成し、要素を追加します。
sadd myset "element1"
sadd myset "element2"
# セットに存在する要素を一覧表示します。
smembers myset
# セットから要素を取り除きます。
srem myset "element1"
# セットのサイズを確認します。
scard myset
ステップ5: 品目ハッシュ(Hash)データ型
# 新しいハッシュを作成し、フィールドと値を設定します。
hset myhash name "John"
hset myhash age 28
# フィールドの値を取得します。
hget myhash name
# ハッシュの中身を一覧表示します。
hgetall myhash
# フィールドが存在する場合は1、存在しない場合は0を返すため以下のように確認します。
hexists myhash age
ステップ6: キュー(Sorted Set)データ型
# 新しいスコア付きセットを作成し、要素とスコアを設定します。
zadd mystore 1 "one"
zadd mystore 2 "two"
# 要素のスコアを更新します。
zincrby mystore 3 "three"
# スコアが最も高い順に要素を取り出します。
zrevrange mystore 0 -1 withscores
# スコアが指定範囲内の要素を取り出します。
zrangebyscore mystore 1 2
ステップ7: アクセス制御と監視
# サーバーの状態を確認します。
info replication
# 指定したキーについての詳細情報を取得します。
debug object mykey
注意事項
- セキュリティ上の注意: パスワード保護を設定し、不正アクセスを防ぐこと。
- パフォーマンス/運用上の注意: 利用するデータ型とコマンドの最適化が必要です。適切なインデックスやキャッシュ戦略が重要です。
まとめ
1. String: データ型として最も基本的な形式。
2. List: キューのような動作をするリスト型。
3. Set: 品目集合で、重複を許さない一意の要素を持つデータ型。
4. Hash: 大きな構造化データを保持するためのハッシュ型。
5. Sorted Set: 要素とスコアを含む優先順位付けされたリスト。
関連記事: