3 ms·
On the .NET stack, RavenDB[0] supports transactions on multiple items[1]. RavenDB is a nice middle ground: eventual consistency for queries for speed, but ACID
by judah 11y ago
On the .NET stack, RavenDB[0] supports transactions on multiple items[1].
RavenDB is a nice middle ground: eventual consistency for queries for speed, but ACID for create, update, and load (one or more items by ID).
It uses transactions throughout, so a failure in the midst of 10 writes will rollback all of them, as one would expect in a traditional relational database.
[0]: http://ravendb.net/ http://ravendb.net/
[1]: http://ravendb.net/docs/article-page/3.0/csharp/start/getting-started http://ravendb.net/docs/article-page/3.0/csharp/start/gettin...
- polskibus 11y agoIt does indeed look nice, however the pricing looks worse than MS SQL in the long run (for the enterprise version).
- judah 11y agoIt's free for open source projects. For commercial enterprise, Raven is effectively $788/core/year [0]. Quite reasonable, IMO. Contrast this with MS SQL Server Enterprise, which appears to be $14,000/core one-time cost [1]. (Disclaimer: I'm a part-time employee for RavenDB. But I loved and used Raven on my own projects before becoming an employee.) [0]: http://ravendb.net/buy http://ravendb.net/buy [1]: http://www.microsoft.com/en-us/server-cloud/products/sql-server/purchasing.aspx http://www.microsoft.com/en-us/server-cloud/products/sql-ser...
- arosenbaum 11y agoHow can one possibly be eventually consistent for reads and ACID for updates? Unless you are saying the datasets available for fast queries cannot be updated consistently...Or are you just saying, you can read from replicas but maintain a single master...
- judah 11y agoDirect reads (by ID) and writes are ACID. Complex queries are eventually consistent. Hope this helps. I'm @judahgabriel if you have more questions.