Redis Announces Redis Modules That Facilitate Development Of Additional Use Cases For Redis Database Functionality

At RedisConf2016, Redis, the open source, in-memory data structure store, announced the introduction of a new functionality called Redis Modules that allows developers to extend Redis to cover an expanded set of use cases. Redis Modules enable developers to create new database functionality in Redis by means of a Modules API. The modules render Redis extensible by allowing developers to create applications that have access to the Redis core without requiring that the module be rewritten in conjunction with updates to the Redis core. The Modules API for Redis allows Redis Modules to co-exist independently of the evolution of the Redis core such that a module will continue to function irrespective of updates to either the Redis core or the module itself. As noted in a blog post by Salvatore Sanfilippo, the creator of Redis, the vision that gave birth to the evolution of the Redis Module was marked by a desire for sustainable compatibility between the Redis Module and the Redis Core:

What I wanted was an extreme level of API compatibility for the future, so that a module wrote today could work in 4 years from now with the same API, regardless of the changes to the Redis core. I also wanted binary compatibility so that the 4 years old module could even *load* in the new Redis versions and work as expected, without even the need to be recompiled.

Sanfilippo goes on to note that the nature of the API in question required a low level API in contrast to Lua’s high level scripting capabilities:

What we wanted to accomplish was to allow Redis developers to create commands that were as capable as the Redis native commands, and also as fast as the native commands. This cannot be accomplished just with a high level API that calls Redis commands, it’s too slow and limited. There is no point in having a Redis modules system that can just do what Lua can already do. You need to be able to say, get me the value associated with this key, what type is it? Do this low level operation on the value. Given me a cursor into the sorted set at this position, go to the next element, and so forth. To create an API that works as an intermediate layer for such low level access is tricky, but definitely possible.

Here, Sanfllippo remarks on the differentiation of the Redis Module API from the Lua scripting language for Redis by commenting on the need for a fast, low level API that can access the Redis core. Examples of Redis modules that are preliminarily available include an image processing Module and a full text search Module. That said, the code for the Redis Modules API remains unstable and awaits incorporation into an official release of the open source Redis software platform. Nevertheless, Redis Labs, home of Redis and provider of a commercial, enterprise-grade Redis solution, recently announced the release of Modules Hub, a marketplace for Redis Modules that renders available battle-tested, production-grade Redis modules for Redis users. Judging by comments to Salvatore Sanfllippo’s blog post, however, Redis Modules have sparked enthusiasm galore from users as they experiment with the API and mull over its various possibilities.

Learn more about Redis Modules via their API reference manual here.

Advertisement

Redis Cloud Vendor Garantia Data Changes Name To Redis Labs

Garantia Data, distributor of cloud-based, enterprise-grade solutions for Redis and Memcached, recently changed its name to Redis Labs. The name change is intended to more accurately illustrate the company’s commitment to providing Redis-based solutions for the enterprise. News of Garantia Data’s name change to Redis Labs comes hot on the heels of its recent announcement of the availability of the Redis Cloud on IBM’s SoftLayer Dallas platform in addition to its pre-existing partnerships with Amazon Web Services and Windows Azure. In an interview with Cloud Computing Today, Redis Labs CEO Ofer Bengal remarked on the uniqueness of the Redis database platform as follows:

NoSQL databases like Redis are becoming increasingly popular. According to a 451 Research report, Redis adoption is projected to increase from 11.3 percent today to 15.9 percent in 2015. Redis in particular will become a preferred database technology because it is faster than any other database and it has rich data structures – which are very similar to those of today’s high level programming languages. Leading companies like Twitter and Pinterest use Redis, which shows it is highly useful for companies with rapidly growing datasets.

The Redis Cloud delivered by Redis Labs represents a fully managed service that boasts infinite, automated scalability, high availability, integrated data backups and high performance. Redis Labs also offers a managed service for the Memcached Cloud built on Redis technology.

Interview With Ofer Bengal, CEO Of Garantia Data, On Redis And The NoSQL Landscape

Cloud Computing Today recently had the privilege to interview Garantia Data CEO Ofer Bengal about the positioning of Redis within the larger landscape of NoSQL databases. Redis is an an open source, in-memory, key value data store. In his responses to the questions below, Bengal remarks on the ability of Redis to “serve a very high volume of write and read requests…at sub millisecond latency,” its “single threaded event-driven architecture,” and protocols that, in collaboration with its other features, render it 5-10 times faster than other in-memory databases. Bengal also elaborates on the richness of data structures within the Redis platform that empower developers to write more elegant and streamlined code.

Garantia Data’s core offering consists of the Redis Cloud and Memcached Cloud on well known cloud platforms such as Amazon Web Services and Windows Azure. Its Redis Cloud platform provides a fully managed service for Redis deployments that includes handling of scalabilty and failover considerations. Garantia Data recently acquired MyRedis, a production-grade deployment of Redis that runs on Heroku and AppHarbor.

1. Cloud Computing Today: Why, in your view, will Redis become the preferred database technology platform?

Ofer Bengal: NoSQL databases like Redis are becoming increasingly popular. According to a 451 Research report, Redis adoption is projected to increase from 11.3 percent today to 15.9 percent in 2015. Redis in particular will become a preferred database technology because it is faster than any other database and it has rich data structures – which are very similar to those of today’s high level programming languages. Leading companies like Twitter and Pinterest use Redis, which shows it is highly useful for companies with rapidly growing datasets.

2. Cloud Computing Today: What differentiates the performance of Redis from other datastores?

Ofer Bengal: Redis is an in-memory database designed from the ground up to serve a very high volume of write and read requests (over 100K ops/sec on a typical cloud instance) at sub millisecond latency. This, in most cases, means two orders of magnitude faster than other disk-based databases. Versus other in-memory databases, Redis is based on a single threaded event-driven architecture which frees it from lock mechanisms. In addition, its protocol is simple and fast to process – making Redis 5x-10x times faster than any other in-memory database available today.

3. Cloud Computing Today: What makes developing apps with Redis a much simpler task than with other database platforms?

Ofer Bengal: Redis has a rich set of data structures which are very similar to those of today’s high level programming languages. Users are also able to do more with Redis as an in-memory database because it is less complicated to manipulate than the same data structure on disk. This means developers do far less damage to the concepts of their programs when using Redis, resulting in faster development, improved code quality and more attractive code.