redcon
Tile38


redcon | Tile38 | |
---|---|---|
4 | 9 | |
2,197 | 9,248 | |
0.1% | 0.6% | |
0.0 | 7.4 | |
9 months ago | about 1 month ago | |
Go | Go | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
redcon
-
Should I write my own Redis?
Hello,
there is an excellent library for golang which allows you to implement the redis server protocol: https://github.com/tidwall/redcon
I would like to put in the effort to implement most redis commands there and map them to SQL so that all data can be saved inside a fine tuned sqlite.
Essentially if this is implemented we would have a database compatible to redis, the difference is that data is saved to disk and not to RAM.
Is there a use case for that? Do people want that? There is some interesting things that could be done with that but I am not sure if the world needs this.
-
Redcon - Redis compatible server framework for Rust
I ported it from Go and use it for my Tile38 project.
- Redis-compatible key-value store in Go
Tile38
-
Show HN: TG – Fast geometry library in C
[2] https://github.com/tidwall/tile38
- PostgreSQL: No More Vacuum, No More Bloat
-
Your Data Fits in RAM
I actually worked on a project that did this. We used a database called "Tile38" [1] which used an R-Tree to make geospatial queries speedy. It was pretty good.
Our dataset was ~150 GiB, I think? All in RAM. Took a while to start the server, as it all came off disk. Could have been faster. (It borrowed Redis's query language, and its storage was just "store the commands the recreate the DB, literally", IIRC. Dead simple, but a lot of slack/wasted space there.)
Overall not a bad database. Latency serving out of RAM was, as one should/would expect, very speedy!
[1]: https://tile38.com/
-
Redcon - Redis compatible server framework for Rust
I ported it from Go and use it for my Tile38 project.
- Tile38 - a geolocation data store, spatial index, and realtime geofence
- Path hints for B-trees can bring a performance increase of 150% – 300%
- How do I implement push notifications on a 10 mile radius from a certain user?
What are some alternatives?
jupiter - Jupiter is a framework for wrapping compute or memory intense components to provide them as high throughput and ultra low latency services to applications using the Redis RESP protocol
vitess - Vitess is a database clustering system for horizontal scaling of MySQL.
rsync - gokrazy rsync
ledisdb - A high performance NoSQL Database Server powered by Go
redix - a very simple pure key => value storage system that speaks Redis protocol with Postgres as storage engine and more
kingshard - A high-performance MySQL proxy
flashdb - FlashDB is an embeddable, in-memory key/value database in Go (with Redis like commands and super easy to read)
go-mysql-elasticsearch - Sync MySQL data into elasticsearch
deseresp - DeserRESP is an serializer and deserializer for Redis' RESP3 format using serde
goqu - SQL builder and query library for golang
redcon.rs - Redis compatible server framework for Rust
groupcache - groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases.

