Skip to content

pyzh/relstorage

 
 

Repository files navigation

RelStorage is a storage implementation for ZODB that stores pickles in a relational database. PostgreSQL 9.0 and above (performance is best with 9.5 and above), MySQL 5.0.32+ / 5.1.34+, 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.

image

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.

image

image

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

image

Likewise, builds on Travis CI will automatically submit updates to landscape.io to monitor code health (adherence to PEP8, absence of common code smells, etc).

Code Health

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 98.9%
  • Other 1.1%