Features

We are Packed With Features

RavenDB is a transactional, open-source Document Database written in .NET, offering a flexible data model designed to address requirements coming from real-world systems.

RavenDB allows you to build high-performance, low-latency applications quickly and efficiently.

 

 

  • Safe by default

    Safe by default

    Based on years of experience with real, live enterprise systems, RavenDB is built to ensure data access is done right. No locking, no abuse of network or system resources. With RavenDB your application is guaranteed to be as fast as and reliable as it gets.

    Transactional

    Transactional

    ACID transactions are fully supported, even between different nodes. If you put data in, it is going to stay there. We care about your data and we keep it safe.

  • Scalable

    Scalable

    Sharding, replication and multi-tenancy are supported out-of-the-box. Scaling out is as easy as it gets.

    • Built-in Sharding

      Easily split your data across different servers to handle more load better.

    • Built-in Replication

      Replicate data between multiple servers to increase availability and recover quickly.

    • Mix replication and sharding

      Replication and Sharding are orthogonal features and can be easily used together.

  • Schema free

    Schema free

    Forget about tables, rows, mappings or complex data-layers. RavenDB is a document-oriented database you can just dump all your objects into.

    Get running in 5 minutes

    Get running in 5 minutes

    5 minutes, that's all it takes to start using RavenDB. Designed not to get in your way, RavenDB requires no complex installation process, just download and run. Check out our Quickstart Tutorials

  • It Just Works

    It Just Works

    Stop fighting the database and get ready to go into a world full of fun, with a database that cares. The fluent and intuitive API makes building data backed applications a breeze. As a guideline, zero-administration is required to the server. Just unzip, run and start writing code.

    Fast queries

    Fast queries

    RavenDB can satisfy any query in the speed of light, as no processing whatsoever is being made to satisfy queries. All indexing operations are done in the background, and have no effect on querying, writing or reading from the database.

  • Best practices built in

    Best practices built in

    Enjoy working with the bleeding edge of modern software development, using friction-free methodolgies.

    • Unit of work

      Make changes to the DB by just modifying the objects you got from the client API.

    • Domain Driven Design

      Modeling your data using DDD concepts will ensure best operation.

    • In-memory DB for testing

      No need for mocks, mirroring or complex installations.

    • Automatic batching

      Self-optimizing by issuing a batch instead of many single commands.

  • High performance

    High performance

    RavenDB is a very fast persistence layer for every type of data model. Skip creating complicated mapping or multi-layer DALs, just persist your entities. It Just Works, and it does the Right Thing.

    Caching built in

    Caching built in

    Multiple level of caches operate automatically both on the server and on the client by default, transparently. Yet, caching is completely configurable and advanced modes like Aggressive Caching exist.

  • APIs

    APIs

    Access RavenDB from any language and technology. Client / Server communication is done via REST over HTTP, and client APIs for .NET (including Linq and F# support), Silverlight and Javascript.

    Built-in management
studio

    Built-in management
    studio

    Easily manage your database and data using the graphical UI bundled with every instance of RavenDB server.

  • Carefully designed

    Carefully designed

    Every bit of code was carefully considered. RavenDB was designed with best-practices in mind, and it ensures that everything Just Works.

    Map - Reduce

    Map / Reduce

    Indexes are defined using easy to write Map/Reduce functions written in Linq syntax. By supporting concepts like multi-maps and boosting indexes are so simple to write, yet very powerful.

  • Feature rich and extensible

    Feature rich and
    extensible

    Built with extensibility in mind, RavenDB can be easily extended both on the client and the server. Many integration points ensure you can always squeeze more out of RavenDB. You aren't shackled to a One Size Fits None solution.

    Embeddedable

    Embeddedable

    RavenDB can be embedded in any .NET application, making it a perfect fit also for desktop applications.

  • Bundles

    Bundles

    RavenDB ships with server-side plugins extending it in various helpful ways. It is just a matter of dropping a DLL to the server folder.

    • Versioning

      Any change to existing documents is logged. Easy auditing functionality.

    • Expiration

      Tell documents to expire and be deleted automatically.

    • Many more

      It is also super easy to roll your own.

  • Index replication to SQL

    Index replication to SQL

    To allow you to take advantage of the reporting tools available in the relational world, RavenDB allows you to easily replicate indexes to SQL tables.

    Full-text search built in

    Full-text search built in

    No need to plug in any external tool to support advanced searches on text fields. Full-text searches are supported out of the box by the server and the client API.

  • Advanced search techniques

    Advanced search techniques

    The built-in full-text search engine (Lucene) allows RavenDB to support a lot of other cool stuff, including and not limited to:

    • Suggests

      Detect spelling mistakes made by your users and offer them corrections.

    • Faceted search

      Drill-down functionality for search pages and more.

    • More Like This

      Detect similar documents and offer them to your users.

  • Geo-spatial search support

    Geo-spatial search
    support

    Out of the box, with easy to use API

    Easy backups

    Easy backups

    Make backups asynchronously, without disturbing the normal DB operations. Backup and Restore are both supported by the DB, a utility tool to make the process even easier is bundled with the server.

  • Multi-tenancy

    Multi-tenancy

    Host multiple databases in one RavenDB server.

    Attachments

    Attachments

    RavenDB supports storing data streams that are not actual data, like images and other binary data you don't want to store as a document but still want available.

  • Online Index Rebuilds

    Online Index Rebuilds

    Indexes are updated in the background, without requiring any interaction from the user or the normal ACID operation of the database.

    Fully async

    Fully async (C# 5 ready)

    RavenDB already supports the brand new async API introduced by C# 5

  • Community

    Community

    RavenDB enjoys a great and supportive community you can meet in the mailing list and on JabbR.

    Cloud hosting available

    Cloud hosting available

    No need to host the server yourself. Run RavenDB on the cloud with RavenHQ, CloudBird, AppHarbor or Windows Azure.