.NET Architecture & System Design Interview Question #170

What are common database models for multi-tenant SaaS?

Security Architecture, Multi-Tenancy & Disaster Recovery Senior Advanced

Quick Interview Answer

Common models include a shared database with shared tables and TenantId, a shared database with separate schemas, and a separate database per tenant. Hybrid approaches are also possible.

Detailed Explanation

Common models include a shared database with shared tables and TenantId, a shared database with separate schemas, and a separate database per tenant. Hybrid approaches are also possible.

Shared storage can be cost-efficient but requires strong tenant filtering. Separate databases provide stronger isolation and independent scaling but increase provisioning, migrations, monitoring, and operational overhead.

Code Example

1. Shared DB + TenantId
2. Shared DB + schemas
3. Database per tenant
4. Hybrid by tenant tier/size