Barman and repmgr – Essential Tools for PostgreSQL

If your company’s software engineers are veterans with PostgreSQL, chances are pretty good they are also familiar with the utilities, Barman and repmgr. Barman handles the management of the backup and recovery process for a Postgres instance. While repmgr, as hinted at by its name, performs a similar role with replication – in fact repmgr also offers a measure of integration with Barman.

Let’s take a closer look at both tools to see if they make sense as part of your PostgreSQL implementation. If your team is considering Postgres as a cheaper alternative to Oracle, perhaps this additional information helps make your decision easier. Good luck!

Barman – the PostgreSQL Choice for Disaster Recovery

Developed by the well-known purveyor of Postgres support, training, and development, 2ndQuadrant, Barman is a worthy open source option for organizations needing a tool to handle backups and restores for PostgreSQL. It also plays an important role in any company’s disaster recovery process. Barman helps ensure databases are back online as quickly as possible – a vital factor in achieving business continuity.

In fact, Barman focuses its functionality on disaster recovery scenarios. It supports the remote and hot backups of multiple database servers, while helping DBAs or other network personnel get everything up and running again. The tool also provides remote management capabilities for multiple servers, including ssh support.

Other features include the local storage of metadata, PITR (Point-In-Time-Recovery), file compression, retention policies, incremental backups, tar integration, and more. In short, Barman is a fully functional backup and recovery solution for Postgres. Since it is written in Python, companies with developers skilled in that language can make modifications as needed.

Version 2.1 of Barman was released earlier this year. 2ndQuadrant also provides documentation as well as commercial support and consulting options. As an open source software product, a robust online community is available for advice on usage. Any company using PostgreSQL needs to explore Barman as an option for database backup and disaster recovery.

Manage PostgreSQL Replication with repmgr

Another open source Postgres utility developed by 2ndQuadrant, repmgr handles database replication across multiple PostgreSQL servers. The latest version of repmgr – 3.3.1 – was released in March of 2017, supporting Postgres versions 9.3 and later. It leverages streaming replication and the PostgreSQL 9 Hot Standby feature to ensure superior performance in high scalability and availability environments as well as ease of administration.

One of the unsurprising features of repmgr, considering the developer, is its seamless integration with Barman. You are able to make clones from a Barman archive, instead of accessing a live server. This helps prevent a performance hit on a production server.  If live streaming replication gets interrupted, an archive can be easily used in a pinch.

As with Barman, 2ndQuadrant also provides commercial-level support and consulting options with repmgr. When used together, both tools make it easier for companies to build an industry-leading relational database solution at a fraction of the cost of going with Oracle. It is yet another example of the benefits of open source software.

Stay tuned to the Betica Blog for additional news and insights from the wide world of software development. As always, thanks for reading!

PostgreSQL — an Enterprise Database Alternative to Oracle

Many enterprises still rely on Oracle as their relational database of choice. This decision largely makes sense, considering Oracle’s robust feature set and excellent performance handling huge amounts of data. However, with the rise in popularity of open source software solutions, many firms are now looking for an alternative to a proprietary RDMBS, like Oracle. Enter PostgreSQL.

One of the most popular open source relational database systems, PostgreSQL (or simply Postgre) boasts many of the same features as Oracle, most importantly enterprise-level performance. Companies are able to save significant money leveraging Postgre instead of the proprietary Oracle. While MySQL is another worthy open source option, it works better when used on smaller projects or for developers first learning relational database design and programming.

Let’s look more closely at PostgreSQL and see if it makes sense as another tool on your next open source development project.

PostgreSQL — Features and Functionality

PostgreSQL offers support for most of the core SQL:2011 standard and includes most SQL:2008 data types. The open source database provides many of the standard SQL features familiar to programmers, including foreign keys, views, triggers, joins, and stored procedures. Large data objects in the BLOB format are handled, so you can store rich media data (video, audio, etc.) within a relational database.

The database also supports a variety of enterprise level features, making it worthy of consideration as an alternative to Oracle. Multi-version Concurrency Control is vital for databases with heavy traffic, as is full ACID compliance. Online backups, asynchronous replication, and nested savepoints are other functionality in-demand from a high-end database.

Most popular operating systems run Postgre; most notably Linux, UNIX, Mac OS X and Windows. Programming interfaces exist for a variety of languages — Java, C/C++, the .NET Framework languages, Perl, Python, Ruby, and more. PostgreSQL regularly wins the Linux Journal Editors’ Choice Award for best RDBMS.

If you need to extend the database’s functionality, Postgre includes its own PL/SQL similar to Oracle. You are also able to write stored procedures and triggers in C for an added flexibility boost. Its continued status as an open source project means a robust and helpful community exists whenever questions or issues arise.

Is Postgre truly an Enterprise Replacement for Oracle?

Upon its first release in the mid to late 90s, Postgre’s performance wasn’t anything to write home about. Even the other major open source RDBMS option, MySQL, was faster, let alone Oracle and SQL Server. Over time and with programming skills of the open source community, the tables have turned. More recent benchmarks now show Postgre rivaling Oracle in query performance and surpassing MySQL as well.

When considering all the costs incurred on any large development project, proprietary database licensing definitely stands out. This is one reason many companies are now using PostgreSQL on projects instead of Oracle or Microsoft SQL Server. ROI happens much faster when leveraging open source software, like Postgre, compared to proprietary alternatives.

With Oracle no longer able to claim significant advantages in performance or functionality compared to PostgreSQL, businesses of all sizes need to consider going the open source route for the RDBMS on their next database project.

Check out the next edition of the Betica Blog for additional insights into the world of software development and quality assurance.