PostgreSQL DBaaS vendor comparison and calculator
barnabas.me
barnabas.me
We're a small team without a dedicated DBA at this point, so outsourcing management of our database infrastructure was a no brainer. I was more keen on managed vanilla PostgreSQL than something like Aurora (where the implementation could stray enough from the origin that it would more difficult to migrate away should we have the need).
If you’re using standard Postgres and reading the standard Postgres documentation, how would you even know about any Amazon extensions?
Does DO give you data storage across three availability zones? Point in time backups? Autoscaling synchronous read replicas?
Having done many migrations between technologies over the years, I think it's prudent to have some level of skepticism when it comes to "forked but compatible" systems. I don't consider proprietary lock in to be a boogeyman. That's not to say all proprietary technologies are bad (they're not! We use them mix of proprietary and open tech) but having an escape hatch is one of our criteria for adopting closed tech. Especially cloud services where prices aren't fixed and are subject to future increase.
It’s possible your error budget accounts for this potential difference, the parents error budget seems to have no room for the possibility of edge case bugs/divergence in the implementation of their database of choice.
I don’t know of one large enterprise that you could go to and say we want to use Digital Ocean.
I would be more interested in a comparison of security features, backup infrastructure, replication tooling, failover procedures, version upgrades, etc.
I'm trying to keep the comparison apples-to-apples, and I believe only their dedicated instances ($50 and up) provide the PostGIS extension. That's kind of a requirement for the projects I'm interested in, and it seems like a strange omission.
https://www.elephantsql.com/docs/faq.html#postGIS
Edit: just added ElephantSQL, the update should be out in a few minutes.
Not affiliated in any way. Just a happy customer.
Oddly seems missing from their PostgreSQL offering though, which is also several versions behind.
https://issuetracker.google.com/issues/71565188#comment73 mentions Aiven, which looks good to me..
To illustrate my comment, I like the Google Cloud ecosystem, but Google Cloud SQL doesn't support PostgreSQL 10 and 11, and when using a single node, there is a downtime during automatic updates. DigitalOcean Managed Databases are more recent but, according to their documentation, these "issues" are solved.
There are a lot of factors that impact how you select a cloud provider, but database offerings are always very high on the list.
Amazon clearly gets it. Digital Ocean became legitimate when they added one finally.
Google had other offerings in the DB space that are compelling but their PG offering needs a lot of work.
I was really hoping they would be the company that purchased Citus.
Difference is that minimum price on DO is $480 per month. I pay 30 euros, and some more for backup storage.
For larger projects I usually run Amazon RDS and don’t worry too much about backups.
How can we easily know what is the optimal number of CPU core and Memory needed to achieve X Transaction per seconds ?
I know benefit of memory depend on cache hit rate, or how large is your working set. But assuming 100% cache hit rate how many core do you really need ?
I gave a talk on this subject at PostgresConf NYC a couple weeks ago, my slides are here: https://postgresconf.org/conferences/2019/program/proposals/...
I'll follow up with a blog post in the near future.
disclosure: I work @ IBM.
I really just want a no-brainer solution that horizontally and vertically scales whenever needed.
Does anyone have any real world experience with this, in comparison to these more traditional DBaaS offerings? Not sure if it’s a practical contender at a smaller scale.
Or if you need HA use Kubernetes and deploy the Stolon helm chart.
Sometimes—if you have the skill, knowledge, and resources—it will make sense to run your own HA database cluster, with a good backup system, automatic failover, and all the rest of the nice things you want. Other times, it would be more expensive and less reliable to set up and maintain that infrastructure versus a third-party service. There is no “one size fits all” solution to this sort of problem.