StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Application & Data
  3. In-Memory Databases
  4. In Memory Databases
  5. IndexedDB vs Redis

IndexedDB vs Redis

OverviewDecisionsComparisonAlternatives

Overview

Redis
Redis
Stacks61.9K
Followers46.5K
Votes3.9K
GitHub Stars42
Forks6
IndexedDB
IndexedDB
Stacks34
Followers97
Votes0

IndexedDB vs Redis: What are the differences?

Key Differences between IndexedDB and Redis

IndexedDB and Redis are both popular database systems used in web development. While they share some similarities, they also have significant differences that set them apart. This article will highlight the key differences between IndexedDB and Redis.

  1. Data Model: IndexedDB is an object-oriented database that stores data in structured objects, which can be accessed using JavaScript's IndexedDB API. On the other hand, Redis is a key-value store where data is stored as a collection of key-value pairs, and values can be of different types like strings, lists, sets, etc.

  2. Persistence: IndexedDB provides persistent storage, meaning the data remains saved even after the browser is closed or the system restarts. Redis also offers persistence, but it provides different levels of persistence options such as snapshots, append-only files, or both.

  3. Scalability: Redis is known for its excellent scalability and performance. It can handle millions of operations per second and is often used in high-traffic applications. IndexedDB, while suitable for storing smaller amounts of data, may not perform as well when dealing with a large number of records or heavy workloads.

  4. Data Manipulation: IndexedDB provides a powerful querying mechanism that allows for complex data manipulation operations, including indexing, filtering, and sorting. Redis, on the other hand, offers limited data manipulation capabilities. It primarily focuses on data retrieval and storage operations.

  5. Replication and Clustering: Redis comes with built-in support for replication and clustering, allowing for high availability and fault tolerance. It can replicate data across multiple nodes and distribute the workload efficiently. IndexedDB, in contrast, does not offer native replication or clustering features.

  6. Data Expiry: Redis provides options for setting an expiration time on keys, allowing data to expire automatically after a certain period. This feature is useful for implementing caching and managing temporary data. IndexedDB does not have built-in support for automatic data expiry.

In summary, IndexedDB and Redis differ in their data models, persistence, scalability, data manipulation capabilities, support for replication and clustering, and data expiry options. These differences make them suitable for different use cases and scenarios in web development.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Advice on Redis, IndexedDB

Anonymous
Anonymous

May 17, 2020

Needs advice

I'm currently developing an app that ranks trending stuff ( such as games, memes or movies, etc. ) or events in a particular country or region. Here are the specs: My app does not require registration and requires cookies and localStorage to track users. Users can add new entries to each trending category provided that their country of origin is recorded in cookies. If each category contains more than 100 items then the oldest items get deleted. The question is: what kind of database should I use for managing this app? Thanks in advance

575k views575k
Comments

Detailed Comparison

Redis
Redis
IndexedDB
IndexedDB

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.

This API uses indexes to enable high-performance searches of this data. While Web Storage is useful for storing smaller amounts of data, it is less useful for storing larger amounts of structured data.

-
Stores key-pair values; It is not a relational database; IndexedDB API is mostly asynchronous; It is not a structured query language; It has supported to access the data from same domain.
Statistics
GitHub Stars
42
GitHub Stars
-
GitHub Forks
6
GitHub Forks
-
Stacks
61.9K
Stacks
34
Followers
46.5K
Followers
97
Votes
3.9K
Votes
0
Pros & Cons
Pros
  • 888
    Performance
  • 542
    Super fast
  • 514
    Ease of use
  • 444
    In-memory cache
  • 324
    Advanced key-value cache
Cons
  • 15
    Cannot query objects directly
  • 3
    No secondary indexes for non-numeric data types
  • 1
    No WAL
No community feedback yet
Integrations
No integrations available
MongoDB
MongoDB
Slick
Slick
SQLite
SQLite
Knex.js
Knex.js
MSSQL
MSSQL

What are some alternatives to Redis, IndexedDB?

MongoDB

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.

MySQL

MySQL

The MySQL software delivers a very fast, multi-threaded, multi-user, and robust SQL (Structured Query Language) database server. MySQL Server is intended for mission-critical, heavy-load production systems as well as for embedding into mass-deployed software.

PostgreSQL

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.

Microsoft SQL Server

Microsoft SQL Server

Microsoft® SQL Server is a database management and analysis system for e-commerce, line-of-business, and data warehousing solutions.

SQLite

SQLite

SQLite is an embedded SQL database engine. Unlike most other SQL databases, SQLite does not have a separate server process. SQLite reads and writes directly to ordinary disk files. A complete SQL database with multiple tables, indices, triggers, and views, is contained in a single disk file.

Cassandra

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.

Memcached

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.

MariaDB

MariaDB

Started by core members of the original MySQL team, MariaDB actively works with outside developers to deliver the most featureful, stable, and sanely licensed open SQL server in the industry. MariaDB is designed as a drop-in replacement of MySQL(R) with more features, new storage engines, fewer bugs, and better performance.

RethinkDB

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.

ArangoDB

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.

Related Comparisons

Bootstrap
Materialize

Bootstrap vs Materialize

Laravel
Django

Django vs Laravel vs Node.js

Bootstrap
Foundation

Bootstrap vs Foundation vs Material UI

Node.js
Spring Boot

Node.js vs Spring-Boot

Liquibase
Flyway

Flyway vs Liquibase