A document-oriented database written purely in Python.
Blitz is a document-oriented database toolkit for Python that is backend-agnostic.
It comes with a flat-file database for JSON documents and provides MongoDB-like querying capabilities.
Document-based, object-oriented interface.
Powerful and rich querying language.
Deep document indexes on arbitrary fields.
Compressed storage of documents.
Support for multiple backends (e.g. file-based storage, MongoDB).
Support for database transactions (currently only for the file-based backend).
An extensive documentation, including tutorials and installation instructions is available on ReadTheDocs.
The source code is available on GitHub.
If you should encounter any problems when using BlitzDB, please feel free to submit an issue on Github.
0.2.7: Fixed problem with __unicode__ function in Python 3.
0.2.6: Bugfix-Release: Fixed an issue with the $exists operator for the file backend.
0.2.4: Added support for projections and update operations to the MongoDB backend.
0.2.3: Bugfix-Release: Fixed bug in transaction data caching in MongoDB backend.
0.2.2: Fix for slice operators in MongoDB backend.
0.2.1: Better tests.
- 0.2.0: Support for including additional information in DB references. Support for accessing document attributes as dictionary items.
Added $regex parameter that allows to use regular expressions in queries.
- 0.1.5: MongoDB backend now supports database transactions. Database operations are now read-isolated by default, i.e.
uncommitted operations will not affect database queries before they are committed.
- 0.1.4: Improved indexing of objects for the file backend, added support for automatic serialization/deserialization
of object attributes when adding keys to or querying an index.
0.1.3: Sorting of query sets is now supported (still experimental)
0.1.2: Small bugfixes, BlitzDB version number now contained in DB config dict
0.1.1: BlitzDB is now Python3 compatible (thanks to David Koblas)
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.