SaaS applications
7/23/2024 – Piuesh Jain 1
Training
Multi -Tenancy
Tenancy in SaaS applications
7/23/2024 – Piuesh Jain Training 2
Same or separate H/W
Build a new and unique data
center for every new tenant
On-premise
deployments
Allocation of a new production infrastructure similar to the existing one but
properly sized in terms of database and front-ends to accommodate the
tenant(s) to migrate.
Share same development and acceptance environments - Do not create different
lines of development:
Shared master
data
Multi Tenancy Architecture
7/23/2024 – Piuesh Jain 3
Implement a “Database
Access Layer” to access
the correct database per
tenant
local DBA must be able to keep track
of changes made to the database
model and run a script on all
production databases before the
deployment.
Highly scalable and
configurable – for different
tenants
Training
Multi Tenancy Architecture(Physical)
7/23/2024 – Piuesh Jain 4
Advantages
• Highest degree of data isolation.
• Lowest number of rows per table: querying speed is near optimal.
Disadvantages
• Maintenance is more complex and time consuming because the data model of
each tenant database needs to be kept synchronized.
• Dependency on DBA support during application development and staging
Training
Multi Tenancy Architecture(Logical)
7/23/2024 – – Piuesh Jain 5
A column with the Tenant ID is added to that table
Advantages
• Decreases infrastructure operation costs.
• Simplifies and speeds up application development because developers don’t have
to write tenant-specific queries
Disadvantages
• Lower degree of data isolation: data from all tenants are in the same table, which
has a column that identifies which tenant that row belongs to.
• A higher number of rows per table. To overcome this potential performance
bottleneck, you should:
• Implement an archiving strategy, making sure relevant data is kept to a
minimum.
• Create a table index by tenant ID
Risk
• Exposing tenant data by mistake.
Training
Tenancy in SaaS applications
7/23/2024 –– Piuesh Jain 6
5. ROW level security
https://docs.microsoft.com/en-us/azure/sql-database/saas-tenancy-app-design-patterns
software-as-a-service
(SaaS)
1. Physical partitioning
Current
2. Single Db Separate schema 3. Single Db shared sche
4. Data is partitioned
based on Tenant ID
Shared master data
Training
“Trends like cloud, mobility and big data
are creating a ‘New Style of IT’ and
transforming what enterprise customers
expect and need from technology.” said
Meg Whitman, president and CEO, HP.
Multi-tenant Architecture
7/23/2024 –– Piuesh Jain 7
• Pros
• Get a minimum viable product there and learn from your users
• Reduced Product maintenance
• Reduced Development (or upgrade) cost
• Reduced Investments
• Cons
• Increased load of development efforts
• Upgrade of the application require each customer to upgrade
• Tenant specific customizations is significantly limited- use tenant management tools
• Data privacy - Customer data resides in the same database.
• One customer may just become big enough that their data warrants their own
instance
(These challenges can be overcome by Data Identification, creation of Database
Architecture and designing a thorough application architecture)
Superpod will allow individual
customers to have a dedicated
instance in the Salesforce
multi-tenant cloud
Training
Key considerations
7/23/2024 – Piuesh Jain 8
• Logical tenants (A single application server and database server provide each customer
with its own separate set of computing resources)
• Data Segregation: The need to segregate data belonging to a single entity (tenant).
• Cross-Tenant Access: The need for a user who is part of a tenant to access data
that belongs to multiple/all tenants.
• Coach development teams not to ever expose multi-tenant tables as single tenants
or call the TenantSwitch action
• Use fake or scrambled data in non-production environments
• Purge mechanisms to minimize the amount of information stored in online tables.
Training
Multi Tenancy Architecture (separate database catalogs for tenant isolation)
7/23/2024 – Piuesh Jain 9
Training
Multi Tenancy Architecture
7/23/2024 – Multi-Tenancy by Piuesh Training 10

