Redis Weekly

A free, once–weekly e-mail round-up of Redis news, articles, tools and libraries.

ONE e-mail each Friday. Easy unsubscribe. No spam — your e-mail address is safe.

redis weekly Issue #141
Apr 15 2016

Featured

corvus - A fast and lightweight Redis Cluster Proxy for Redis 3.0

Most redis client implementations don't support redis cluster. Elem has a lot of services relying on redis, which are written in Python, Java, Go, Nodejs etc. It's hard to provide redis client libraries for multiple languages without breaking compatibilities. Elem used twemproxy before, but it relies on sentinel for high availabity, it also requires restarting to add or remove backend redis instances, which causes service interruption. And twemproxy is single threaded, Elem had to deploy multiple twemproxy instances for large number of clients, which causes the sysadmin headaches. Therefore, they made corvus.

Reading

Counting Distinct Values With HyperLogLog

Counting distinct values is a trivial matter with small datasets, but it gets dramatically harder for streams with millions of distinct points. Absolute counting accuracy can be attained through a set, but then you have the undesirable tradeoff of linear memory growth.
What you really want when dealing with enormous datasets is something with predictable storage and performance characteristics. That is precisely what HyperLogLog (HLL) is — an algorithm optimized for counting the distinct values within a stream of data.
Nice introduction to HTTL from Codeship.

Code and libraries

bloomfilter-redis: Distributed bloom filters on Redis for Haskell

The hash family algorithm is partly inspired by Brian O'Sullivan's bloomfilter package.

Redlics - analytics with tracks and counts encoding numbers in Redis K/V

Written in ruby, tracking with bitmap, counting with buckets, highly configurable, time frames support, uses lua scripting with tracks and counts plotting.

jr - Barebones URL shortener based on Node and redis

A simple and short project written for fun by @malonehedges

redis-tsv - import and export data from Redis in TSV format

Beware, it uses KEYS * in the export step. I submitted an issue for it, asking for a SCAN alternative.

node-distributed-throttle-function - Distributed throttle() function (like Underscore) that uses Redis

This module add throttling to function invocation (just like Underscore#throttle) across a distributed system. It is built on top of Redis. It will currently always call the function on the leading edge and the trailing edge, just like Underscore's default implementation.

vermut: Aggregate stats for Laravel with Redis

Checkout src/Vermut.php to understand the API.

redis-key-summary

Experimental Node.js utility to sample random redis keys and build a summary of key patterns. It uses randomkey underneath to sample redis keys.


Redis Weekly

A free, once–weekly e-mail round-up of Redis news, articles, tools and libraries.

ONE e-mail each Friday. Easy unsubscribe. No spam — your e-mail address is safe.