Multi-Tenancy Defined

In future, the SaaS model will require technologies and architectures specifically designed to operate in the cloud hosting services. However, these new architectures and technologies will appear in the long term, intermediate and transient models emerging in the short and medium term, bridging the gap between computational models existing today and the future models to cloud.

Most software available today are designed to operate in enterprise data centers, subject to specific contracts under license. Their own application platforms such as Java and. Net has been designed to operate in on-premise model.

In a SaaS cloud, the applications can be offered as services to many organizations. For providers of these services, they need computational resources to be offered that are widely shared. For users, it is essential that a software flaw in the operation to another user and does not affect others. In addition, each user would like to adapt, to the extent possible, application-specific characteristics.

But software architectures do not help in this new scenario. You need a new architectural model for software, called multi-tenancy and multi-tenant.

The model proposed is to have a SaaS application serving multiple clients, called tenants or tenants. Tenants are not individual users, but business software customers. A multi-tenant is an essential architecture for a cloud environment because it allows multiple tenants (business customers) to share the same physical resources as an ERP application, but remain logically isolated.

The models of multi-tenant are:

a) Tenant isolated In this model, each tenant has its own stack of technology, there is no sharing of resources. In practice, though the user to feel the experience of multi-tenant, the application is offered to multiple clients from the same data center, this model is not a multi-tenant. It is similar to the traditional model of hosting where each user has their own set of computing resources and its own instance of the application. For a SaaS offering, this model lacks flexibility and elasticity, because adding a new tenant provisioning requires its own instance of hardware and software. It also does not allow economies of scale. The software providers that sell in the traditional model may offer this option without changing your application. Although not truly Cloud computing is a step in that direction, offering the ease of attraction as a bid to SaaS quickly.

b) Multi-tenant shared via hardware (virtualization). In this model, each tenant has its own stack of technology, but the hardware is allocated dynamically from a pool of resources via virtualization engines. Very similar to the previous model, but allowing the elasticity of the hardware layer. Elasticity is key to the model of cloud computing, which requires mechanisms for allocating and releasing resources dynamically. This model allows for fast entry into cloud computing, especially for application providers and infrastructure, because it does not require redesigning the application. However, limited because the unit of allocation and release of resources is the virtual machine where the application will operate.

c) Multi-tenant via container. In this model it runs multiple tenants in the same instance of a container application (an application server), but each tenant is connected to a separate instance of the software database. The execution environment is shared among multiple tenants, but the data is on the same platform. The premise of the model is that the isolation of the database ensures data integrity of the tenants, while the container implementation offers the advantages of elasticity and customization. To ensure isolation of tenants within a single instance of the container or application server, it must be designed with functionality for managing the allocation of resources to their tenants.

d) Multi-tenant is an evolution of the previous model, now with the entire software stack being shared. In this model beyond the application container, a single instance of the database is shared by all tenants.

The model (b), multi-tenant by sharing hardware, allows a transition to SaaS, low cost and low impact. The reason is simple: to preserve the programming models and technology already known.

Models (c) and (d) implement a much more advanced level of SaaS and will probably be the dominant models in the long term. But today, it is only implemented by software companies that have no legacy to uphold and therefore can break the traditional models, such as Salesforce.com. These models are native to the cloud model, offering high levels of flexibility and elasticity, but at the cost of disruption in current models of programming.

The coming years will see an intense debate about the pros and cons of various models of multi-tenant, but in the long term models (c) and (d) will prevail. Software companies looking to support their huge customer base with legacy systems, are opting for a gradual evolution, initially adopting the model (b), but there is an encouraging trend for the later models (c) and (d), as the market and available technologies are mature enough to support large corporate clients.

Please Note: If you are looking for Rich Data Center Web Hosting, Cloud Services, Dedicated Hosting, Colocation or Software Services in India at Affordable Costs, Visit our website at WWW.ESDS.CO.IN.


1 Response

  1. Nik

    Very informative, thank you!

    One aspect of multi-tenancy that is largely overlooked when trying to figure out how to cost-effectively share hardware resources is how to charge tenants fairly in a per-use model.

    Some of our customers used to charge clients the same independent of how many resources they were consuming. Now that they can track resource consumption on an application level they can charge more fairly!

Leave a Reply

Follow by Email