DigitalOcean has announced their new Managed Databases offering, providing fully hosted and managed database engines. This new service is currently in beta, for which access can now be requested. Currently Managed Databases offers the PostgreSQL engine, with others to come later.
With Managed Databases, DigitalOcean follows in the footsteps of other cloud providers offering managed database services, like Google with Cloud SQL, Microsoft with Azure Database, and Amazon with their recently announced Managed Databases for Amazon Lightsail. Initially, DigitalOcean will only implement only the PostgreSQL engine. However, DigitalOcean aims to support all the most popular database over time, with MySQL announced as the next supported engine.
Managed database services are gaining support from the community, made apparent when looking at the HackerNews boards around the announcement. Accordingly, many of the comments are around the reasons to choose a managed database platform, which comes down to aspects around how these take away much of the complicated work. For instance, handling backups and restore procedures, or creating a proper functioning, highly available environment, are frequently mentioned as a time-consuming and troublesome task.
It's not about when things are going well... anyone here can setup a DB instance and run against it. It's failover/HA or recovery options that are not considered by most. Not everyone can afford to take a half a day or more to setup for backups, or read mirrors, or failover, other clustering options. Not to mention actual recovery modes.
The prevailing sentiment in the thread comes down to taking away the complexity while gaining security and usage of best practices, without the need to have this expertise for oneself. Subsequently, as databases are often at the base of a solution, possibly containing sensitive or confidential data, this abstraction represents one of the significant advantages of using these types of managed services.
The real benefit to having someone else manage your DB is that it eliminates the "unknown unknowns." I don't want to spend the requisite time becoming an expert DB sysadmin--I'd rather let someone else do it so that I can sleep at night. Also, databases are in a different category of risk. Misconfigure an nginx config? No big deal, fix it and move on. Set up your database incorrectly, resulting in data loss down the road? Could be game over.
Consequently, this new service from DigitalOcean incorporates abstracts various of these tasks from the user, as found in the announcement.
- Multi-node database clustering
- Automated failover support
- Daily backups with Point in Time
- Recovery (7 days)
- Horizontal read scaling
- Data encrypted on disk & network
- Performance graphs (per minute)
- Multiple logical databases per cluster
- Database cluster forks
- Connection pooling
- One-click upgrades to new versions
- Seamless switching of plans & regions
- All Regions except AMS2, NYC2, SFO1 and SGP1
Their managed database offering is the latest in DigitalOcean's cloud platform, which includes other common services like virtual machines, storage, Kubernetes, and infrastructure, with which they aim to compete with cloud providers like Heroku, Amazon Web Services, and Microsoft Azure.