Redisとは

所謂ひとつのKVS。いつもニコニコNoSQL。

Redisを使い始めたのは、メインテーマであったM○ngoDBさんが盛大にdisられ、代わりにRedisが推薦されるという異様な某NoSQL勉強会(←もう言っちゃってるが)に参加したことがきっかけでした。馴れ初めはさておき。

Redisのよいところは、単純明快なコマンド、揮発性/永続性の選択肢、気の利くデータ型、そして高速なREAD/WRITE。Webアプリのシンプルなクエリキャッシュであればmemcachedで充分な場面が殆どですが、Redisはそのデータ型によって、一段上のデータストア用途として利用できます。

  • セット型で集合演算。AさんとBさんの購買ログを比較してAさんしか買ってないものを探す、とか。
  • 文字列型でKey-Value Storeとして。
  • ソート済みセット型で「直近N件の閲覧履歴(ただし重複はなし)」を保持。新しい順に取り出す、とか
  • ハッシュ型で多段計算の中間処理データ・再利用するデータを一時保存。

などなどが使いどころの1つになり得ると思います。

Redisインストール手順

ではCentOSに6系にRedis2.6系のインストールを行います。

ユーザー、ディレクトリを追加

groupadd redis useradd redis -g redis -M -s /sbin/nologin

mkdir -p /var/redis/{data,tmp} mkdir -p /var/run/redis mkdir -p /var/log/redis

chown -R redis:redis /var/redis/ /var/run/redis /var/log/redis

Redisをダウンロードしてインストール

wget http://redis.googlecode.com/files/redis-2.6.12.tar.gz

tar zxvf redis-2.6.12.tar.gz cd redis-2.6.12 make && make install

しゅっと入ると思います。

今回はここまで。コマンド解説やTipsを別のエントリで書く予定。……下のページにほどよくまとまっていたので見た方が早いかも(笑

ちなみにPythonからの利用には redis-py というものがあります。