How would you isolate tenant data in a multi-tenant SaaS Postgres app?
PICTURE THIS: A SENTENCE BECOMES TOKENS
The model does not read letters like humans. It reads these pieces, then predicts the next one.
Simple meaning
The common product approach is a tenant_id on every table plus a mandatory WHERE and a composite primary key, enforced in code and in RLS policies.
WHY — SQL instead of guessing?
Why interviewers care about SQL:
question about SQL.
trade-offs, and what you would actually do on a Backend project - not buzzwords.
Name the idea, why it exists, then one short example.
End with when you use it and one common pitfall.
STEPS — What happens with tokens?
Before the model can read a sentence, it goes through these steps:
- 1The common product approach
is a tenant_id on every table plus a mandatory WHERE and a composite primary key, enforced in code and in RLS policies.
- 2Separate schemas or databases
isolate noisy neighbors at higher cost.
- 3Never trust a client-supplied
tenant id without binding it from the auth token.
- 4Context mix
Attention looks at nearby tokens together.
- 5Next token
The model scores what should come next.
- 6Decode
IDs turn back into readable text.
EXAMPLE — See it in action
Let's see how a real sentence is tokenized (tokens may vary by model):
Note: Actual tokens and IDs depend on the tokenizer (e.g., GPT, Llama, etc.).
Key takeaway
The common product approach is a tenant_id on every table plus a mandatory WHERE and a composite primary key, enforced in code and in RLS policies. Separate schemas or databases isolate noisy neighbors at higher cost.