Skip to main content

A backend for ZODB that stores pickles in a relational database.

Project description

RelStorage is a storage implementation for ZODB that stores pickles in a relational database. PostgreSQL 9.6 and above (but not 12), MySQL 5.7.19 / 8.0, and Oracle 10g and 11g are currently supported. RelStorage replaced the PGStorage project.

Features

  • It is a drop-in replacement for FileStorage and ZEO.

  • There is a simple way to convert FileStorage to RelStorage and back again. You can also convert a RelStorage instance to a different relational database.

  • Designed for high volume sites: multiple ZODB instances can share the same database. This is similar to ZEO, but RelStorage does not require ZEO.

  • According to some tests, RelStorage handles high concurrency better than the standard combination of ZEO and FileStorage.

  • Whereas FileStorage takes longer to start as the database grows due to an in-memory index of all objects, RelStorage starts quickly regardless of database size.

  • Supports undo, packing, and filesystem-based ZODB blobs.

  • Both history-preserving and history-free storage are available.

  • Capable of failover to replicated SQL databases.

  • zodbconvert utility to copy databases.

  • Free, open source (ZPL 2.1)

Documentation

Documentation including installation instructions is hosted on readthedocs.

The complete changelog is also there.

https://readthedocs.org/projects/relstorage/badge/?version=latest

Development

RelStorage is hosted at GitHub:

https://github.com/zodb/relstorage

Continuous integration

A test suite is run for every push and pull request submitted. Travis CI is used to test on Linux, and AppVeyor runs the builds on Windows.

https://travis-ci.org/zodb/relstorage.svg?branch=master https://ci.appveyor.com/api/projects/status/pccddlgujdoqvl83?svg=true

Builds on Travis CI automatically submit updates to coveralls.io to monitor test coverage.

https://coveralls.io/repos/zodb/relstorage/badge.svg?branch=master&service=github

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.

Source Distribution

RelStorage-3.0a9.tar.gz (776.4 kB view details)

Uploaded Source

Built Distribution

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

RelStorage-3.0a9-cp37-cp37m-macosx_10_14_x86_64.whl (546.2 kB view details)

Uploaded CPython 3.7mmacOS 10.14+ x86-64

File details

Details for the file RelStorage-3.0a9.tar.gz.

File metadata

  • Download URL: RelStorage-3.0a9.tar.gz
  • Upload date:
  • Size: 776.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.1.0 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.7.4

File hashes

Hashes for RelStorage-3.0a9.tar.gz
Algorithm Hash digest
SHA256 c64b3166f541128be3d917429c829d435d2e1329aad7e23e80cbb01039b17c6e
MD5 a280bc4511730d74840d5db7c3a1ac52
BLAKE2b-256 cb79c0cad0f47296a6a4d3cfd9fc4140fb0cb9bffe4866ffbe404aa00c96ba68

See more details on using hashes here.

File details

Details for the file RelStorage-3.0a9-cp37-cp37m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: RelStorage-3.0a9-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 546.2 kB
  • Tags: CPython 3.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.1.0 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.7.4

File hashes

Hashes for RelStorage-3.0a9-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 aa8be4484c2558c8a88a032e851137e0d95ffa8c2f65eef3e11eb7626e1b986c
MD5 eb759eb80ac52a8b0784c254fc259c21
BLAKE2b-256 f1a345f2357b138edd6d69b22e265332e3581d9b20ab5034810227d3b23eeae5

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