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: 要素とスコアを含む優先順位付けされたリスト。

関連記事:

お気軽にご相談ください

お見積りへ お問い合わせへ