Shogo Hayashi

My Daily Miscellany

Miscellaneous notes from an engineer working as a developer and SRE at Big Tech.

Blog

Latest posts

2022-11-30· Edited at 2024-06-13

I Wrote "Redis in Practice"

I'm pleased to announce the release of "Redis in Practice" https://amzn.asia/d/fGlUHb7. I wrote this blog post to announce it. I'd like to share the motivation behind writing it and what topics it covers. Update at 2024/06/13 Thanks to everyone's support, a Korean edition https://www.hanbit.co.kr/store/books/look.php?pcode=B6215862232 has also been published. Motivation for Writing This Book When I first started working with Redis, although there were Japanese books about Redis available at bookstores, I couldn't find one that felt sufficient for getting real work done. I often heard the same feedback from other engineers around me. Redis is frequently covered in books and technical magazines about NoSQL in general, but it's typically treated as only one part of a broader work, or the book is out of print with outdated versions that differ significantly from today's Redis. In addition, Redis evolves rapidly day by day, and there were no books that kept up with and addressed its newer versions. Today, Redis is used by a vast number of users among NoSQL solutions, and it's adopted in services of all sizes, from small to large. While Redis has a huge user base, I suspect that many people use it somewhat casually on a day-to-day basis. Redis is easy to get started with. This is true, and it's one of Redis's great strengths. However, because people don't have a firm grasp of how Redis works under the hood, I've witnessed many cases where they run into unexpected incidents, or find themselves in situations where it's already too late to respond when they need to. In this book, I've made a conscious effort to distill and incorporate as much of the essence as possible, drawing on the many cases I've encountered and the questions I frequently receive, so that readers can gain a solid understanding. I've also aimed to cover Redis's features comprehensively so that it can be used like a reference book, including content on Redis 7, which is the latest major version at the time of writing. I've explained the overview and introductory content in detail as well, so that even readers who have never touched Redis can follow along without any issues. My hope is that this becomes a book that people feel reassured to have one copy of at their workplace or desk. Target Audience This book is intended for readers such as: - Those who have not yet adopted Redis but are considering it - Those who already use Redis and write code from client applications that uses Redis, but feel uncertain about its behavior or feel they aren't making the most of it - Those who operate Redis and have run into difficulties when problems arise - Those who are interested in Redis technology or want to understand it more deeply Structure of the Book I wrote this book with the goal of making it easy for first-time Redis users to get started, while also comprehensively covering Redis's features so that it can serve as a single, sufficient reference. To achieve this, the book is organized into three parts: Fundamentals, Practice & Operations, and Advanced. The topics covered are categorized as follows. Fundamentals - Chapter 1: Getting Started with Redis. Explains the basics of Redis. Describes an overview of Redis and the scenarios where it shines, and walks through actually running it. - Chapter 2: Representative Data Types and Features. Explains their characteristics and use cases, along with examples of command execution. - Chapter 3: Advanced Features. Introduces pipelines, Lua Ephemeral scripts, Redis Functions, transactions, module features, and other features worth knowing. - Chapter 4: Building Applications with Redis. Introduces sample applications showing how to actually use the various data types and features. Practice & Operations - Chapter 5: Operating and Managing Redis. Explains points to keep in mind when operating Redis. - Chapter 6: Troubleshooting. Covers details of commands and features useful for troubleshooting, starting with the INFO command. - Chapter 7: Replication. Explains feature details and mechanisms, and walks through actually running it. - Chapter 8: Redis Cluster. Like Chapter 7, explains feature details and mechanisms while walking through actually running it. - Chapter 9: Memory Management. Explains how Redis manages memory, points to be careful about, and things to keep in mind for using memory more efficiently. - Chapter 10: Using Redis in the Cloud. Advanced - Chapter 11: Understanding the Internals of Redis. Looks at details of technologies related to Redis and examines Redis from several angles using its source code. If you've never touched Redis or just want to try it out, start with the Fundamentals chapters. You'll be able to get a feel for how to start building applications using Redis without having to read the entire book. If you actually operate Redis, feel you aren't making the most of it, or need to troubleshoot when problems arise, read through the Practice & Operations chapters as well. If the Fundamentals and Practice & Operations sections aren't enough and you want to know Redis more deeply, try the Advanced chapter. In addition to understanding Redis's exact behavior and learning how to handle it efficiently, you can also expect to pull out the information you need more quickly. It will also come in handy at times when troubleshooting edge cases. Conclusion I wrote this book with the intent that it would be enjoyable for everyone from beginners to intermediate users with some experience. I believe a great many people use Redis on a regular basis. If you have opportunities to work with it through your job or hobbies, or if you're simply interested, please pick up a copy and give it a read to learn Redis systematically. I'd be delighted if readers gain something from it — learning how to use Redis, appreciating its convenience, or taking steps now to avoid future problems. I'd love for this book https://amzn.asia/d/fGlUHb7 to be the catalyst for you to start using Redis, or to serve as a reference-style book kept at your workplace or home. If you find it helpful, I'd be grateful if you could recommend it to your friends as well. As the author, nothing would make me happier than having more people come to appreciate the appeal of Redis and learn to use it to its full potential. Finally, I'd like to express my gratitude to the many people who helped with this book, including the reviewers.

Read more

Publications

I published my Redis books in Japanese and Korean.

Updates

News about this site.

  1. misc

    Joined one of the Big Tech companies as a Sr. Software Engineer (Site Reliability Engineering).

    Career update

  2. misc

    Left AWS (Amazon EMR) product team and departed from Amazon.

    Career update

    aws.amazon.com/emr/
  3. book

    Published the Korean edition of the Redis book

    Hanbit Media released the Korean edition of my Redis book, following the original Japanese edition.

    www.hanbit.co.kr/store/books/look.php?p_code=B6215862232
  4. book

    Published the book 'Redis in Practice'

    Released the Japanese edition via Gijutsu-Hyoron.

    www.amazon.co.jp/dp/4297131420
  5. misc

    Started a new role as a software development engineer on the Amazon EMR team at AWS.

    Career update

    aws.amazon.com/emr/