Re: Database Scalability - Mailing list pgsql-general

From Saurav Sarkar
Subject Re: Database Scalability
Date
Msg-id CAP+kwAVz2FhKD7b4Oz_YWdTnTozqpwF2r6+mXNUwK5_fVY_ajg@mail.gmail.com
Whole thread Raw
In response to Re: Database Scalability  (Ben Chobot <bench@silentmedia.com>)
Responses Re: Database Scalability  (Mladen Gogala <gogala.mladen@gmail.com>)
Re: Database Scalability  (Ben Chobot <bench@silentmedia.com>)
List pgsql-general
Hi Ben,

Thanks a lot for your reply.

So are all the schemas on one DB or are distributed/sharded across multiple DBs ?

Best Regards,
Saurav

On Tue, Nov 30, 2021 at 11:43 PM Ben Chobot <bench@silentmedia.com> wrote:
Saurav Sarkar wrote on 11/29/21 10:13 PM:
Hi All,

We have some multi-tenant solutions which are separating the tenant data in Postgresql mainly in the following manner. 

1. Using different schemas
2. Using different tables for different tenants.

Without more details it's impossible to give you a detailed answer, so, in general.... if you are breaking out your client data by schema, you will likely be fine. We have used this method with great success to scale our customer workload - each customer gets their own schema, which we can then rebalance between databases as those clients drive more load over time. For those tables that we want partitioned, we simply partition them in every schema. That's arguably inefficient but we find the schema consistency to be an overall win.

(For context, when I say we have used this method with great success, we have over 13k customers, almost a PB of data, peak around 1.5M iops, and it's all painless to operate.)

pgsql-general by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: Wildcarding json keys in json query
Next
From: Mladen Gogala
Date:
Subject: Re: Database Scalability