April 07, 2023

What is the best managed postgres database

I researched various sources including Reddit discussions in r/PostgreSQL, r/aws, and web articles from prisma.io and capterra.com. There was a mix of opinions and recommendations in these sources, with some consensus on certain managed PostgreSQL providers. The sources were mostly related to the original query, although some discussions focused on specific use cases or regional restrictions. Given the variety of opinions and use cases, I am moderately uncertain about the best managed PostgreSQL database.

Have an opinion? Send us proposed edits/additions and we may incorporate them into this article with credit.

Words

417

Time

1m 48s

Contributors

124

Words read

12.6k

Amazon RDS and Aurora

Amazon RDS and Aurora are popular managed PostgreSQL options. Many users find RDS to be expensive but appreciate its built-in features and ease of backup and restore. AWS Aurora PostgreSQL serverless is appealing from a cost perspective, especially when scaling down in test/staging environments. Aurora PostgreSQL is fully open-source PostgreSQL compatible, and its performance upgrades are noticeable after upgrading to PostgreSQL 12.
Azure

Azure

Azure offers a managed Citus cluster option that Microsoft has scaled to petabyte sizes. One user who tested and compared several managed PostgreSQL solutions found that both Azure and AWS are really good managed offerings, and the choice may come down to the specifics of the use case. Another user completed a proof of concept for migrating from AWS to Azure and ended up staying with AWS due to network connectivity and latency issues with Azure.
DigitalOcean Managed Databases
Google Cloud SQL

EnterpriseDB and Crunchy Data

EnterpriseDB and Crunchy Data are proprietary forks of PostgreSQL and have to catch up with PostgreSQL features. Some users consider EnterpriseDB's solution better than RDS. Crunchy Bridge is a relatively new option worth considering. Crunchy Data's Postgres Operator is open source and helpful for Kubernetes/OpenShift.

Jump to top

Research

Source: "Any thoughts on Enterprise DB PostgreSQL solution?" (from reddit, r/PostgreSQL)

  • Reddit post: “Any thoughts on Enterprise DB PostgreSQL solution?” in r/PostgreSQL.
    • User is currently running PostgreSQL on EC2 instances in AWS for their production database.
    • Considering either migrating to RDS or using EnterpriseDB’s solution.
      • User states that EnterpriseDB’s solution looks better than RDS.
    • One user notes that RDS is expensive, and another user likes RDS for its built-in features and ease of backup and restore.
    • One user suggests that Crunchy Bridge is a relatively new option to consider.
    • One user asks about what EDB has that RDS doesn’t, noting that some top PostgreSQL experts now work for AWS.
      • Another user clarifies that OpenSCG (founded by previous EDB employees, including some who wrote Oracle compatibility) largely works for AWS and is the largest employer of PostgreSQL committers, including top experts.

Source: "Best PostgreSQL hosting provider?" (from reddit, r/PostgreSQL)

  • Best PostgreSQL hosting options:
    • AWS RDS
    • Google Cloud SQL
    • DigitalOcean Managed Databases
    • Amazon Aurora
    • CitusData
    • Database Labs
  • Some services limit important extensions like timescaledb, pipelinedb, and tg_bgm.
  • If collocating with an app, host the DB with the same provider as the app for best performance.
  • Self-hosting can be cheaper but requires more set up and maintenance time.

Source: "Azure or AWS which one is better and why for Po..." (from reddit, r/PostgreSQL)

  • Both Azure and AWS offer really good managed offerings for PostgreSQL databases
    • Azure offers a managed Citus cluster option that Microsoft has scaled to petabyte sizes
    • AWS Aurora PostgreSQL serverless looks appealing from a cost perspective, particularly scaling down in test/staging environments
    • It probably comes down to the specifics of your use case
  • A reddit user recently tested and compared a lot of managed solutions for PostgreSQL databases: https://medium.com/@gajus/lessons-learned-scaling-postgresql-database-to-1-2bn-records-month-edc5449b3067
  • AWS RDS now has the ability to dynamically scale storage based upon consumption up to 64TB, making it even more hands-off than before when it comes to database management
  • A reddit user recently provided feedback on Azure PostgreSQL service: https://www.reddit.com/r/PostgreSQL/comments/djojaw/azure_postgresql_service_feedback_gotchas_issues/
  • One reddit user completed a POC for migrating from AWS to Azure and ended up sticking with AWS because of network connectivity and latency issues, even with internal SQL endpoints enabled

