Multi Tenant Architecture
Multi tenant architecture refers to a the way of how Software-As-A-Service (SAAS) provider operates their application-specific services for big data to consumers. It refers to a single version of the software application with a single configuration including hardware, network, and operating system. This particular single version is used for all customers that are called in this context ‘tenants’. As the architecture allows many tenants at the same time to use the SAAS application it is called multi tenant architecture. Some refer to this architecture type also as multi-tenancy in short. One example of a SAAS provider that is implementing this architecture type is Salesforce Customer Relationship Management (CRM).
In traditional software multiple physical copies of the software are installed across customers. This is software is installed in different versions, different configurations, often customized for various customers. If the application requires a client-server architecture, the server often was dedicated to this particular application. The SAAS multitenant architecture on the other hand has one single version and configuration just personalized by some parameter settings. The application is centrally hosted in the cloud for many customers. Sometimes a second version of an application for beta or pre-releases for a selected groups of customers is hosted in parallel. Better scalability via data centers and virtualization is achieved than having dedicated servers for each individual server or customer. The SAAS horizontal scaling is a core feature and often implemented in practice whereby one version of the application is installed on multiple virtual IT resources in a cloud infrastructure.
Multi Tenant Architecture Details
The following video provides more details: