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.4.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

pickleshare-0.7.4-py2.py3-none-any.whl (6.9 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

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

File hashes

Hashes for pickleshare-0.7.4.tar.gz
Algorithm Hash digest
SHA256 84a9257227dfdd6fe1b4be1319096c20eb85ff1e82c7932f36efccfe1b09737b
MD5 6a9e5dd8dfc023031f6b7b3f824cab12
BLAKE2b-256 69fedd137d84daa0fd13a709e448138e310d9ea93070620c9db5454e234af525

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pickleshare-0.7.4-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 c9a2541f25aeabc070f12f452e1f2a8eae2abd51e1cd19e8430402bdf4c1d8b5
MD5 922081613889c8f67b3b4f493f8831c3
BLAKE2b-256 9f17daa142fc9be6b76f26f24eeeb9a138940671490b91cb5587393f297c8317

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