A Python Object-Document-Mapper for working with MongoDB
http://mongoengine.org
| docs | ||
| mongoengine | ||
| tests | ||
| .gitignore | ||
| .travis.yml | ||
| AUTHORS | ||
| benchmark.py | ||
| CONTRIBUTING.rst | ||
| DIFFERENCES.md | ||
| LICENSE | ||
| MANIFEST.in | ||
| python-mongoengine.spec | ||
| README.md | ||
| README_MONGOENGINE.rst | ||
| requirements.txt | ||
| setup.cfg | ||
| setup.py | ||
MongoMallard
MongoMallard is a fast ORM-like layer on top of PyMongo, based on MongoEngine.
- Repository: https://github.com/elasticsales/mongomallard
- See README_MONGOENGINE for MongoEngine's README.
- See DIFFERENCES for differences between MongoEngine and MongoMallard.
Benchmarks
Sample run on a 2.7 GHz Intel Core i5 running OS X 10.8.3
MongoEngine 0.8.2 (ede9fcf) |
MongoMallard (478062c) |
Speedup | |
|---|---|---|---|
| Doc initialization | 52.494us | 25.195us | 2.08x |
| Doc getattr | 1.339us | 0.584us | 2.29x |
| Doc setattr | 3.064us | 2.550us | 1.20x |
| Doc to mongo | 49.415us | 26.497us | 1.86x |
| Load from SON | 61.475us | 4.510us | 13.63x |
| Save to database | 434.389us | 289.972us | 2.29x |
| Load from database | 558.178us | 480.690us | 1.16x |
| Save/delete big object to database | 98.838ms | 65.789ms | 1.50x |
| Serialize big object from database | 31.390ms | 20.265ms | 1.55x |
| Load big object from database | 41.159ms | 1.400ms | 29.40x |
See tests/benchmark.py for source code.