はじめに
RaisのプロジェクトでRedisを使っているのをよく見ていたが、使用するメリットなどをよくわかっていなかったので簡単に調べてみた。
詳細
そもそもRedisとは
- 「Redis は、リモートディクショナリサーバー の略で、高速でオープンソースのメモリ内 key-value データストアです。」
- 読み方はレディス。
- 名称の由来は、
Remote Dictionary Server
から来ているそうです。
メリット/デメリット
メリット
- 高速で動作する(RDBMSに比べ数千〜数万倍早いらしい)
(例えば、結果が頻繁に変化しないようなAPIのレスポンスをcache
に溜めておくことで毎回API call
が発生しないようにしてパフォーマンスの向上を図る。などがメジャーな用途になります。) - Rails 5.2からデフォルトでRedisのキャッシュストアが対応され、キャッシュの導入が簡単になっている
デメリット
- RDB(Relational Database)のように複雑なデータは扱えない(リレーションを設定し複数の表を関連付けるようなことができない)
- データを永続化して保存したり更新・削除することに向いていない
おわりに
普段使用しているRDBとの違いなど、ざっくり理解できた。