Skip to main content

Tiny 'shelve'-like database with concurrency support

Project description

PickleShare - a small ‘shelve’ like datastore with concurrency support

Like shelve, a PickleShareDB object acts like a normal dictionary. Unlike shelve, many processes can access the database simultaneously. Changing a value in database is immediately visible to other processes accessing the same database.

Concurrency is possible because the values are stored in separate files. Hence the “database” is a directory where all files are governed by PickleShare.

Example usage:

from pickleshare import *
db = PickleShareDB('~/testpickleshare')
db.clear()
print("Should be empty:",db.items())
db['hello'] = 15
db['aku ankka'] = [1,2,313]
db['paths/are/ok/key'] = [1,(5,46)]
print(db.keys())

This module is certainly not ZODB, but can be used for low-load (non-mission-critical) situations where tiny code size trumps the advanced features of a “real” object database.

Installation guide: pip install pickleshare

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pickleshare-0.7.3.tar.gz (5.9 kB view details)

Uploaded Source

Built Distribution

pickleshare-0.7.3-py2.py3-none-any.whl (6.8 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file pickleshare-0.7.3.tar.gz.

File metadata

  • Download URL: pickleshare-0.7.3.tar.gz
  • Upload date:
  • Size: 5.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pickleshare-0.7.3.tar.gz
Algorithm Hash digest
SHA256 b9710d01f777b1bf3b69c8f889b1d05a5145668f79e980cbd0f849e059edd274
MD5 0ccdd8e65737a92eec47888dae61ff95
BLAKE2b-256 5d295f3eb419067a98fe98d78a7e309fef03abceb2dc3e3587c88e2ca704ba20

See more details on using hashes here.

File details

Details for the file pickleshare-0.7.3-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for pickleshare-0.7.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 6c11e6a57c0cd25f941ec1451a7d73f01913ba4f0e19aeb38ae4e750e885c7c2
MD5 1db3f7a084ad3e359a02ad35156ef4e9
BLAKE2b-256 a0d0d2daee922f1c5128128e4737b1c7fdd4f93670a303ceafe80e5414b959a3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page