Re: Best practices for preparing an application to (possibly) be sharded (FDW) in the future? - Mailing list pgsql-novice

From Jean Baro
Subject Re: Best practices for preparing an application to (possibly) be sharded (FDW) in the future?
Date
Msg-id CA+fQee=OnGgiC4aOG_mRx1pao7+Q94_8-w7-KD003h9-XsXVnA@mail.gmail.com
Whole thread Raw
In response to Re: Best practices for preparing an application to (possibly) be sharded (FDW) in the future?  (Bruce Momjian <bruce@momjian.us>)
Responses Re: Best practices for preparing an application to (possibly) be sharded (FDW) in the future?  (Bruce Momjian <bruce@momjian.us>)
List pgsql-novice
Thanks Bruce.

I like this approach. 

PG is great!!

Em sex., 11 de fev. de 2022 17:19, Bruce Momjian <bruce@momjian.us> escreveu:
On Fri, Feb 11, 2022 at 03:56:03PM -0300, Jean Baro wrote:
> Hi there,
>
> Just out of curiosity, is there anything that we (as developers) can do on our
> code to (all together):
>
> - Have maximum performance while running on a single PG 14.1 database (HA)
> (Google Cloud SQL);
> - Be prepared (if needed in the future) to migrate the database to a sharding
> solution (FDW) once the microservice exceeds the capability of a single machine

Good question.  I think it is generally agreed that sharding would
involve using partitions that point to foreign tables on other servers
using foreign data wrappers.   I have a talk here about it:

        https://momjian.us/main/writings/pgsql/sharding.pdf

So, if you are using partitioning, you are probably ready.  In fact,
with PG 14, you can do read-only sharding in parallel for large data
volumes.

> - Don't make the code (that access PG database) to be much more complicated
> compared to one running on a SINGLE Database (ho sharding)

The clients don't know now they are using partitioning, so my guess is
that they wouldn't know they are using sharding either.

> - No need to change the application's code when (and if) the database needs to
> be sharded in the future (FDW built-in approach).

Right, we never required changes for partitioning either.

--
  Bruce Momjian  <bruce@momjian.us>        https://momjian.us
  EDB                                      https://enterprisedb.com

  If only the physical world exists, free will is an illusion.

pgsql-novice by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Best practices for preparing an application to (possibly) be sharded (FDW) in the future?
Next
From: Bruce Momjian
Date:
Subject: Re: Best practices for preparing an application to (possibly) be sharded (FDW) in the future?