前回は AWS ElasticCache の Redis を使う(前編) にて AWS マネージメントコンソールから Redis を作るところまでやりました。今回はいよいよ Redis エンドポイントに アクセスして、Redis にデータを格納してみたいと思います。
EC2 → Redis サーバーという流れで接続しますので、まずは EC2 を一つ準備します。次にコマンドライン操作するために EC2 上で以下を実行します↓
yum install gcc //コンパイラを入れます wget http://download.redis.io/redis-stable.tar.gz //Redisツールをダウンロード tar xvzf redis-stable.tar.gz cd redis-stable make src/redis-cli -h redis-test.*****.0001.apne1.cache.amazonaws.com -p 6379 //←自分のエンドポイント
すると、 Redis へ接続されて、コマンド操作することが出来るようになります
redis-test.****.0001.apne1.cache.amazonaws.com:6379> //← Redis のプロンプト
あとはこのまま set/get でデータを出し入れできます( ˆᴗˆ )
redis-test.****.0001.apne1.cache.amazonaws.com:6379> set one "ONIGIRI" OK redis-test.****.0001.apne1.cache.amazonaws.com:6379> set two "SALAD" OK redis-test.****.0001.apne1.cache.amazonaws.com:6379> get one "ONIGIRI" redis-test.****.0001.apne1.cache.amazonaws.com:6379> get two "SALAD"
その他、set/get 以外に良く使う Redis コマンドを個人的に抜粋してみました↓
(※わかりやすいように Redis コマンド部分を大文字にしています)
//すべてのキーを表示 KEYS * //複数のレコードを同時に登録 MSET three "RAMEN" four "UDON" //複数のレコードを同時に取り出す MGET three four //一つのキーに複数のバリューを追加する(= List型) RPUSH mylist orange grape melon //List からすべてのバリューを取り出す LRANGE mylist 0 -1 //一つのキーに複数のバリューを追加する(= Set型) SADD set1 A B C D //Set からすべてのバリューを取り出す SMEMBERS set1 //Set 同士を結合表示する SUNION set1 set2 //Set 同士を結合し、共通部分だけ表示する SINTER set1 set2 //Set 同士を結合し、差だけを表示する SDIFF set1 set2 //バリューにハッシュを登録する (= Hash型) HSET student name YAMADA //ハッシュを取り出す HGET student name //バリューに複数のハッシュを登録する HMSET student name SATOH age 18 score 90 //複数のハッシュを取り出す HMGET student name score //キーをソートする SORT age //キーを逆順でソートする SORT age DESC //キーをリミットしてソートする SORT age LIMIT 0 3 //キーがどのタイプなのか調べる(String, List, Set, Hashなど) TYPE set1 //既存の value に文字を追加 APPEND one "-OKAKA" //既存の value を表示しつつ新しい value をセット GETSET two "GOMA-SALAD"
いかがでしたか?今日は Redis にデータを出し入れするところまでやりました。ElastiCash で Redis 専用サーバーを作らずとも、EC2 に Redis をインストールして Redis サーバーとして使うこともできます。
もっと Redis に詳しくなりたい人は Redis 公式サイト も覗いてみてください。