Hello,
We have been developing a high-availability and version control solution for Postgres, called ChronicDB[1], that aims to combine live schema changes, replication, live connection migration, and scalability in a cohesive manner. We are requesting feedback[2] on the most desireable features Postgres users would like to have in such a solution.
ChronicDB is available for Postgres 7.4, 8.x, and 9, and can already apply live schema changes with zero downtime through live query-rewritting and live connection migration. The vision for ChronicDB is to eventually be able to apply:
Complex live schema changes:
- Partition operations such as vertical and horizontal splitting
- Field merge and splitting operations
- Field renaming
- Field relocation to a diff
erent
table
- Table renaming
- All these operations applied together atomically, without downtime
- Allowing an old version and a new version of an application to run concurrently, indefinitely
- Reversing schema changes
Replication:
- Master/slave replication, with an unlimited number of slaves
- Not having to restart replication when 95% of a database is replicated over a WAN link and a timeout interrupts replication
- Synchronous replication between a master and a primary backup
- Hot swap of master with primary backup without downtime
- Simple configuration
Live connection migration:
- The client applications will not be interrupted, and won't need to reconnect; downtime will be eliminated
Scalability:
- Live query inspection and routing to read-only replicas. This assumes the application is capable of handling such a weaker consistency model.
We would like to invite you to
learn
more about ChronicDB, to download it and to request new features. We would like to ask:
(1) What are the major types of schema changes you need to be able to apply ?
(2) If it was possible for us to fix a single (or two) frustrating, database update problems, which problems would those be?
(3) What is the major cause of downtime in your database applications ?
References:
[1] http://chronicdb.com
[2] http://chronicdb.com/request_new_features
Sincerely,
ChronicDB Community Team
http://chronicdb.com/benefits_of_chronicdb