Percona herds the open-source cats

The company’s mission to plug the gaps in open source will face the acid test as it plans to tackle autonomous databases. Percona’s ambitious goal will test whether the community open source model can tackle a problem of such scale.

Why are businesses going open-source? Red Hat answers Red Hat's new survey of enterprise businesses reveals a world where almost everyone has joined the open-source bandwagon. Read more: https://zd.net/2viwrQb

The culture of Percona is very much wrapped up with founder Peter Zaitsev, who was one of Monty Widenius' original colleagues at MySQL. While there were significant defections after the company came under Oracle's ownership, Zaitsev left well before, while the company was still independent. He objected to the company becoming more investor-focused, rather than customer-focused.

But it's easy to get mistaken about what Percona does. We've seen it with small booths at various big data events, and based on the fact that it offers its distribution of MySQL (and other databases), it would be easy to conclude that Percona is just another third party company that does exactly the type of thing that the MongoDBs and the Elastics of the world abhor: making money off a cloud service based on open source IP.

In actuality, Percona is a services company whose purpose is smoothing the rough edges of open source through consulting services that help customers get through the primitive installers or spotty documentation that is often the case with these platforms. And it provides training, consulting and planning services as well.

It's a messy job because Percona is supporting multiple versions of the most popular open-source databases -- and its messaging implies that it might not limit itself to just a few databases. That's a lot of holes and omissions that the company takes on to patch. It's a task akin to herding cats.

While Percona is not a database as a service for MongoDB, MySQL, or MariaDB, or PostgreSQL, it will help customers manage their deployments. And that could be on-premises or in the cloud. That model is arguably closer to that of classic enterprise consulting firms (think Accenture or the old EDS) offering services for managing and running your platforms. So today, Percona is not a DBaaS provider, but we would say never.

Where the confusion comes in is that, yes, Percona does offer some of its distributions of the databases it supports. For instance, it offers its server distribution for MySQL and MongoDB. In both cases, it takes the community version and then adds its own bits to add in the enterprise features, such as security, backup, failover, and so on.

A good example is Percona's own distribution of MySQL Community Edition that it has backfilled with its bug fixes and enterprise features such as enhanced security with binary log (binlog) encryption and data-at-rest encryption. Percona also offers enterprise-feature utilities such as Percona XtraBackup for MySQL 8.0.6, which, in the latest release adds support for the MyRocks storage engine and the ability to save backups to cloud storage such as Amazon S3. Again, these products are 100% open source and freely downloadable from GitHub under permissive licenses; it's the support that customers pay for.

Put another way, Percona's open-source distribution strategy mimics exactly what AWS did for the Amazon Open Distro for Elasticsearch: taking the community version and adding the enterprise bits, all of them open source -- except Percona did it first. Perhaps it's not coincidental that one of the presentations we caught at the Percona Live conference in Austin this week was from AWS, detailing its new open-source Elasticsearch service.

Percona engaged with us after one of our recent posts on the open-source midlife crisis. That was the post about our take on all the weird licenses that the MongoDBs, Redises, Confluents, and Elastics of the world issued over the past year, putting question into the "open" of open source.

We believed -- and still do -- that open core offers the clearest path for open source companies to balance keeping their communities whole but still preserving some unique value-added IP. No, it's not a perfect solution, and the folks at Percona disagreed with us -- they believe that the 100% open source model makes the most sense. But then again, Percona's business model is based on selling services and support, not software.

At the conference, Percona announced the start of a new strategy to further automate database operation that uses the charged term "autonomous." The Percona Cloud-Native Autonomous Database initiative, for now, focuses on automation, not autonomy, and heavily leverages Kubernetes.

This will be an ongoing story. It starts with the Kubernetes Operator for XtraDB Cluster and for Percona Server for MongoDB, which provide OpenShift-certified configurations of its MongoDB server and cluster offerings. These operators apply the automation that Kubernetes can provide for deploying, maintaining, and decommissioning clusters. But at this point, this is not an autonomous, self-running operation in the same sense of Oracle Autonomous Database services that run in the Oracle Public Cloud. But it could become the first step.

As Oracle's experience revealed, you don't get to an autonomous database overnight. It starts with automation -- in Oracle's case, it was the steady rollout of roughly a couple dozen tools over the past decade, dating back to the Oracle 9i generation. For Percona, it starts with the Kubernetes operators.

So far so good. But Percona will need operational data to realize its autonomous ambitions. Lots of it. Percona offers management tools for the servers it supports, but those tools are deployed individually; they are not cloud-based services. We asked Percona about that, and they told us that their customers pushed back against the idea of cloud-based monitoring or system introspection tool. Customers were understandably keen on the idea of local deployment and control, and leery about letting their systems data outside, even if anonymized.

We believe the idea of applying machine learning to optimize database operation is a no brainer, although getting there will be anything but. We expect that others will (and in the case of cloud providers, already are) follow in Oracle's footsteps to taking these steps.

If Percona wants to get serious about autonomous databases, it will need operational data and lots of it. And there's only one source for all that: its customers. That's where Percona needs to leverage the trust it has so carefully aimed at cultivating. And, given the open-source community's tradition of encouraging participation from the customer base, it would be an opportunity to democratize all this and make customers part of the autonomous optimization development project.