Multi_Tenancy_White_Paper_0829_pptx.pptx

  • 1.
    SaaS applications 7/23/2024 –Piuesh Jain 1 Training Multi -Tenancy
  • 2.
    Tenancy in SaaSapplications 7/23/2024 – Piuesh Jain Training 2 Same or separate H/W Build a new and unique data center for every new tenant On-premise deployments Allocation of a new production infrastructure similar to the existing one but properly sized in terms of database and front-ends to accommodate the tenant(s) to migrate. Share same development and acceptance environments - Do not create different lines of development: Shared master data
  • 3.
    Multi Tenancy Architecture 7/23/2024– Piuesh Jain 3 Implement a “Database Access Layer” to access the correct database per tenant local DBA must be able to keep track of changes made to the database model and run a script on all production databases before the deployment. Highly scalable and configurable – for different tenants Training
  • 4.
    Multi Tenancy Architecture(Physical) 7/23/2024– Piuesh Jain 4 Advantages • Highest degree of data isolation. • Lowest number of rows per table: querying speed is near optimal. Disadvantages • Maintenance is more complex and time consuming because the data model of each tenant database needs to be kept synchronized. • Dependency on DBA support during application development and staging Training
  • 5.
    Multi Tenancy Architecture(Logical) 7/23/2024– – Piuesh Jain 5 A column with the Tenant ID is added to that table Advantages • Decreases infrastructure operation costs. • Simplifies and speeds up application development because developers don’t have to write tenant-specific queries Disadvantages • Lower degree of data isolation: data from all tenants are in the same table, which has a column that identifies which tenant that row belongs to. • A higher number of rows per table. To overcome this potential performance bottleneck, you should: • Implement an archiving strategy, making sure relevant data is kept to a minimum. • Create a table index by tenant ID Risk • Exposing tenant data by mistake. Training
  • 6.
    Tenancy in SaaSapplications 7/23/2024 –– Piuesh Jain 6 5. ROW level security https://docs.microsoft.com/en-us/azure/sql-database/saas-tenancy-app-design-patterns software-as-a-service (SaaS) 1. Physical partitioning Current 2. Single Db Separate schema 3. Single Db shared sche 4. Data is partitioned based on Tenant ID Shared master data Training
  • 7.
    “Trends like cloud,mobility and big data are creating a ‘New Style of IT’ and transforming what enterprise customers expect and need from technology.” said Meg Whitman, president and CEO, HP. Multi-tenant Architecture 7/23/2024 –– Piuesh Jain 7 • Pros • Get a minimum viable product there and learn from your users • Reduced Product maintenance • Reduced Development (or upgrade) cost • Reduced Investments • Cons • Increased load of development efforts • Upgrade of the application require each customer to upgrade • Tenant specific customizations is significantly limited- use tenant management tools • Data privacy - Customer data resides in the same database. • One customer may just become big enough that their data warrants their own instance (These challenges can be overcome by Data Identification, creation of Database Architecture and designing a thorough application architecture) Superpod will allow individual customers to have a dedicated instance in the Salesforce multi-tenant cloud Training
  • 8.
    Key considerations 7/23/2024 –Piuesh Jain 8 • Logical tenants (A single application server and database server provide each customer with its own separate set of computing resources) • Data Segregation: The need to segregate data belonging to a single entity (tenant). • Cross-Tenant Access: The need for a user who is part of a tenant to access data that belongs to multiple/all tenants. • Coach development teams not to ever expose multi-tenant tables as single tenants or call the TenantSwitch action • Use fake or scrambled data in non-production environments • Purge mechanisms to minimize the amount of information stored in online tables. Training
  • 9.
    Multi Tenancy Architecture(separate database catalogs for tenant isolation) 7/23/2024 – Piuesh Jain 9 Training
  • 10.
    Multi Tenancy Architecture 7/23/2024– Multi-Tenancy by Piuesh Training 10

Editor's Notes

  • #7 SQL Server 2012 supports up to 15,000 partitions by default.