Paul Krill
Editor at Large

Redis 5.0 introduces streams for in-memory abstract types

news
May 31, 20182 mins

Redis's builders are calling streams the most complex type in the platform even if the data structure itself is simple

one yellow arrow moving opposite a stream of white arrows
Credit: Thinkstock

Redis 5.0, an upgrade to the Redis open source in-memory database, is now available as a release candidate, featuring a streams data type and new APIs. General availability of Version 5.0 is expected by 2019.

Anchoring the new version is streams. Redis’s builders are calling streams the most complex type in the platform even if the data structure itself is simple. Conceptually, streams is an abstract data type represented in memory, implementing more powerful operations to overcome limitations of the log file.

Streams offers a set of blocking operations for consumers to wait for new data added to a stream by producers. The consumer groups capability in streams allows a group of clients to cooperate while consuming different portions of the same stream of messages.

Redis 5.0 also features other new capabilities, including

  • Modules SDK APIs have been added for Timers, for building periodic and blocking timers, and for Cluster, a message-bus abstraction for distributed systems. These two APIs will be the foundation for the Disque (pronounced “disk cue”) cueing system module.
  • RDB files now can store LFU (least-frequently used) and LRU (least-recently used) information.
  • Active defragmentation Version 2 offers an optimized capability for dealing with memory fragments.
  • Better performance occurs when clients connect and disconnect often.
  • Improved memory reporting provides a more granular approach to what can be found in memory.
  • Version 5.1 of the Jemalloc dynamic memory allocation system offers more efficient algorithms for memory defragmentation.
  • The cluster manager was ported from Ruby to C code.
  • Implementations of the HyperLogLog data structure have been improved with refined algorithms, offering a more accurate cardinality estimation.
  • Sorted sets commands are available, including ZPOPMIN/MAX. These commands are used in applications such as time series and leader boards.
  • Many commands with subcommands now feature the HELP subcommand.

Where to download Redis 5.0

You can download Redis 5.0 from the Redis website.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author