Source: "Aurora now supports PostgreSQL 12" (from reddit, r/aws)

  • URL: https://aws.amazon.com/about-aws/whats-new/2021/01/amazon-aurora-supports-postgresql-12/
    • Aurora now supports PostgreSQL 12
      • Performance upgrades are noticeable after upgrading to PostgreSQL 12
      • Upgrading pg version is smooth and CloudFormation has finally gotten its act together for Aurora upgrades
      • No issues reported after upgrading
      • Aurora customers love the Global database feature, 15 read replicas, and Aurora Serverless which lets you scale up your compute capacity instantly in seconds saving cost by not having to provision for peak
      • Aurora PostgreSQL is fully open source PostgreSQL compatible
      • Aurora PM confirmed that pg_cron support is being worked on
  • None

Source: "Amazon Aurora vs PostgreSQL - Capterra" (from web, www.capterra.com)

  • None

💭  Looking into

What are the benefits and drawbacks of self-hosting a PostgreSQL Database?

💭  Looking into

Are there any free, open-source PostgreSQL-compatible databases?

💭  Looking into

What are the features of the PostgreSQL license?

💭  Looking into

What is the Postgres Operator?

💭  Looking into

What are the main differences between EnterpriseDB and standard PostgreSQL?

💭  Looking into

What security features are available in Aurora?

💭  Looking into

What advantages does Amazon RDS PostgreSQL offer over other managed Postgres databases?

Source: "5 ways to host PostgreSQL databases - Prisma's ..." (from web, www.prisma.io)

  • Ways to host PostgreSQL databases
    • Self-Managed PostgreSQL
      • Installing on a local development computer
        • Costs nothing
        • Good for local development
        • Low performance
        • Low scalability
        • Low management complexity
        • Does not require network configuration
      • Installing on a separate server
        • Highly flexible
        • Hardware specification under user control
        • High potential for scalability and performance
        • High management complexity
        • Must manage security of PostgreSQL instance and data it holds
      • PostgreSQL with Docker
        • Running as a container
        • Useful for development and staging
        • Medium-High performance
        • High Scalability
        • Medium-High management complexity
    • Managed services ( Databases managed by cloud providers)
      • Highly scalable
      • Low management complexity
      • Postgres databases finely-tuned to run in data center
      • Offered by cloud providers
      • Configurable databases for access and scaling options
      • Can configure to be connectable from the internet
      • Cost varies widely based on usage
      • Easy to scale dynamically and flexibly
      • Can fine-tune performance settings and resource allocation
    • Third-party managed databases
      • Offered by third-party providers
      • Requires research before choosing
      • Non-cloud solutions
  • Benefits and drawbacks of different options
    • Self-hosting
      • Most flexible
      • Simplest to describe
      • Requires the most hands-on management
      • Provides the most control over runtime database environment, configuration, and architecture topology
      • Can be incredibly efficient, powerful, and flexible
    • Managed services
      • Most scalable solution
      • Low management complexity or no management requirements
      • Often more expensive than self-managing
      • User has limited control due to provider being responsible for the majority of the management burden.
      • Flexibility and options can be limited by provider
    • Third-Party Managed Databases
      • Requirements are unique - will require research and possibly a trial
      • Can provide a customizable solution for a specific business requirement
  • Cloud providers offering managed PostgreSQL databases
    • Amazon AWS
    • Google Cloud
    • Microsoft Azure
    • DigitalOcean
    • Heroku
    • IBM
    • Render
  • Additional notes
    • When managing PostgreSQL by yourself, security is your responsibility
    • Scaling has the same advantages and limitations as performance tuning
    • Additional security considerations and potential for troubleshooting issues with containerization None.

