You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The performance of MemoryStore, which is currently powered by mongomock, is relatively slow. This can particularly cause noticeable delays when connecting to a FileStore, which uses MemoryStore internally. It would be great to find an alternative to mongomock that is more performant.
I have begun working on this and will keep this issue updated with my findings.
mongita does not support many query operations including $regex or $exists. It also doesn't support bulk_write or estimated_document_count although those can be worked around.
pymongo-inmemory
Not tested yet, but looks quite promising because it actually uses mongo (as opposed to mocking it)
See #846
The text was updated successfully, but these errors were encountered:
I'm curious how one uses the file based stores in production though if multiple processes accessing the DB at the same time will cause issues (as is the case for MontyDB and Mongita). I guess these solutions really are just meant for the single-job, serial use case?
I'm curious how one uses the file based stores in production though if multiple processes accessing the DB at the same time will cause issues (as is the case for MontyDB and Mongita). I guess these solutions really are just meant for the single-job, serial use case?
TBH I don't think anyone has used the file-based Store enough to have encountered this problem yet!
The performance of
MemoryStore
, which is currently powered bymongomock
, is relatively slow. This can particularly cause noticeable delays when connecting to aFileStore
, which usesMemoryStore
internally. It would be great to find an alternative tomongomock
that is more performant.I have begun working on this and will keep this issue updated with my findings.
Possible Alternatives
mongomock
(base case)mongita
montydb
(already a dependency; could refactorMemoryStore
to inherit fromMontyStore
)pymongo-inmemory
Notes so far
montydb
See davidlatwe/montydb#14
montydb
does not supportbulk_write
orestimated_document_count
although those can be worked around.montydb
could not create more than 1 DB instance in memory. See ConfigurationError: montydb has been config to use BSON and cannot be changed in current session. davidlatwe/montydb#79 (comment)mongita
mongita
does not support many query operations including$regex
or$exists
. It also doesn't supportbulk_write
orestimated_document_count
although those can be worked around.pymongo-inmemory
Not tested yet, butlooks quite promising because it actually usesmongo
(as opposed to mocking it)See #846
The text was updated successfully, but these errors were encountered: