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.0a7.tar.gz (737.1 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.0a7-cp37-cp37m-macosx_10_14_x86_64.whl (505.9 kB view details)

Uploaded CPython 3.7mmacOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: RelStorage-3.0a7.tar.gz
  • Upload date:
  • Size: 737.1 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.31.1 CPython/3.7.4

File hashes

Hashes for RelStorage-3.0a7.tar.gz
Algorithm Hash digest
SHA256 53d9b5511a39dc049417e6b9c3c0b2071effcc02cde4873ec319be504fb2179d
MD5 816afd3dbf2445d46c8577d97e81c408
BLAKE2b-256 0d0bd2eb14ce4653f07e080d7c2375d70e8279c2ae020a7f1bdf45db398dd107

See more details on using hashes here.

File details

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

File metadata

  • Download URL: RelStorage-3.0a7-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 505.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.31.1 CPython/3.7.4

File hashes

Hashes for RelStorage-3.0a7-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 73dcc9006792f30909dfa3f14070fe15eb851a7a395bf8864660cc6aa0b52edc
MD5 db2f97acc062c62c49054a38a0be1f69
BLAKE2b-256 2680e3902ce920790052a4dda466774c7fcdce4a1cab62fe9e63ed4f81bf21a1

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