atbr (large-scale and low-latency in-memory key-value pair store) now supports websocket-based sharding for parallel deployments.
Websocket Sharding Example
Checkout and install atbr
$ git clone git@github.com:atbrox/atbr.git $ cd atbr $ sudo ./INSTALL.sh
Start 3 servers loaded with data
$ cd atbrserver $ python atbr_server.py 8585 shard_data_1.tsv $ python atbr_server.py 8686 shard_data_2.tsv $ python atbr_server.py 8787 shard_data_3.tsv
Start shard server talking to shards
$ python atbr_shard_server.py localhost:8585 \ localhost:8686 localhost:8787
Connect to shard server and lookup key=key1
$ python atbr_websocket_cmdline_client.py key1
Stay tuned for other updates on atbr, here is a rough roadmap.
- Increased concurrency and threadsafety support
- Increased reliability in sharded deployments (with Apache Zookeeper)
- Simplified and automated sharded deployment on AWS and clusters
- Benchmarks
- Comparison with other storage alternative (e.g. HBase, Redis, MongoDB, CouchDB and Cassandra)
- End-to-end examples (from hadoop/mapreduce jobs to serving)
- (in-memory) map(reduce) support with Lua or C++
- Thrift support
- Avro support
- large-scale graph processing example (ref: NetworkX)
- Case studies
Documentation
atbr.atbrox.com
Best regards,
Pingback: atbr now has Apache Thrift support