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.0a8.tar.gz (755.0 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.0a8-cp37-cp37m-macosx_10_14_x86_64.whl (526.9 kB view details)

Uploaded CPython 3.7mmacOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: RelStorage-3.0a8.tar.gz
  • Upload date:
  • Size: 755.0 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.0.1 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.7.4

File hashes

Hashes for RelStorage-3.0a8.tar.gz
Algorithm Hash digest
SHA256 e053b85f4a8b27da81eed847488f54de527cb2d3bfc08b25bcc31e0b93a999d6
MD5 c0dcc06de929be3a1a58f7f70b360fb1
BLAKE2b-256 5b52890deeec15f35878e310f2bb73ac1caee576fc343bd4880bc7c95ae4c9be

See more details on using hashes here.

File details

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

File metadata

  • Download URL: RelStorage-3.0a8-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 526.9 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.0.1 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.7.4

File hashes

Hashes for RelStorage-3.0a8-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 c164f3bb8ec33a2d77f7f7cd6fcd8b271a78392307259748e8ff984afd036efa
MD5 75d76df55aee9b5e3e1ca66de2bf741a
BLAKE2b-256 559199af3461c5d65b0f15307d459ca2665bcff1341302f2d70665bd86873ae7

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