Skip to main content

A simple key/value store with multiple backends.

Project description

🥫 Preserve - A simple Python Key/Value database with multiple backends.

⚠️ Preserve is alpha software and currently in development (i.e., no tests).

Preserve is a simple (simplistic) key/value store for storing JSON-like data in different backends. Its API is based on the standard Python dictionary API.

ℹ️ Installation and Usage

Preserve can be installed using pip:

pip install preserve

Preserve can be also installed from Github directly using the following command:

pip install git+https://github.com/evhart/preserve#egg=preserve

📒 Requirements

Preserve needs the following libraries installed and Python 3.6+ (tested on Python 3.8):

🐍 Python API

If you know how to use Python dictionaries, you already know how to use preserve. Simply use the backend connector that corresponds to your database and you are ready to go.

You can either create a new database from a standarised database URI or using the driver parameters:

import preserve

# Using parameters:
jam_db1 = preserve.open('shelf', filename="preserve.dbm")
jam_db1['strawberry'] = {'name': 'Strawbery Jam', 'ingredients': ['strawberry', 'sugar']}


# Using URI:
jam_db2 = preserve.from_uri("mongodb://127.0.0.1:27017/preserves?collection=jam")
jam_db2['currant'] = {'name': 'Currant Jam', 'ingredients': ['currant', 'sugar']}

🖥️ Command Line Interface (CLI)

Preserve has a simple CLI utility that can be access using the preserve command. Preserve support migrating/exporting data from one database ot another database and showing the firs rows from databases.

Usage: preserve [OPTIONS] COMMAND [ARGS]...

  🥫 Preserve - A simple Key/Value database with multiple backends.

Options:
  --install-completion [bash|zsh|fish|powershell|pwsh]
                                  Install completion for the specified shell.
  --show-completion [bash|zsh|fish|powershell|pwsh]
                                  Show completion for the specified shell, to
                                  copy it or customize the installation.

  --help                          Show this message and exit.

Commands:
  connectors  List available connectors.
  export      Export a database to a different output.
  header      Get header of a given database table.

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

preserve-1.0.0.tar.gz (14.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

preserve-1.0.0-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

Details for the file preserve-1.0.0.tar.gz.

File metadata

  • Download URL: preserve-1.0.0.tar.gz
  • Upload date:
  • Size: 14.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.4 CPython/3.12.5 Linux/6.11.0-1018-azure

File hashes

Hashes for preserve-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a6d8ed7605c98227d33640800b72392b3d7d192ebc611a135f088a95776a2613
MD5 1ee9ea6d60065b663b799735ac2239ba
BLAKE2b-256 b33bf1b5daf8c727a9b1dc4ba183f6952a91282c43f38c490d86cdc0891bd9c9

See more details on using hashes here.

File details

Details for the file preserve-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: preserve-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 18.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.4 CPython/3.12.5 Linux/6.11.0-1018-azure

File hashes

Hashes for preserve-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 41af2685c032a811cdec684f1240dfb40b138f2fdc4b08c7c2f68904512b3269
MD5 2e7e5fe550cae85c0ee6a93bb91850d0
BLAKE2b-256 d2aec282384cba8fd8947852ae51df01496b8c7ac436f85720be321a7b6fdffa

See more details on using hashes here.

Supported by

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