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

ArangoDB

275
442
+ 1
192
Redis

59.8K
45.9K
+ 1
3.9K
Add tool

ArangoDB vs Redis: What are the differences?

Introduction

ArangoDB and Redis are both popular open-source databases, but they differ in several key aspects. Here are six key differences between them:

  1. Data Models: ArangoDB is a multi-model database that supports multiple data models including key-value, document, and graph. It allows users to choose the most suitable model for their data, providing flexibility and simplicity. On the other hand, Redis is a key-value store, which means it stores and retrieves data based on a unique key. It does not support other data models like document or graph.

  2. Data Persistence: ArangoDB provides persistent storage by default, ensuring data durability and reliability. It stores data on disk and offers various options for data replication and synchronization. Redis, on the other hand, primarily relies on in-memory storage for fast data access. Although it offers mechanisms for persistence, Redis is often used as a caching layer rather than a primary database for persistent data storage.

  3. Queries and Indexing: ArangoDB supports powerful querying capabilities, including standard SQL queries, graph traversals, and full-text search. It provides multiple indexing techniques to optimize query performance. Redis, on the other hand, has limited querying capabilities. It primarily supports simple key-based operations and does not provide advanced querying features or indexing mechanisms.

  4. Scalability and High Availability: ArangoDB is designed for scalability and high availability. It supports horizontal scaling through sharding and replication, allowing users to distribute data across multiple nodes and ensure fault tolerance. Redis, on the other hand, does not natively support sharding or automatic data partitioning. Although Redis can be configured to work in a clustered mode, it requires manual setup and management.

  5. Data Size and Memory Limitations: ArangoDB is suitable for handling both small and large datasets. It does not have any specific limitations on data size or memory usage, as it can efficiently handle terabytes of data. In contrast, Redis has memory limitations as it primarily relies on in-memory storage. The data size in Redis is typically limited by the available memory, and large datasets may require careful memory management or the use of external storage solutions.

  6. Concurrency and Performance: ArangoDB is designed to handle concurrent requests efficiently. It provides transaction support and employs multi-threading to handle multiple requests concurrently. Redis, on the other hand, is known for its excellent performance and low latency. It is optimized for single-threaded performance and excels in scenarios requiring high throughput and low latency, such as caching and real-time data processing.

In summary, ArangoDB offers a multi-model approach with flexible data models, persistent storage, advanced querying capabilities, scalability, and high availability. Redis, on the other hand, focuses on fast in-memory key-value storage, simple operations, and high performance. The choice between ArangoDB and Redis depends on the specific requirements of the application and the data model needed.

Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of ArangoDB
Pros of Redis
  • 37
    Grahps and documents in one DB
  • 26
    Intuitive and rich query language
  • 25
    Good documentation
  • 25
    Open source
  • 21
    Joins for collections
  • 15
    Foxx is great platform
  • 14
    Great out of the box web interface with API playground
  • 6
    Good driver support
  • 6
    Low maintenance efforts
  • 6
    Clustering
  • 5
    Easy microservice creation with foxx
  • 4
    You can write true backendless apps
  • 2
    Managed solution available
  • 0
    Performance
  • 887
    Performance
  • 542
    Super fast
  • 514
    Ease of use
  • 444
    In-memory cache
  • 324
    Advanced key-value cache
  • 194
    Open source
  • 182
    Easy to deploy
  • 165
    Stable
  • 156
    Free
  • 121
    Fast
  • 42
    High-Performance
  • 40
    High Availability
  • 35
    Data Structures
  • 32
    Very Scalable
  • 24
    Replication
  • 23
    Pub/Sub
  • 22
    Great community
  • 19
    "NoSQL" key-value data store
  • 16
    Hashes
  • 13
    Sets
  • 11
    Sorted Sets
  • 10
    Lists
  • 10
    NoSQL
  • 9
    Async replication
  • 9
    BSD licensed
  • 8
    Integrates super easy with Sidekiq for Rails background
  • 8
    Bitmaps
  • 7
    Open Source
  • 7
    Keys with a limited time-to-live
  • 6
    Lua scripting
  • 6
    Strings
  • 5
    Awesomeness for Free
  • 5
    Hyperloglogs
  • 4
    Runs server side LUA
  • 4
    Transactions
  • 4
    Networked
  • 4
    Outstanding performance
  • 4
    Feature Rich
  • 4
    Written in ANSI C
  • 4
    LRU eviction of keys
  • 3
    Data structure server
  • 3
    Performance & ease of use
  • 2
    Temporarily kept on disk
  • 2
    Dont save data if no subscribers are found
  • 2
    Automatic failover
  • 2
    Easy to use
  • 2
    Scalable
  • 2
    Channels concept
  • 2
    Object [key/value] size each 500 MB
  • 2
    Existing Laravel Integration
  • 2
    Simple

Sign up to add or upvote prosMake informed product decisions

Cons of ArangoDB
Cons of Redis
  • 3
    Web ui has still room for improvement
  • 2
    No support for blueprints standard, using custom AQL
  • 15
    Cannot query objects directly
  • 3
    No secondary indexes for non-numeric data types
  • 1
    No WAL

Sign up to add or upvote consMake informed product decisions

What is ArangoDB?

A distributed free and open-source database with a flexible data model for documents, graphs, and key-values. Build high performance applications using a convenient SQL-like query language or JavaScript extensions.

What is Redis?

Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker. Redis provides data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes, and streams.

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

Jobs that mention ArangoDB and Redis as a desired skillset
LaunchDarkly
Oakland, California, United States
What companies use ArangoDB?
What companies use Redis?
Manage your open source components, licenses, and vulnerabilities
Learn More

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

What tools integrate with ArangoDB?
What tools integrate with Redis?

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

Blog Posts

Nov 20 2019 at 3:38AM

OneSignal

PostgreSQLRedisRuby+8
9
4781
Jun 6 2019 at 5:11PM

AppSignal

RedisRubyKafka+9
15
1719
GitHubDockerReact+17
41
37661
What are some alternatives to ArangoDB and Redis?
Neo4j
Neo4j stores data in nodes connected by directed, typed relationships with properties on both, also known as a Property Graph. It is a high performance graph store with all the features expected of a mature and robust database, like a friendly query language and ACID transactions.
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.
PostgreSQL
PostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, user-defined types and functions.
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.
OrientDB
It is an open source NoSQL database management system written in Java. It is a Multi-model database, supporting graph, document, key/value, and object models, but the relationships are managed as in graph databases with direct connections between records.
See all alternatives