ConfigsJul 2, 2026·3 min read

RavenDB — ACID Document Database with Built-In Search

RavenDB is a fully transactional NoSQL document database with built-in full-text search, distributed clustering, and multi-model support for documents, counters, time series, and attachments.

Agent ready

Ready-to-run agent install

This asset can be installed after the agent chooses its runtime, checks the plan, and runs the matching command.

Native · 98/100Policy: allow
Agent surface
Any MCP/CLI agent
Kind
Skill
Install
Single
Trust
Trust: Established
Entrypoint
RavenDB Overview
Direct install command
npx -y tokrepo@latest install db1dd463-75f0-11f1-9bc6-00163e2b0d79 --target codex

Run after dry-run confirms the install plan.

Introduction

RavenDB is a document database that combines ACID transactions with the flexibility of a schema-free data model. It includes a built-in search engine based on Lucene/Corax, automatic indexing, and multi-node clustering without requiring external tools.

What RavenDB Does

  • Stores JSON documents with ACID transactions including multi-document operations
  • Automatically creates indexes based on query patterns
  • Provides built-in full-text search without external search engines
  • Supports distributed clusters with automatic failover and conflict resolution
  • Handles attachments, counters, time series, and graph queries natively

Architecture Overview

RavenDB uses a master-master replication model where every node in a cluster can accept writes. Conflicts are resolved automatically using configurable strategies or custom scripts. The storage engine (Voron) is a copy-on-write B+tree optimized for SSDs with ACID guarantees. Indexes run asynchronously on background threads using a Lucene-derived engine called Corax, keeping write latency low while maintaining query performance.

Self-Hosting & Configuration

  • Deploy via Docker, DEB/RPM packages, or direct binary download for Linux, Windows, or macOS
  • Access the Studio web UI at port 8080 for database management and query development
  • Configure cluster topology by adding nodes through the Studio or REST API
  • Set up TLS certificates for production deployments via the built-in setup wizard
  • Enable external replication or ETL to sync data with other databases or services

Key Features

  • ACID transactions across multiple documents and collections in a single cluster
  • Auto-indexing analyzes query patterns and creates indexes without manual DDL
  • Built-in Lucene/Corax search engine eliminates the need for a separate search service
  • Multi-model: documents, key-value, counters, time series, attachments, and graph queries
  • Studio web UI provides a visual query builder, index management, and cluster monitoring

Comparison with Similar Tools

  • MongoDB — eventually consistent by default; RavenDB provides ACID multi-document transactions
  • Elasticsearch — search-focused with limited transactional guarantees; RavenDB combines both
  • CouchDB — HTTP-based with eventual consistency; RavenDB offers stronger consistency and auto-indexing
  • FerretDB — MongoDB-compatible on PostgreSQL; RavenDB is a purpose-built engine with native search
  • ArangoDB — multi-model with graph focus; RavenDB emphasizes ACID guarantees and auto-indexing

FAQ

Q: Is RavenDB open source? A: RavenDB Community Edition is open source under the AGPLv3 license. Commercial licenses are available for proprietary deployments.

Q: How does auto-indexing work? A: When a query arrives without a matching index, RavenDB creates one automatically based on the query pattern. The index builds in the background while the query returns results from a temporary scan.

Q: Does RavenDB support SQL-like queries? A: RavenDB uses RQL (Raven Query Language), a SQL-like language tailored for document queries. It supports projections, filtering, grouping, and full-text search predicates.

Q: What happens during a network partition? A: RavenDB uses a consensus protocol for cluster operations. During a partition, nodes that maintain quorum continue accepting writes; isolated nodes queue changes for reconciliation.

Sources

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets