Book Image

Mastering Redis

By : Jeremy Nelson
Book Image

Mastering Redis

By: Jeremy Nelson

Overview of this book

Redis is the most popular, open-source, key value data structure server that provides a wide range of capabilities on which multiple platforms can be be built. Its fast and flexible data structures give your existing applications an edge in the development environment. This book is a practical guide which aims to help you deep dive into the world of Redis data structure to exploit its excellent features. We start our journey by understanding the need of Redis in brief, followed by an explanation of Advanced key management. Next, you will learn about design patterns, best practices for using Redis in DevOps environment and Docker containerization paradigm in detail. After this, you will understand the concept of scaling with Redis cluster and Redis Sentinel , followed by a through explanation of incorporating Redis with NoSQL technologies such as Elasticsearch and MongoDB. At the end of this section, you will be able to develop competent applications using these technologies. You will then explore the message queuing and task management features of Redis and will be able to implement them in your applications. Finally, you will learn how Redis can be used to build real-time data analytic dashboards, for different disparate data streams.
Table of Contents (18 chapters)
Mastering Redis
About the Author
About the Reviewers

Redis isn't right because …try again soon!

As an active open-source project, Redis adds new functionality and improvements that may solve a problem that you or someone in your organization decided it wasn't suited for in the past. Optimizing the use of such a valuable and functional tool as Redis means understanding its recent history and keeping current with new functionality being developed and tested for inclusion in the latest stable version of Redis. Redis follows a common semantic versioning pattern of major.minor.patchlevel with a minor even number denoting a stable version and an odd minor number an unstable branch.

For example, the Redis 2.8.9 release introduced two of the more significant improvements, namely the HyperLogLog, a highly efficient data structure for a population estimate and of unique elements, and the new ZRANGEBYLEX, ZLEXCOUNT, and ZREMRANGEBYLEX commands for sorted sets. Both these are improvements that will be discussed at length in Chapter 2, Advanced Key Management and Data Structures. Redis Cluster – released for production use in early 2015 with Redis version 3.0 – is one of most important additions to the Redis ecosystem, which we will go over in much more detail in Chapter 6, Scaling with Redis Cluster and Sentinel.

For the next major release Redis added Geographic Information Systems (GIS) commands and modified sorted sets along with new Lua scripting support for Redis Cluster and a new Lua debugger in Redis version 3.2. To visualize the rate of change to the Redis code base, the following graphic shows the rate of change in the Redis code base during the Redis 2.x series to Redis version 3.0.

Be aware of the dynamic nature of Redis development when asking yourself, why Redis? The limitations that you thought Redis had might no longer be the case and as you continue to grow your knowledge and improve your skills in mastering Redis, keeping up with Redis changes should a critical priority as you improve your existing technology and build new and exciting opportunities for the future.