Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/closeio/mongoengine

A Python Object-Document-Mapper for working with MongoDB
https://github.com/closeio/mongoengine

Last synced: about 2 months ago
JSON representation

A Python Object-Document-Mapper for working with MongoDB

Awesome Lists containing this project

README

        

MongoMallard
============

MongoMallard is a fast ORM-like layer on top of PyMongo, based on MongoEngine.

* Repository: https://github.com/elasticsales/mongoengine
* See [README_MONGOENGINE](https://github.com/elasticsales/mongoengine/blob/master/README_MONGOENGINE.rst) for MongoEngine's README.
* See [DIFFERENCES](https://github.com/elasticsales/mongoengine/blob/master/DIFFERENCES.md) 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](https://github.com/elasticsales/mongoengine/blob/master/tests/benchmark.py) for source code.