Interview PostgreSQL is among the most popular database management systems, but market share is a slippery thing to measure, depending on whether you mean revenue, developer activity, or actual deployed databases.
The developer-focused StackOverflow puts PostgreSQL second after MySQL, with Microsoft SQL Server third and Oracle way down at 8th. DB-Engines on the other hand, which measures general discussion, puts Oracle top, followed by MySQL, Microsoft SQL Server and PostgreSQL 4th.
Open-source company Percona's distribution, announced at its Percona Live event in Amsterdam, is based on PostgreSQL 11.5, supplemented by several extensions. The pg_repack extension reorganises tables with minimal locks. The PostgreSQL Audit Extension (pgaudit) provides tools for audit logs to meet compliance requirements. And backup and restore is provided by the pgBackRest extension.
Perhaps the most interesting addition is Patroni, developed by online fashion platform Zolando to implement high availability, using Consul, Zookeeper or Etcd, which are existing tools for managing distributed services. You can also run Patroni natively on Kubernetes – though this is not yet part of the Percona package.
The rationale behind the product, according to Chief Experience Officer Matt Yonkovit, is that with PostgreSQL "there's all these extensions to fill in gaps, but they're not supported". Therefore a pre-built and supported package of the core product together with important extensions is useful.
Is it a fork? "It isn't a fork. We do not believe in forking any code," Yonkovit told The Reg.
The distinction can be a fine one. In the case of MySQL, Percona's build is based on the official community version, but with fixes and patches to fix bugs or performance issues. "We contribute those back to Oracle to fix upstream, and a lot of times it takes six months, a year, sometimes longer to get these bugs fixed in the community version," Yonkovit said. "A lot of enhancements end up in MySQL Enterprise version. They don't have an incentive to include those in Community. So they put them in their Enterprise edition which is locked away from most of the community."
PostgreSQL is different since "it is owned by the community". Yonkovit believes that any fixes will therefore appear upstream much earlier. "There isn't a disincentive to include things."
Percona is also launching version two of its monitoring and management tool. PMM2 adds support for PostgreSQL query tuning and is more secure, with all traffic between client and server now encrypted with TLS. A new API opens up PMM for scripting and interaction with third-party tools.
The Percona business model is based on support and consultancy and the company promises [PDF] that "there is no fee or commercial license requirement for downloading and using any Percona software".
The company has released statistics from its own State of Open Source Databases survey, based on data from around 800 respondents at small, medium-sized and large business – but skewed somewhat towards Percona users. According to this survey, 46 per cent use PostgreSQL in some measure, tilted towards the smaller companies, making it the second most popular after MySQL, which has around 92 per cent share.
"PostgreSQL is the fastest growing database," said Yonkovit. "What's really captured people lately is this move off proprietary databases, especially Oracle. PostregSQL has a very Oracle-like experience. It is not a 1-1 match, but far superior to what you get from MySQL."
Another factor is the increasing demand for Kubernetes support. Around 25 per cent of those surveyed have Kubernetes (K8s) database deployments in development, but only 13 per cent are in production. Yonkovit said that Percona doesn't have "an operator yet for PostreSQL for K8s" but is working towards one, though this may use Citus, another solution for distributed PostgreSQL, rather than Patroni.
"We're getting a large demand from our enterprise space for additional K8s support," said Yonkovit. "Companies are looking at the cloud as the new vendor lock-in, so ways to deploy cross-cloud or hybrid with a consistent environment. K8s plays to the manageability and the portability."
Use of open-source database technology is increasing, according to a report to be presented at Percona Live, with 79.4 per cent of respondents motivated by cost savings, and 62 per cent fleeing vendor lock-in.
Finally, Yonkovit was keen to comment on the efforts of open-source businesses to use new licences that better protect their interests – such as MongoDB's Server Side Public License. MongoDB argues that "it is too easy for large cloud vendors to capture all the value but contribute nothing back to the community". Similar issues have been raised by Redis and others.
"Based on our survey, people are two-and-a-half times more likely to choose a more open license, than one of these new licenses," said Yonkovit. "Restricting the open source makes it less open. How will the user base respond?"
How then do they prevent large cloud vendors from in effect exploiting the open-source community? "Our philosophy is that having a larger ecosystem is best for everyone," said Yonkovit. "Other companies are looking at it as a threat to their subscription. People jump into the open-source space as a business model that will make money. But open source really isn't a business model. It's a method to build your applications." ®