Gibson is a high efficiency, tree based memory cache server. It is not meant to replace a database, since it was written to be a key-value store to be used as a cache server, but it's not the usual cache server.
Normal key-value stores ( memcache, redis, etc ) uses a hash table as their main data structure, so every key is hashed with a specific algorithm and the resulting hash is used to identify the given value in memory. This approach, although very fast, doesn't allow the user to execute globbing expressions/selections on a given (multiple) keyset, thus resulting on a pure one-by-one access paradigm.
- Very fast and with the lowest memory footprint possible.
- Unlike many other stores, inserts, deletions and retrievals have the same time complexity.
- Fast LZF object compression.
- Builtin object Time-To-Live.
- Cached object locking and unlocking.
- Multiple key set operation with M* operators.