Source: "Best way to deploy your PostgresQL database for..." (from reddit, r/PostgreSQL)

  • The original poster is looking for a way to deploy their PostgreSQL database for a small project shared between 2 people, and mentions having around 10GB of data max. They are wary of using the command line but are looking for solutions.

    • One Reddit user suggests using digitalocean’s hosted database service for this use case, which is user-friendly and can automate cloud backups.

      • DO’s services are considered to be simpler and easier to understand than AWS.

      • DO doesn’t support arbitrary/user-provided extensions but does support most of the major ones.

    • Another Reddit user suggests using EC2+Linux+PostgreSQL+SSL+Firewall/VPN for handling this project, but it is not easy to set up unless you know what you are doing. You can also use RDS PostgreSQL to eliminate some of the setup work but will still require SSL+VPN.

    • For other solutions, some Reddit users suggest using hosted cloud PostgreSQL instances already set up, such as digitalocean, elephantsql, AWS Aurora, Google Cloud SQL, and Azure, but these options are considered more expensive than setting up your own VPS.

      • Some users believe AWS Aurora would be too costly for this project, while others suggest that it may be worth looking into as it has PostgreSQL compatibility and can run PostGIS extension.

      • Another user suggests using the cheapest way of SSH to a network.

    • One user suggests running pgadmin4 on localhost and sharing via ngrok, while another user suggests using AWS RDS or DO as a managed service but doing this is much more expensive for small projects.

  • The original poster made an error initially quoting half TB for a small project.

  • The Reddit users offer various solutions, including hosting and self-managed options, for deploying a PostgresQL database on a small project shared between 2 people with 10GB of data.

Source: "Questions about which Postgres to use?" (from reddit, r/PostgreSQL)

  • Recommendations on Managed Postgres Databases:
    • RH provides standard “community” PostgreSQL
    • Managed installations (like Amazon RDS PostgreSQL or Aurora) are not really PostgreSQL
    • Consider learning that things can be done differently and go with free PostgreSQL
    • EnterpriseDB and/or Crunchy are proprietary forks of PostgreSQL and have to catch-up with PostgreSQL features
    • Crunchy Data’s Postgres Operator is open source and helpful for Kubernetes/OpenShift
    • Postgresql license is free and open source, under a very permissive license
  • Questions Companies Should Be Asking
    • What are some of the main questions we should be asking if my company wants to start using Postgres?
    • Should we be looking at licensing Postgres from companies like EnterpriseDB or Crunchy Data for stable support, or should we be looking at Postgres from Microsoft and Amazon for stable support?
    • All of these companies have their variation of Postgres
  • Advice on Choosing a Managed Postgres Provider
    • It really depends on what level you want to use Postgres and whether you want to use the service as a self-hosted installation or as a paid-supported managed service
    • Managed services have to introduce their own modifications to shield you from accessing or modifying too much
    • When you get a managed PostgreSQL instance, you miss out on a lot of the features.
    • Most providers don’t offer timely updates and support quite old versions, and extensions are scarce.
  • Other useful information
    • PostgreSQL is created in a way that is meant for you to just install it as a superuser and provide access to whoever you want.
    • The plan is to keep all the large databases on Oracle and the smaller ones on Postgres

Source: "Best EU-based managed postgres?" (from reddit, r/PostgreSQL)

  • According to a reddit user, the best EU-based managed Postgres provider (that doesn’t break the bank) with reasonable uptime is hard to find.
    • This is because of EU data protection laws which prohibit using US-based managed dbs that can transfer data to outside EU regions into US regions, and that adhere to non-EU legislation that is less strict in terms of privacy and data protection.
  • One user suggested AWS Aurora, which can be quite affordable.
    • However, some users expressed concerns about the Cloud Act, which mandates US-based cloud service providers to hand over data to US security agencies, potentially breaching privacy regulations.
  • Other suggested providers include:
    • Aiven.io
    • EDIS
    • ElephantSQL
    • Scaleway
  • Some users mentioned the availability of free, open-source products such as cloudnative-pg and YugabyteDB that are close PostgreSQL-compatible and horizontally scalable.
  • One startup, Seaplane, offers a managed global PostgreSQL DB that allows one to geo-fence their data across multiple regions and clouds.
  • Heroku Postgres is US-based but offers an EU regional data center that doesn’t transfer data out of the EU unless backup or data clip functions are utilized.
  • Digital Ocean is affordable but US-based, which might not be allowed according to Dutch law.
  • Azure by Microsoft Ireland might be one potential alternative path forward since it adheres to the EU and GDPR.

Source: "Whats the good and affordable managed postgres ..." (from web, www.reddit.com)

None

💭  Looking into

What is the best managed PostgreSQL database?