or is it only possible through add-ons/forks

  • towerful@programming.dev
    link
    fedilink
    arrow-up
    4
    ·
    1 year ago

    Considering clusters need a load balancer in front of them, I’m going to say only through add-ons.

    You can shard a table on the same server (it’s called partitioning).
    Not something I have done, haven’t needed to yet.

    Beyond that, it’s pgcat I believe, in which query sharding is still experimental.

    HAProxy and PGBouncer can do load balancing for reads, but ultimately the cluster is single main for writes.
    Supabases Supavisor is another beta release option for postgres connection routing, but it is VERY early in development. I think they are dog-fooding it tho. Certainly one I am keeping an eye on!

    However, that is my limited experience opinion.
    Happy to be told otherwise, hopefully I start a discussion!

    • Bappity@lemmy.worldOP
      link
      fedilink
      arrow-up
      3
      ·
      1 year ago

      thank you! I’m too tired to contribute to a discussion right now 😅

      been experimenting with postgres to hopefully move to it eventually.

      I use mariadb at the moment and they’ve been releasing pretty unreliable updates in recent years. Galera was nice with it, but had way too many issues.

      • neil@programming.dev
        link
        fedilink
        arrow-up
        4
        ·
        1 year ago

        If you’re looking for a mysql/maria drop-in replacement, then you may also want to look at tidb

        postgres can do it, but it’s kind of presented as lego blocks for a HA cluster and often requires making your own tooling if you want sophisticated features like placement index instances and rebalancing

        • Bappity@lemmy.worldOP
          link
          fedilink
          arrow-up
          2
          ·
          edit-2
          1 year ago

          query optimization and the similar structure to SQL server with schemas pulls me towards postgres, got another system using SQL server with upwards of millions of records and need it to be fast and reliable

      • towerful@programming.dev
        link
        fedilink
        arrow-up
        3
        ·
        1 year ago

        I’ve been recently introduced to postgres from using supabase (I want a nice API and real-time database functionality, similar to firebase).
        And I am more and more impressed at what postgres can do. It feels like cheating!

        However, clustering and high availability is something I am working on learning. Certainly, it’s more of a DB Admin type responsibility that I have ever dealt with (which is why I used to use firebase!)