Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Redis
Redis

14.6K
9.7K
+ 1
3.8K
RethinkDB
RethinkDB

231
221
+ 1
296
Add tool

Redis vs RethinkDB: What are the differences?

Developers describe Redis as "An in-memory database that persists on disk". Redis is an open source, BSD licensed, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets. On the other hand, RethinkDB is detailed as "JSON. Scales to multiple machines with very little effort. Open source". RethinkDB is built to store JSON documents, and scale to multiple machines with very little effort. It has a pleasant query language that supports really useful queries like table joins and group by, and is easy to setup and learn.

Redis belongs to "In-Memory Databases" category of the tech stack, while RethinkDB can be primarily classified under "Databases".

"Performance" is the top reason why over 842 developers like Redis, while over 46 developers mention "Powerful query language" as the leading cause for choosing RethinkDB.

Redis and RethinkDB are both open source tools. Redis with 37.1K GitHub stars and 14.3K forks on GitHub appears to be more popular than RethinkDB with 22.3K GitHub stars and 1.73K GitHub forks.

reddit, Instacart, and Slack are some of the popular companies that use Redis, whereas RethinkDB is used by miDrive, Runbook, and The Control Group. Redis has a broader approval, being mentioned in 3239 company stacks & 1732 developers stacks; compared to RethinkDB, which is listed in 37 company stacks and 25 developer stacks.

What is Redis?

Redis is an open source, BSD licensed, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.

What is RethinkDB?

RethinkDB is built to store JSON documents, and scale to multiple machines with very little effort. It has a pleasant query language that supports really useful queries like table joins and group by, and is easy to setup and learn.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose Redis?
Why do developers choose RethinkDB?

Sign up to add, upvote and see more prosMake informed product decisions

    Be the first to leave a con
    What companies use Redis?
    What companies use RethinkDB?

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Redis?
    What tools integrate with RethinkDB?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to Redis and RethinkDB?
    Memcached
    Memcached is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of database calls, API calls, or page rendering.
    MongoDB
    MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding.
    RabbitMQ
    RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.
    Hazelcast
    With its various distributed data structures, distributed caching capabilities, elastic nature, memcache support, integration with Spring and Hibernate and more importantly with so many happy users, Hazelcast is feature-rich, enterprise-ready and developer-friendly in-memory data grid solution.
    Cassandra
    Partitioning means that Cassandra can distribute your data across multiple machines in an application-transparent matter. Cassandra will automatically repartition as machines are added and removed from the cluster. Row store means that like relational databases, Cassandra organizes data by rows and columns. The Cassandra Query Language (CQL) is a close relative of SQL.
    See all alternatives
    Decisions about Redis and RethinkDB
    艁ukasz Korecki
    艁ukasz Korecki
    CTO & Co-founder at EnjoyHQ | 12 upvotes 38.1K views
    atEnjoyHQEnjoyHQ
    PostgreSQL
    PostgreSQL
    MongoDB
    MongoDB
    RethinkDB
    RethinkDB

    We initially chose RethinkDB because of the schema-less document store features, and better durability resilience/story than MongoDB In the end, it didn't work out quite as we expected: there's plenty of scalability issues, it's near impossible to run analytical workloads and small community makes working with Rethink a challenge. We're in process of migrating all our workloads to PostgreSQL and hopefully, we will be able to decommission our RethinkDB deployment soon.

    See more
    Django
    Django
    Redis
    Redis

    I use Redis because, based on the case studies I have reviewed, it appears to be the most performant cache database for my Django projects. The ease of configuration and deployment is also a big plus.

    Using both higher level view caching as well as low-level QuerySet caching with Redis has allowed me to improve HTTP request times by an order of magnitude.

    See more
    Interest over time
    Reviews of Redis and RethinkDB
    Review ofRedisRedis

    Redis is a good caching tool for a cluster, but our application had performance issues while using Aws Elasticache Redis since some page had 3000 cache hits per a page load and Redis just couldn't quickly process them all in once + latency and object deseialization time - page load took 8-9 seconds. We create a custom hybrid caching based on Redis and EhCache which worked great for our goals. Check it out on github, it's called HybriCache - https://github.com/batir-akhmerov/hybricache.

    How developers use Redis and RethinkDB
    Avatar of Cloudcraft
    Cloudcraft uses RedisRedis

    Redis is used for storing all ephemeral (that's data you don't necessarily want to store permanently) user data, such as mapping of session IDs (stored in cookies) to current session variables at Cloudcraft.co. The many datastructures supported by Redis also makes it an excellent caching and realtime statistics layer. It doesn't hurt that the author, Antirez, is the nicest guy ever! These days, I would be really hard pressed to find any situation where I would pick something like Memcached over Redis.

    Avatar of Trello
    Trello uses RedisRedis

    Trello uses Redis for ephemeral data that needs to be shared between server processes but not persisted to disk. Things like the activity level of a session or a temporary OpenID key are stored in Redis, and the application is built to recover gracefully if any of these (or all of them) are lost. We run with allkeys-lru enabled and about five times as much space as its actual working set needs, so Redis automatically discards data that hasn鈥檛 been accessed lately, and reconstructs it when necessary.

    Avatar of Stack Exchange
    Stack Exchange uses RedisRedis

    The UI has message inbox that is sent a message when you get a new badge, receive a message, significant event, etc. Done using WebSockets and is powered by redis. Redis has 2 slaves, SQL has 2 replicas, tag engine has 3 nodes, elastic has 3 nodes - any other service has high availability as well (and exists in both data centers).

    Avatar of Brandon Adams
    Brandon Adams uses RedisRedis

    Redis makes certain operations very easy. When I need a high-availability store, I typically look elsewhere, but for rapid development with the ability to land on your feet in prod, Redis is great. The available data types make it easy to build non-trivial indexes that would require complex queries in postgres.

    Avatar of Kent Steiner
    Kent Steiner uses RedisRedis

    I use Redis for cacheing, data storage, mining and augmentation, proprietary distributed event system for disparate apps and services to talk to each other, and more. Redis has some very useful native data types for tracking, slicing and dicing information.

    Avatar of Sine Wave Entertainment
    Sine Wave Entertainment uses RethinkDBRethinkDB

    High-speed update-aware storage used in our region server infrastructure; provides a good middle layer for storage of rapidly modified information.

    Avatar of Runbook
    Runbook uses RethinkDBRethinkDB

    Main database, using it in multiple datacenters in an active-active configuration.

    Avatar of Tobe O
    Tobe O uses RethinkDBRethinkDB

    Angel includes support for multiple databases, out-of-the-box.

    Avatar of Mike MacCana
    Mike MacCana uses RethinkDBRethinkDB

    As a boring document oriented database with safe defaults.

    Avatar of Domraider
    Domraider uses RethinkDBRethinkDB

    Sharded and replicated storage, NoSQL with joins

    How much does Redis cost?
    How much does RethinkDB cost?
    Pricing unavailable
    Pricing unavailable