Dear User,
By browsing on this website you are agreeing to our 'Terms & Conditions' and the 'Privacy Policy' in regards to your rights and personal data handling.
For your convenience, we compared known databases to RavenDB NoSQL database - see how RavenDB tops known databases in many areas and features: concurrency control, single-node transactions, distributed transactions, querying, indexing and more.
Pessimistic, multiple granularity locks (multiple readers, single writer).
Pessimistic, optionally explicit (manual) locking.
Optimistic, using ETAGs as "timestamps".
Supported.
Supported.
Supported.
Ensures writes (assurance by consensus protocol) on majority of nodes.
Ensures writes (wait for replication) on majority of nodes.
Two-phase commit.
Flexible, can ensure writes on majority or several more options.
Allows simple and Javascript projections, facets, dynamic index declarations, loading related documents and integrated spatial and full-text search syntax.
Allows simple (field level) projections, spatial and full-text searches.
Allows SQL queries, supports JSON as data columns.
Support multiple querying APIs, such as MongoDB, SQL, Gremlin. Its own API can do queries with simple projections and filtering.
Async, reacts to data changes, doesn't lock on data, can run user-code, computations and projections on field values while indexing in background.
Sync, updates index as part of CRUD while locking data, indexes only field values.
Sync, updates index as part of CRUD while locking data, indexes only field values. Can define different underlying data structures as optimization.
Reverse index on all fields in documents.
Supports linear geometry, configurable indexing methods and distance units (miles/km). Supports raw longitude, latitude coordinates and standard WKT data.
Supports linear and spherical geometry, data stored as GeoJSON.
Supported using 3rd-party extension.
Supports linear geometry, data stored as GeoJSON.
Highly configurable, leverages Lucene.Net to power rich text search, can use custom analyzers (value tokenizers). For example, custom analyzers can be used to implement efficient (and fast!) wildcard search (n-gram analyzers) or handling language specific characters.
Tokenizes by whitespace and punctuation, stemming, stopwords. Optional tokenization by wildcard.
Configurable value tokenizers and "thesaurus" dictionaries for term mapping.
Either Azure Search/Cognitive Search or 3rd-party search engines.
Async map/reduce over Lucene indexes, reacts to data changes, has all features of RavenDB indexes such as computations and projections.
Aggregation/Map-reduce, both sync, introduce read-locks so they may stall because of long writes.
SQL aggregation (standard GROUP BY queries).
Limited SQL-like aggregation functions from DocumentDB SQL API.
Out of the box high availability (active-active topology), allow for multiple replication strategies (cross cluster replication, star topology replication) and load balancing between replica sets.
Out of the box high availability (active-active topology), in case of even number of nodes, need "special" node.
Active-passive topology only, supports either log-shipping or streaming to replicate data.
Out of the box high availability and load balancing, support for custom load balancing strategies, supports active-active topology.
Not supported.
Multiple sharding strategies, background shard balancing, needs specialized services as part of sharding topology (query router, configuration servers).
Built-in sharding with declarative partitioning (using Foreign Data Wrapper).
Out of the box sharding (on user-defined key).
Supported, async transfer of data between either RavenDB -> RavenDB or RavenDB -> SQL, use Javascript to define transformation scripts.
3rd-party vendors.
3rd-party vendors.
Supported, transfer of data to/from CosmosDB and multiple sources. Can use Data Factory UX and properietary dataflow language to define transformation scripts.
Supported, batch processing, declarative filtering, loading related documents and complex projections with optional calculations.
Supported, allow filtering and simple field projection.
Supported using LISTEN/NOTIFY (event based processing).
Supported, allows sending events to client API and other destinations (like queues).
Supported, also supports multi-attachment transactions - documents and binary blobs can be changed as part of single transaction.
Supported, but doesn't support transactions.
Supported by using special column type or using Large Object feature.
Supported, binary attachments can have indexable properties.
Built-in administration web-app, fully-featured solution for database administration and devops.
3rd-party vendors.
3rd-party vendors.
Azure UI contains management section for CosmosDB.
Easy to understand flat-rate that depends on provider (AWS, Azure, GCP).
Flat-rate that depends on provider (AWS, Azure, GCP). Some of services like full-text search and backups have additional costs.).
Depends on 3rd-party provider of PostgreSQL-as-a-service.
Resource Units costs - complex to figure out.