A blazing-fast datastore and querying engine for Go built on Redis.
Zoom is a high-performance datastore and querying engine for Go applications built on Redis. It provides an ORM-like abstraction that allows developers to work with structured Go models while leveraging Redis's in-memory speed, making it suitable for low-latency applications where traditional SQL databases might be too slow.
Go developers building low-latency applications that require fast data access, such as real-time systems, caching layers, or services where Redis's performance is beneficial but a higher-level data modeling API is desired.
Developers choose Zoom for its simple API that abstracts Redis complexity, offering rich type support and basic querying without requiring database migrations, while maintaining atomic operations and optimistic locking for safe concurrent updates.
A blazing-fast datastore and querying engine for Go built on Redis.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages Redis's in-memory storage for microsecond-level latency, with benchmarks in the README showing operations like Save averaging around 29,307 ns.
Handles complex Go types including custom types, slices, maps, and embedded structs directly, without requiring manual serialization, as outlined in the Models section.
Implements schema-on-read, automatically inferring schema from Go structs, which eliminates the need for database migration scripts entirely.
Offers optimistic locking through Redis's WATCH/MULTI/EXEC commands, enabling safe concurrent updates without complex locking mechanisms, as detailed in the concurrent updates section.
Explicitly stated as not actively maintained in the README's Development Status section, raising concerns about long-term viability, bug fixes, and security updates.
Lacks support for advanced query operations like IN or OR, and the README admits known performance issues with queries using more than one filter.
Depends entirely on Redis's in-memory storage, making it unsuitable for large datasets without costly hardware, and it does not support sharding or Redis Cluster.