Common object storage frontend
Project description
Common object storage frontend that supports dictionary-style access, object serialization and compression, and multiple storage and caching backends.
Currently supported storage backends are:
Amazon S3 Web Service
Berkeley Source Database
Apache Cassandra
Memory
Filesystem
Firebird
FTP
DBM
Durus
Microsoft SQL Server
MySQL
Oracle
PostgreSQL
Redis
SQLite
Subversion
Zope Object Database (ZODB)
Currently supported caching backends are:
Memory
Filesystem
Firebird
memcache
Microsoft SQL Server
MySQL
Oracle
PostgreSQL
SQLite
The simplest shove use case is:
from shove import Shove
store = Shove()
which creates an in-memory store and cache.
The use of other backends for storage and caching involves passing an module URI or existing store or cache instance to shove following the form:
from shove import Shove
<storename> = Shove(<store_uri>, <cache_uri>)
The module-specific URI form is documented in its module. The URI form follows the URI form used by SQLAlchemy:
http://www.sqlalchemy.org/docs/dbengine.myt#dbengine_establishing
shove fully implements the Python dictionary/mapping API:
http://docs.python.org/lib/typesmapping.html
Differences between 0.1 and 0.1.1
updated to work with SQLAlchemy 0.4.x
Differences between 0.1.1 and 0.1.2
updated to work with boto 1.x
Differences between 0.1.2 and 0.1.3
better clean up of file handlers for filesystem based storage and caching (per Larry Meyn)
What’s new with 0.2.1
Cleanup
Bunch of suggestions from Kevin Dangoor
What’s new with 0.2.2
remove hardcoded dependencies of dusty antiquity
allow override of pickle protocol (per Ling Li)
What’s new with 0.3.0
Redis support for store
Apache Cassandra support for store (deletion is eventually consistent)
What’s new with 0.3.1
fix wrong keyword in store tests (per Ling Li)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.