Skip to content

Commit

Permalink
DOCSP-46894 Update compat db page (#998)
Browse files Browse the repository at this point in the history
  • Loading branch information
stephmarie17 authored Feb 12, 2025
1 parent 7a6ff74 commit 457745b
Showing 1 changed file with 40 additions and 42 deletions.
82 changes: 40 additions & 42 deletions source/documentdb-support.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,21 +18,12 @@ Amazon DocumentDB Compatibility
:backlinks: none
:depth: 1

.. figure:: /figures/documentdb.png
:alt: Amazon DocumentDB logo

`Amazon DocumentDB (with MongoDB compatibility) <https://docs.aws.amazon.com/documentdb/latest/developerguide/what-is.html>`__
is a fast, reliable, and fully managed database service. Amazon DocumentDB makes it easy
to set up, operate, and scale MongoDB-compatible databases in the cloud.
With Amazon DocumentDB, you can run the same application code and use the same drivers
and tools that you use with MongoDB.

Version Information
-------------------

Amazon DocumentDB supports MongoDB v4.0 and MongoDB v5.0. These versions don't
support all the newer features and functionality in the versions of MongoDB available
on `MongoDB Atlas. <https://www.mongodb.com/docs/atlas/>`__
Amazon DocumentDB claims support for MongoDB v4.0 and MongoDB v5.0. These
versions do not support all the newer features and functionality in the versions
of MongoDB available on :atlas:`MongoDB Atlas </>`.

.. tip:: MongoDB Version History

Expand All @@ -42,43 +33,54 @@ on `MongoDB Atlas. <https://www.mongodb.com/docs/atlas/>`__
Compatibility
-------------

As of November 2023, Amazon DocumentDB is about 34 percent compatible with the
MongoDB API.

On Amazon DocumentDB, the following MongoDB features are
available in a limited capacity or are not supported at all:

- **Features**: `Capped collections <https://www.mongodb.com/docs/manual/core/capped-collections/>`__,
`map-reduce operations <https://www.mongodb.com/docs/v7.0/core/map-reduce/>`__,
`GridFS <https://www.mongodb.com/docs/manual/core/gridfs/>`__,
`text indexes <https://www.mongodb.com/docs/manual/core/indexes/index-types/index-text/>`__,
`partial indexes <https://www.mongodb.com/docs/manual/core/index-partial/>`__,
`case-insensitive indexes <https://www.mongodb.com/docs/manual/core/index-case-insensitive/>`__
- **Commands**: ``collMod``, ``createView``, ``filemd5``, ``reIndex``, ``connPoolStats``,
``dbHash``, ``features``, sharding commands (aside from ``enableSharding`` and
- **Features**: :manual:`Capped collections </core/capped-collections/>`,
:manual:`map-reduce operations </core/map-reduce/>`,
:manual:`GridFS </core/gridfs/>`,
:manual:`text indexes </core/indexes/index-types/index-text/>`,
:atlas:`vector search indexes </atlas-vector-search/vector-search-type/>`,
:manual:`partial indexes </core/index-partial/>`,
:manual:`case-insensitive indexes </core/index-case-insensitive/>`,
:manual:`time-series data </core/timeseries/timeseries-bucketing/>`,
:manual:`on-demand materialized views </core/materialized-views/>`,
:manual:`client-side field level encryption </core/csfle/>`,
:manual:`queryable encryption </core/queryable-encryption/>`
- **Commands**: ``collMod``, ``collMod:expireAfterSeconds``, ``copydb``,
``createView``, ``filemd5``, ``reIndex``, ``connPoolStats``, ``dbHash``,
``features``, ``getLastError``, ``getPrevError``, ``parallelCollectionScan``,
``resetError``, ``endSessions``, ``killAllSessionsByPattern``,
``refreshSessions``, sharding commands (aside from ``enableSharding`` and
``shardCollection``)
- **Query Operators**: ``$expr``, ``$text``, ``$where``, ``$meta``, ``$box``, ``$center``,
``$centerSphere``, ``$polygon``, ``$near``
- **Aggregation Operators**: ``$accumulator``, ``$count``, ``$ceil``, ``$exp``, ``$floor``,
``$ln``, ``$log``, ``$log10``, ``$pow``, ``$sqrt``, ``$trunc``, ``$round``, ``$first``,
``$last``, ``$switch``, ``$binarySize``, ``$bsonSize``, ``$dateFromParts``,
``$dateToParts``, ``$dateTrunc``, ``$dateDiff``, ``$setDifference``, ``$anyElementTrue``,
``$allElementsTrue``, ``$ltrim``, ``$rtrim``, ``$trim``, ``$regexFind``,
``$regexFindAll``, ``$regexMatch``, ``$replaceOne``, ``$replaceAll``, ``$convert``,
``$toBool``, ``$toDate``, ``$toDecimal``, ``$toDouble``, ``$toInt``, ``$toLong``,
``$toObjectId``, ``$toString``, ``$isNumber``, ``$rand``, ``$sampleRate``, ``$getField``
- **Aggregation Stages**: ``$collStats``, ``$facet``, ``$bucket``, ``$bucketAuto``,
``$sortByCount``, ``$listLocalSessions``, ``$listSessions``, ``$graphLookup``
- **Query Operators**: ``$expr``, ``$jsonSchema``, ``$text``, ``$where``,
``$meta``, ``$box``, ``$center``, ``$centerSphere``, ``$polygon``, ``$near``,
``$uniqueDocs``
- **Aggregation Operators**: ``$accumulator``, ``$count``, ``$stdDevPop``,
``$stdDevSamp``, ``$pow``, ``$trunc``, ``$round``, ``$first``, ``$last``,
``$switch``, ``$binarySize``, ``$bsonSize``, ``$dateFromParts``,
``$dateToParts``, ``$dateTrunc``, ``$dateDiff``, ``$ltrim``, ``$rtrim``,
``$trim``, ``$regexFind``, ``$regexFindAll``, ``$regexMatch``,
``$replaceOne``, ``$replaceAll``, ``$isNumber``, ``$rand``, ``$sampleRate``,
``$getField``
- **Aggregation Stages**: ``$collStats``, ``$facet``, ``$bucket``,
``$bucketAuto``, ``$sortByCount``, ``$unionWith``, ``$set``,
``$setWindowFields``, ``$unset``, ``$listLocalSessions``, ``$listSessions``,
``$graphLookup``, ``$merge``, ``$planCacheStats``
- **Cursor Methods**: ``cursor.collation()``, ``cursor.max()``,
``cursor.min()``, ``cursor.noCursorTimeout()``, ``cursor.returnKey()``,
``cursor.showRecordId()``, ``cursor.tailable()``

In addition, Amazon DocumentDB does not leverage indexes when you perform
queries that contain any of the following operators:
In addition, Amazon DocumentDB does not leverage indexes when performing queries
that contain any of the following operators:

- ``$ne``
- ``$nin``
- ``$nor``
- ``$not``
- ``$exists``
- ``$elemMatch``
- ``$distinct``
- ``$elemMatch`` when used in nested queries

To learn more about Amazon DocumentDB's compatibility with MongoDB v4.0 and MongoDB v5.0,
see the following AWS documentation:
Expand All @@ -87,10 +89,6 @@ see the following AWS documentation:
- `Functional Differences: Amazon DocumentDB and MongoDB <https://docs.aws.amazon.com/documentdb/latest/developerguide/functional-differences.html>`__
- `Supported MongoDB APIs, Operations, and Data Types <https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html>`__

For the most current compatibility status between Amazon DocumentDB and MongoDB, see the
`Is Amazon DocumentDB Compatible with MongoDB Atlas? <https://www.isdocumentdbreallymongodb.com/>`__
website.

Support
-------

Expand Down

0 comments on commit 457745b

Please sign in to comment.