StrokeDB, Just Another Distributed Database? Not Really.
As Distributed Databases get more and more interest, implementations are flourishing. CouchDB showed the way to go and is now incubated as an Apache project. RDDB was one of the first Document-Oriented Distributed Databases implemented in Ruby. StrokeDB is a new actor in the scene. It was written by Yurii Rashkovskii and Oleg Andreev, who did a presentation at Euruko2008 (PDF slides). From the StrokeDB website:
There's also a promise to port StrokeDB to thin client languages (JavaScript, ActionScript, etc.) to enable offline work with the data.
You can check out the StrokeDB code at GitHub and have a look at Yurii's short introduction to StrokeDB. While the authors are busy writing a clean API and adding new features, it will be interesting to see how the project evolves with maturity and later to have a look at benchmarks to check how it performs.
1 comment
StrokeDB is an embeddable distributed document database written in Ruby. It is schema-free, it scales infinitely, it even tracks revisions and perfectly integrates with Ruby applications.StrokeDB is only 3 months old and offers already many interesting features, the basic ones for Distributed Databases:
- Flat address space of documents identified by UUIDs.
- JSON, schemaless document format.
- References to other documents with automatic eager loading on access.
- Documents revision control with diff/merge facilities built-in.
- A flexible object-oriented API.
- Simple search index over document slots.
- Possibility to write native code for very specific performance issues.
There's also a promise to port StrokeDB to thin client languages (JavaScript, ActionScript, etc.) to enable offline work with the data.
You can check out the StrokeDB code at GitHub and have a look at Yurii's short introduction to StrokeDB. While the authors are busy writing a clean API and adding new features, it will be interesting to see how the project evolves with maturity and later to have a look at benchmarks to check how it performs.
Community comments
What problem are we solving here?
by
Eugene Tolmachev
Posted
Educational Content
Concurrency in Clojure
Stuart Halloway May 17, 2013
Confessions of an Agile Addict
Ole Friis Østergaard May 16, 2013
Web Development: You're Doing It Wrong
Stefan Tilkov May 16, 2013
Programming The Feynman Way
Ben Evans May 15, 2013





Hello stranger!
You need to Register an InfoQ account or Login to post comments. But there's so much more behind being registered.Get the most out of the InfoQ experience.
Tell us what you think