In this scenario, we are performing a MongoDB API test aimed at verifying compatibility, reliability, and performance across different implementations of the MongoDB document model. It's important to note that our focus is on the core product itself, and we are not evaluating or testing specific cloud providers. The purpose of this test is to validate the behavior of the MongoDB API when interacting with various MongoDB clones, taking into consideration potential differences in their underlying architecture or features.
- Install Git
- Install Docker
- Download Mongo 5.0.26 client to your preferred bin folder
- Install pymongo:
pip3 install pymongo
git clone https://github.com/mongodb-developer/mongo-core-test.git
cd mongo-core-test
git clone https://github.com/mongodb/mongo.git
- Edit run.py "User Variables"
python3 run.py [5 or 7]
Use MongoDB 5.0.26 Docker Container:
docker compose -f mongo5.yml up -d
Use MongoDB 7.0.7 Docker Container:
docker compose -f mongo7.yml up -d
Use MaxScale 23.08.4 Docker Container:
docker compose -f maxscale.yml up -d
Use FerretDB 1.20.1 Docker Container:
docker compose -f ferret.yml up -d
Product Tested | vs MongoDB 5.x | vs MongoDB 7.x | Works with Compass |
---|---|---|---|
MongoDB 5.0.26 | 100% | 96.01% | ✔️ |
MongoDB 7.0.7 | 100% | 100% | ✔️ |
SingleStore Kai™ | 46.96% | 45.85% | ✔️ |
FerretDB 1.20.1 | 37.42% | 36.34% | ❌ |
MariaDB MaxScale 23.08.4 | 33.19% | 31.93% | ❌ |