Raven DB
Raven is an Open Source (with a commercial option) document database for the .NET/Windows platform. Raven offers a flexible data model design to fit the needs of real world systems. Raven stores schema-less JSON documents, allow you to define indexes using Linq queries and focus on low latency and high performance.
- Scalable infrastructure: Raven builds on top of existing, proven and scalable infrastructure
- Simple Windows configuration: Raven is simple to setup and run on windows as either a service or IIS7 website
- Transactional: Raven support System.Transaction with ACID transactions. If you put data in it, that data is going to stay there
- Map/Reduce: Easily define map/reduce indexes with Linq queries
- .NET Client API: Raven comes with a fully functional .NET client API which implements Unit of Work and much more
- RESTful: Raven is built around a RESTful API
Raven is released under a dual Open Source license and a commercial license. Simply put, that means that it is freely available under the AGPL license but if you want to use this with proprietary software, you must buy a commercial license.
Documents...
in Raven are schema less JSON documents. Documents are independent entities, unrelated to one another. The following are three different documents:
Documents can be queried by defining indexes.
Indexes...
are persistent Linq queries that are executed on the background. The nearest thing in RDMBS terminology is a materialized view. Unlike RDBMS systems, indexes do not slow CRUD performance. Here is the index for PostsByCategory:
from post in docs.Posts select category in post.Categories select new { category }
Indexes can be queried using the following syntax: "category:Raven"
You can read more about Raven in our documentation.
