For decades, a relational database has lived at the heart of almost every enterprise as one of the most critical and fundamental components in information technology. A relational database accurately stores and retrieves the world’s most important information, such as bank accounts, health records, financial data, sales information, and more.
However, relational databases like MySQL and Postgres were built well before the data explosion brought on by the consumer internet and Web 2.0 companies such as YouTube, Google, Amazon, and others. As the amount of data created, stored, and consumed by the world has grown exponentially larger, the limitations of standard relational databases like MySQL became impossible to ignore. Quite simply, as data needs increase, there is a corresponding requirement to invent new and innovative ways of scaling the underlying database.
The challenge of increasing capacity and performance, while at the same time preserving the transactional characteristics of the database, has proven to be one of the more difficult problems in computer science—and one of the most expensive budget areas for many businesses.
These challenges, particularly for Web 2.0 companies and the generations of startups that followed them, led to the rise of non-relational databases, often called NoSQL. The community behind NoSQL databases realized that managing relational databases at massive scale was a pain. In particular, the operational overhead that internal developer teams had to maintain in order to manage all of this complexity could be incredibly overwhelming and expensive. As part of many NoSQL databases, tools were built to handle some of these relational database problems like sharding, replication, data migrations, adding or removing nodes, and so on.
Because NoSQL databases have been ahead of relational DBs on the operational side, many enterprises have been tempted to relax the power of a relational database for the operational wins that can come with NoSQL. For example, CTOs might consider trading full SQL support and features for the relative simplicity of schema-less design and horizontal scaling to clusters of machines.
Fundamentally, though, no solution has combined the true power of battle-tested relational databases with the reduced operational overhead of NoSQL solutions, without being beholden to services from cloud provider. This last point is often a non-starter for many enterprises like big banks, global e-commerce and consumer players, and others.
The holy grail of relational database design, therefore, requires transactional correctness, horizontal scale, and full use of existing data and robust features of the MySQL ecosystem. And that’s exactly what PlanetScale does.
PlanetScale is built on an open source system called Vitess, which originated at YouTube in 2010 to help it scale its MySQL databases. Vitess lives as middleware and enables the horizontal scaling of existing MySQL databases. After working on and seeing Vitess be used and vetted for over a decade serving billions of users, the original developers of Vitess, Jiten Vaidya and Sugu Sougoumarane, decided to start PlanetScale to bring the power of Vitess into more companies, from startups to enterprises.
With Vitess and PlanetScale, enterprises can take their existing MySQL database and automatically scale it with zero migration of data, zero change in the application later, and zero reduction of SQL features. Fully transactional, completely scalable, with no changes to the underlying database.
The PlanetScale team has not only solved the vexing transaction/scaling problem, but they’ve also super-charged the decades-old relational database market, bringing the most modern software elements to the platform. For example, PlanetScale allows its customers to:
- Deploy and horizontally scale their existing database to offer it as a service (DbaaS), either on-premise or in the cloud;
- Deploy databases distributed over multiple regions and multiple cloud providers, so they are not locked into one provider or one geography (which is particularly valuable for handling privacy regulations like GDPR); and
- Utilize native Kubernetes support, providing a stateful datastore with Kubernetes.
Ultimately, all of these updates allow their customers to choose a database type and design their data infrastructure based on what their businesses and technologies truly need.
Vitess is used in production to manage business-critical MySQL clusters at top brands like Slack, Square, Pinterest, Hubspot, GitHub, Booking.com, JD.com and many others. As a pre-series A company, PlanetScale has shown remarkable traction by converting many of these brands to paying customers – Slack, GitHub and New Relic among those who have agreed to be named.
I have been waiting for years for such a reliable and practical solution with the right engineering tradeoffs. PlanetScale is that solution. We are honored to be working with Jiten, Sugu and the entire PlanetScale team, and we look forward to watching the world adopt the next generation of database design.
The views expressed here are those of the individual AH Capital Management, L.L.C. (“a16z”) personnel quoted and are not the views of a16z or its affiliates. Certain information contained in here has been obtained from third-party sources, including from portfolio companies of funds managed by a16z. While taken from sources believed to be reliable, a16z has not independently verified such information and makes no representations about the enduring accuracy of the information or its appropriateness for a given situation.
This content is provided for informational purposes only, and should not be relied upon as legal, business, investment, or tax advice. You should consult your own advisers as to those matters. References to any securities or digital assets are for illustrative purposes only, and do not constitute an investment recommendation or offer to provide investment advisory services. Furthermore, this content is not directed at nor intended for use by any investors or prospective investors, and may not under any circumstances be relied upon when making a decision to invest in any fund managed by a16z. (An offering to invest in an a16z fund will be made only by the private placement memorandum, subscription agreement, and other relevant documentation of any such fund and should be read in their entirety.) Any investments or portfolio companies mentioned, referred to, or described are not representative of all investments in vehicles managed by a16z, and there can be no assurance that the investments will be profitable or that other investments made in the future will have similar characteristics or results. A list of investments made by funds managed by Andreessen Horowitz (excluding investments and certain publicly traded cryptocurrencies/ digital assets for which the issuer has not provided permission for a16z to disclose publicly) is available at https://a16z.com/investments/.
Charts and graphs provided within are for informational purposes solely and should not be relied upon when making any investment decision. Past performance is not indicative of future results. The content speaks only as of the date indicated. Any projections, estimates, forecasts, targets, prospects, and/or opinions expressed in these materials are subject to change without notice and may differ or be contrary to opinions expressed by others. Please see https://a16z.com/disclosures for additional important information.