A major new release of PostgreSQL, the enterprise-class open source database, is now in beta, and is expected to be released into general availability this summer. PostgreSQL version 9.0 is the first version to include built-in real-time binary database replication with query scale-out, consisting of two features, hot standby and streaming replication.
In version 9.0, new features will allow developers and DBAs to broaden their use of PostgreSQL, including new binary replication. Binary replication is the number-one feature people are talking about, says Josh Berkus, CEO, PostgreSQL Experts, leader of the PostgreSQL Core Team. That's because Postgres users have had to rely on third-party replication tools such as Slony until now, he explains. In the simplest case scenario, for example, in which a user just wants to have replication between two machines, "the setup is unnecessarily complicated because you're getting all these high-end features even if you're not going to use them," says Berkus.
In addition, Postgres' new binary replication tool addresses concerns about idle warm standby servers. "The problem with the warm standby failover server is that it's not good for being anything other than an insurance policy while it's running," says Berkus. "But you can't actually query it. It's an inert database until it's activated by failover," he points out. "If Postgres is important enough to you to need warm standby in the first place, then chances are you're going to be running it on a $25,000 machine. So having one of those machines effectively idle and only there for insurance doesn't make people happy about their resource usage. The new feature allows people using warm standby and point-in-time recovery to allow them to get some additional use out of their standby machine by allowing them to run read-only queries."
In total, there are more than 200 changes made to the database, according to Postgres. Because version 9.0 includes many new major features as well as overhauled internal code, such as changes to the syntax allowed by the PL/PgSQL language, backwards compatibility issues are expected. Source code, as well as binary installers for many platforms, is available from the PostgreSQL website.