RethinkDB may have failed as a business, but it’s getting new life as part of the Linux Foundation. As announced today, the Cloud Native Computing Foundation (CNCF) has purchased the RethinkDB intellectual property assets for $25,000, which it has relicensed under the developer-friendly Apache License (ASLv2) and gifted the code to the Linux Foundation.
It’s an intriguing development and possibly an out for other failed startups with interesting software assets, although “it’s unlikely that another deal along these lines would emerge” given the “highly unusual set of circumstances,” as CNCF Executive Director Dan Kohn told me.
Even so, it’s a bit of a puzzle: Why would a foundation centered on Google’s container orchestration project, Kubernetes, purchase a web-centric database—no matter how low the cost? Could this be the start of a full suite of cloud-centric technologies from CNCF? Perhaps. But first, let’s look at how RethinkDB got to this point.
Losing to MongoDB
Despite $12.2 million in investment, eight years of development, 200,000 users, and a community of 900-plus contributors that turned RethinkDB into one of the largest projects on GitHub (more than 17,000 stars), RethinkDB Inc. couldn’t turn the database into a viable business and recently shut down.
RethinkDB sought to reimagine databases, but never really got its vision off the ground. Although it eventually cracked the top 50 databases in terms of popularity, as measured by DB-Engines, it has stalled over the last year at No. 46, even as Microsoft Azure DocumentDB, Amazon Aurora, Apache Cassandra, and even the venerable PostgreSQL kept climbing.
But it was MongoDB, more than any other, that RethinkDB sought to displace—without success.
This is surprising, according to RethinkDB cofounder Slava Akhmechet’s reasoning, given RethinkDB’s superior “correctness, simplicity, and consistency.” However, he goes on to note, “Ultimately these weren’t the metrics of goodness that mattered to most users.”
Not surprising, former MongoDB executive Kelly Stirman offers a more strident critique: “RethinkDB was fixing a problem nobody cared about.” It was, Stirman continued, “a luxury product” that “wasn’t a drop-in replacement for anything.”
Yet that isn’t the whole story.
A license that killed
As Bryan Cantrill, Joyent CTO and a member of the CNCF Technical Oversight Committee, told me in an interview, “RethinkDB’s scale-out architecture coupled with its Jepsen-caliber robustness make it a very attractive foundation for a cloud database service.” Unfortunately, “these are exactly the use-cases that were most adversely affected by the AGPL.” In other words, RethinkDB had the exact wrong license to embrace the cloudy future.
It also lacked the resources. Funding of $12.2 million sounds big until you realize that companies like MongoDB have raised hundreds of millions more and still struggle to compete with database-as-a-service giants like Microsoft and Amazon. Akhmechet writes of the challenge: “This [cloud database as a service] business is very challenging, partly because DBaaS companies have to compete with the giants (such as DynamoDB and DocumentDB), and partly because customers are very resistant to completely hand off data management to a startup when there are so many other substitutes and alternatives.”
Here, however, is exactly where a foundation-led approach could take off. I asked Cantrill whether the shift from the AGPLv3 license to the ASLv2 would be enough to revive RethinkDB’s fortunes. In his opinion, “While we won’t speculate on the role of the AGPL as to the demise of RethinkDB, it was quite clear that the license (coupled with the murky ownership) presented overwhelming headwind for the project.”
More to the point on cloud, he continues, “Part of what the CNCF has done here [in purchasing the code and relicensing it as ASLv2] is to allow these [cloud] use cases to now be considered.”
A brighter future?
RethinkDB is almost certainly a more attractive target for community contributions now that it’s unfettered from a solo corporate benefactor. As I’ve written, Kubernetes and other projects have been blessed by a vibrant, distributed community, which is easier under a strong foundation like the Linux Foundation or CNCF and harder when an individual company controls the code (even if disguised as a foundation effort).
This is certainly the hope Kohn expressed to me: “The Linux Foundation will offer support and infrastructure to help the RethinkDB project build a long-term community effort.” Even so, Kohn rightly reasons that RethinkDB’s future success isn’t guaranteed by its new owner: “It is up to the RethinkDB community to make itself relevant; the Linux Foundation and the CNCF have merely given them the freedom to do so.” Part of that freedom is the new, developer-friendly license.
As the RethinkDB community looks to Version 2.5, Mike Glukhovsky, who helps run developer relations at Stripe and co-founded RethinkDB in 2009, gave me a peek at the road ahead: “Making the code more accessible to new contributors is a high priority. That will involve refactoring to remove technical debt and legacy code or features. The 2.5 release could potentially introduce some performance improvements that boost hard-durability writes.”
This is the day-to-day slog necessary to make a better database. The new license, however, coupled with a true community effort, may make RethinkDB a better option for new contributors, a new cloudy approach, and enterprise confidence in the Linux Foundation brand to turn it into a long-term option, much like Linux, Node.js, Cloud Foundry, and more.
A new sort of foundation
That’s the database. But how does RethinkDB’s change of ownership reflect on the CNCF and foundation-led projects in general?
One possible implication, though Kohn seemed to dismiss the idea (see above), is that foundations could become a promising alternative to end-of-lifing a project. Just because RethinkDB (and other projects) couldn’t make it as a business doesn’t mean there isn’t demand for the software. By CNCF picking up the code, a generation of projects could find new life outside the pressures of quarterly earnings. That’s a big positive.
After all, as former MySQL executive Zack Urlocker once told me, “Open source is hard.” Anything that makes it easier is welcome.
As for the CNCF itself, the addition of RethinkDB to its portfolio marks a significant departure. The CNCF is one of two foundations, along with the Open Container Initiative, widely considered to be setting the stage for our container-based future. The acquisition of RethinkDB signals that the CNCF considers “cloud native” to have a broader meaning. How broad might that be? The CNCF isn’t telling, so we’ll have to watch this space.