「Redis 実践入門」を執筆しました

Shogo Hayashi
Nov 30, 2022

--

この度、「Redis 実践入門」を発売します(https://amzn.asia/d/fGlUHb7 )。このブログは告知のために書きました。
筆者がどういった考えで執筆し、どういった内容を扱っているかについて取り上げます。

本書を執筆した動機

私がRedisと関わり始めた当時、Redisに関する日本語書籍は書店にあったものの、仕事を十分にできると感じられる書籍と出会うことが出来ませんでした。
周りのエンジニアからも同じ話を聞くことが多々ありました。

NoSQL関連全般に関する本や技術雑誌の中でRedisについて取り上げられていることは多くありますが、基本的には書籍全体の一部として扱われていたり、絶版でバージョンが古く現在のRedisとは状況がかなり変わっています。

また、日々Redisは急速に進化しており、それらに追随して新しいバージョンのものについて言及した書籍というものもありませんでした。

Redisは今ではNoSQLの中でも非常に多くのユーザーに使用され、大小様々な規模のサービスで使用されています。
Redisはかなり多くの方から利用されていますが、一方で普段なんとなくで触られている方もかなり多いのではないかと思います。

Redisは簡単に取っ付くことができます。これは事実でRedisの一つの大きな魅力です。
ただ、Redisのしくみをおさえていないため不慮の事故を起こしてしまったり、いざ対応に迫られたときに時既に遅しといった状況に迫られている状況を数多く目にしてきていることも事実ではあります。

本書では、日々そういった目にしてきた数多くの事例や周りからよく相談を受ける内容などを理解していただけるよう、できる限りエッセンスを抽出して盛り込むように意識して執筆させていただきました。

また、辞書のように使っていただけるようにRedisの機能を網羅的に扱い、現在最新のメジャーバージョンであるRedis 7の内容も扱っています。
Redisをこれまで触れられていない方でも問題なく読み進めていけるように、概要や導入の内容も詳細に説明しています。

職場や手元に1冊は置いておくと安心と思っていただけるような本になることを願っています。

対象とする読者

本書で対象とする読者は、以下のような方を想定しています。

  • まだRedisを導入していないが、これから検討している
  • すでにRedisを導入していてクライアントアプリケーションからRedisを使用するコードを書いているが、Redisの挙動の理解にあいまいさを感じている方、もしくは活用しきれていないと感じている
  • Redisを運用されている中で、問題発生時に困ったことがある
  • Redisの技術に興味がある、もしくは深く知りたい

本書の構成

本書は、はじめてRedisを触る方でも簡単に導入できるようにしつつも、これ一冊で十分と言えるようなRedisの機能を網羅的に扱い辞書的に使っていただけるようなものを目指して執筆させていただきました。

これを実現するために、基本、実践・運用、発展の3つに分けて章立てをしています。
以下のように本書で扱う内容を分類します。

基本

  • 第1章 はじめてのRedis。Redisの基礎を解説します。Redisの概要や活躍するシーンについて説明しつつ、実際に動作させます。
  • 第2章 代表的なデータ型および機能。特徴やユースケース、コマンドの実行例を交えて説明します。
  • 第3章 高度な機能。パイプライン、Lua(エフェメラルスクリプト(Ephemeral scripts)、Redisファンクション(Redis Functions))、トランザクション、モジュール機能等、そのほか押さえておきたい機能を紹介します。
  • 第4章 Redisを活用したアプリケーション作成。各種データ型や機能を用いて実際にどのように使用するのか、サンプルアプリケーションを紹介します。

実践・運用

  • 第5章 Redisの運用管理。Redisを運用する上で意識しておきたい点について説明します。
  • 第6章 トラブルシューティング。INFOコマンドをはじめとして、トラブルシューティングに役立つコマンドや機能の詳細を取り上げます。
  • 第7章 レプリケーション。機能詳細やしくみについて説明しつつ、実際に動作させます。
  • 第8章 Redisクラスター。第7章と同様に、機能詳細やしくみについて説明しつつ、実際に動作させます。
  • 第9章 メモリー管理。Redisのメモリー管理のしくみ、注意しておくべき点、よりメモリーを効率的に使用するために意識しておくべき点などについて説明します。
  • 第10章 クラウドで利用するRedis。

発展

  • 第11章 Redisの構造を知る。Redisに関連する技術の詳細や、ソースコードからRedisをいくつかの視点で確認していきます。

Redisを触ったことがない方やとりあえず触り始めたい方は、基本の章を読んでみてください。本書全体を読まなくてもRedisを利用したアプリケーションをつくり始めるためのイメージをつかむことができるようになるでしょう。

実際に、Redisを運用される方やRedisを活かしきれていないと感じられる方、問題発生時のトラブルシューティングをする必要がある場合は、実践・運用の章まで読んでみてください。

基本や実践・運用では物足りず、もっと深くRedisを知りたいという方は、発展の章に挑戦してみてください。Redisの正確な動作の把握、Redisを効率的に扱う方法に加えて、よりクイックに必要な情報を引き出すことが期待できます。また、エッジケースのトラブルシューティングにも役立つときがあるでしょう。

おわりに

初心者から、ある程度利用経験がある中級者まで楽しめる内容になるように心がけて執筆させていただきました。

日頃Redisを使われている方はかなり多いかと思います。
仕事や趣味など触れる機会や興味があれば、一度本書を手にとって頂いてRedisを体系的に習得するために一読してみてください。
Redisの使い方や便利さ、今後困らないように手を打っておくなど読者に実りがあれば幸いです。

ぜひ、この本(https://amzn.asia/d/fGlUHb7 )をきっかけにRedisを始めてみたり、職場や自宅に辞書的な本として置いていただければと思います。
良いと思っていただけたら友人にも紹介していただけると嬉しいです。
Redisの魅力を多くの方に知っていただき、最大限にパフォーマンスを引き出せるよう使いこなしていただけるようになると筆者としては嬉しい限りです。

最後に、レビュー含め協力いただいた多くの方々に感謝を申し上げます。

--

--