nalgeon/redka
nalgeon/redka has 4,569 GitHub stars and 135 forks. GitHot measured 0 stars in 24 hours and +1 in 7 days. Last checked 2026-11-11 04:08 UTC. Last push 2026-02-04.
Redis re-implemented with SQL
측정된 스타 증가
- in 24h
- 0
- in 7 days
- +1
- in 15 days
- 업데이트 지연
- in 1 month
- 업데이트 지연
서로 겹치는 기간의 순증가량이며 일별 합계가 아닙니다. 측정값이 없으면 비워 둡니다. 스타는 관심도를 나타내며 품질을 보장하지 않습니다.
README.md
OriginalRedka reimplements the core parts of Redis with SQL, while remaining compatible with Redis API.
Highlights:
- Data doesn't have to fit in RAM.
- Supports ACID transactions.
- SQL views for easier analysis and reporting.
- Uses SQLite or PostgreSQL as a backend.
- Runs in-process (Go API) or as a standalone server.
- Implements Redis commands and wire protocol (RESP).
Redka is stable and ready to use for testing and non-critical production scenarios. It's currently in maintenance mode, and no new features are planned.
Use cases
Here are some situations where Redka might be helpful:
Embedded cache for Go applications. If your Go app already uses SQLite or just needs a built-in key-value store, Redka is a natural fit. It gives you Redis-like features without the hassle of running a separate server. You're not limited to just get/set with expiration, of course — more advanced structures like lists, maps, and sets are also available.
Lightweight testing environment. Your app uses Redis in production, but setting up a Redis server for local development or integration tests can be a hassle. Redka with an in-memory database offers a fast alternative to test containers, providing full isolation for each test run.
Postgres-first data structures. If you prefer to use PostgreSQL for everything but need Redis-like data structures, Redka can use your existing database as the backend. This way, you can manage both relational data and specialized data structures with the same tools and transactional guarantees.
Commands
Redka supports five core Redis data types:
- Strings are the most basic Redis type, representing a sequence of bytes.
- Lists are sequences of strings sorted by insertion order.
- Sets are unordered collections of unique strings.
- Hashes are field-value (hash)maps.
- Sorted sets (zsets) are collections of unique strings ordered by each string's associated score.
Redka also provides commands for key management, server/connection management, and transactions.
Installation and usage
Redka comes in two flavors:
- Standalone Redis-compatible server: installation, usage.
- Go module for in-process use: installation, usage.
You can also run an in-process Redka server as a lightweight alternative to Redis test containers, or as a small-scale production instance.
Storage
Redka can use either SQLite or PostgreSQL as its backend. It stores data in a relational database with a simple schema and provides views for better introspection.
Performance
Redka is not about raw performance. You can't beat a specialized data store like Redis with a general-purpose relational backend like SQLite. However, Redka can still handle tens of thousands of operations per second, which should be more than enough for many apps.
See the benchmarks for more details.
Contributing
Contributions are welcome. For anything other than bugfixes, please first open an issue to discuss what you want to change.
Make sure to add or update tests as needed.
Acknowledgements
Redka would not be possible without these great projects and their creators:
- Redis (Salvatore Sanfilippo). It's such an amazing idea to go beyond the get-set paradigm and provide a convenient API for more complex data structures.
- SQLite (D. Richard Hipp). The in-process database powering the world.
- Redcon (Josh Baker). A very clean and convenient implementation of a RESP server.
Logo font by Ek Type.
Support
Redka is mostly a one-man project. It's currently in maintenance mode, and no new features are planned.
관련 프로젝트 살펴보기
Asabeneh/30-Days-Of-Python
30 Days of Python 프로그래밍 챌린지는 Python 프로그래밍 언어를 30일 동안 배우기 위한 단계별 가이드입니다. 이 챌린지는 100일 이상 걸릴 수 있습니다. 자신의 속도에 맞춰 진행하세요. 다음 동영상도 도움이 될 수 있습니다: https://www.youtube.com/channel/UC7PNRuno1rzYPb1xLa4yktw
78,560 스타grafana/grafana
개방적이고 조합 가능한 옵저버빌리티 및 데이터 시각화 플랫폼입니다. Prometheus, Loki, Elasticsearch, InfluxDB, Postgres 등 여러 소스의 메트릭, 로그, 트레이스를 시각화합니다.
77,830 스타redis/redis
실시간 데이터 기반 애플리케이션을 구축하는 개발자에게 Redis는 가장 선호되고, 가장 빠르며, 기능이 가장 풍부한 캐시, 데이터 구조 서버이자 문서 및 벡터 쿼리 엔진입니다.
77,395 스타apache/superset
Apache Superset는 데이터 시각화 및 데이터 탐색 플랫폼입니다.
75,473 스타