Hi,

as we are working with Ignite in the company I work for, basically for in-memory Grids and horizontal scaling in the cloud I guess Ignite is also a perfect fit for adding replication/partitioning to a temporal NoSQL storage system capable of storing revisions of both XML- and JSON-documents (could also store any other kind of data) in a binary format efficiently (https://sirix.io or https://github.com/sirixdb/sirix -- at least for the storage part itself). It started as a university project, but now I'm really eager to put forth the idea of keeping the history of your data as efficiently as possible (minimal storage- and query-overhead within the same asymptotic space and time complexity as other database systems, which usually do not keep the history -- for instance through a novel sliding snapshot algorithm and copy-on-write semantics at the per page / per record level, heavily inspired by ZFS).

Maybe for the query plan rewriting (the AST of the query) and distribution Apache Spark is better suited, but for distributing transaction logs and executing transactions I think Ignite is the way to go.

What do you think?

I just have to finish the JSONiq query language implementation, but after releasing 1.0 in summer and stabilizing the core as well as keeping the APIs stable (and defining a spec for the binary representation, saving some space in page-headers for future encryption at rest for instance) I'm eager to work on clustering for Sirix :-)

Oh and if you're interested, go ahead, clone it, download the Zip, the Docker image, whatever and let me know what you think :)

kind regards

Johannes

Reply via email to