news.volyx.in

Redis re-implemented with SQLite (github.com)

502 points by tosh · 853 days ago · 122 comments on HN

Article summary

Redka is a reimplementation of Redis using SQL, allowing data to be stored on disk and supporting ACID transactions. It is compatible with the Redis API and can be used as a standalone server or as a Go module for in-process use. Redka is designed for use cases where the dataset does not fit in memory, such as caching large amounts of data. It supports various data types, including strings, lists, sets, hashes, and sorted sets.

Main themes

  • Redis alternatives
  • In-memory vs disk storage
  • SQL-based caching
  • Data structure servers
  • Cache expiration and management

What commenters say

  • Redis is not suitable for use cases where data does not fit in memory, and alternative solutions should be considered.
  • Using a relational database like Postgres can provide similar functionality to Redis, but with added features and persistence.
  • Implementing a cache with disk storage can lead to performance issues and unpredictable behavior, and may not be the best solution.
  • There are existing solutions, such as ScyllaDB and FoundationDB, that provide a balance between data safety and performance, and may be more suitable for certain use cases.
  • Redis is designed as an in-memory cache, and using it with disk storage would compromise its performance and purpose.
  • Some commenters suggest using other caching solutions, such as Varnish or memcached, which can provide similar functionality to Redis with disk storage.
  • The choice of caching solution depends on the specific use case and requirements, and there is no one-size-fits-all solution.
  • Using a database like Postgres can provide more features and flexibility than Redis, but may require additional configuration and setup.