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

Uploaded Source

Built Distribution

pickleshare-0.7-py2.py3-none-any.whl (6.6 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

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

File hashes

Hashes for pickleshare-0.7.tar.gz
Algorithm Hash digest
SHA256 2e6bb018179fdffda5c46b360198ab83acd0f99ad7865ab5163bc1d153bca64f
MD5 7af5afa21c7813e4104d1fe309fbf617
BLAKE2b-256 c5a9fcb641df59b757739917bf8e9078dc02d4502fd28ced65b8b683608dd178

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pickleshare-0.7-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ea51e165ab0e5c6b8c9f8bdcc1aff5fbe8e47129089391381b5103ab5131513f
MD5 c62aac32c3f7f62a4f1d094b22a60eeb
BLAKE2b-256 d87759cf3f26476c412d3d26f4310baf12d3fd7bad7f8bbc9a597e387484c823

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