Multitenancy is one of the core concepts of cloud computing. As an organization considers bringing in cloud capabilities, it’s crucial for them to understand the full range of tenancy options available to them, and what each will mean for their company. This article will break down the intricacies of multitenancy, how it stacks up against other tenancy models, and its benefits.
In cloud computing, software multitenancy – also known as multi-tenant architecture – is defined as an architectural pattern that enables multiple users to share one or more application instances at the same time. Each user is referred to as a tenant; this can be an individual user but is more commonly a group of users, such as a customer company. Each tenant’s data is isolated and invisible to other tenants but runs on the same server.
Single tenancy involves a single application instance dedicated to a single customer. The difference between single tenancy and multitenancy can be explained in a real-estate format. Single tenancy can be viewed as a customer buying a single house of their own and customizing it to their needs as they see fit. Multitenancy can be likened to an apartment building with several isolated apartments leased out to individual customers, all sharing the same resources.
Many companies now prefer to use multitenant architecture because it’s more cost-effective compared to single tenancy. However, single tenancy has several advantages including higher configurability, increased isolation, and associated security that may make it the ideal architectural pattern for certain organizations.
Traditionally, organizations have maintained on-premise servers with single tenancy. However, in recent years, there has been a shift to cloud computing. With cloud computing offering more flexibility, savings on hardware maintenance, and access to cloud technologies, it has become the obvious choice for most options.
There are three major types of cloud computing used by businesses: Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS).
Of these, SaaS is the most popular among businesses, and because its core architecture is multi-tenant, the shift to multitenancy has been inevitable for most organizations. In addition, in most cases, cloud-based applications require multitenancy.
When choosing a database for multi-tenant applications, there are a few criteria developers must consider, and they include:
Outlined below are three major approaches to multitenant database patterns, each with varying levels of complexity and cost:
This is the simplest approach in the initial stages of development. Tenants share the same application instance and database, and each tenant has a table in the shared schema. It allows for easier scaling and larger numbers of tenants, but troubleshooting individual tenants can be difficult. Additionally, it provides very low tenant isolation. When the number of tenants increases exponentially, it will become more difficult to operate the database.
Here, there is a single database, but one schema per tenant. This approach is valuable when data from different tenants needs to be treated differently, for example, if it goes through different geographical regulations. It’s also more secure than the single schema approach. However, it doesn’t comply with PCI/HIPAA/FedRAMP regulations.
In this approach, computing resources and application code are shared among tenants on a single server, but each tenant has their own set of data that remains logically separated from other tenants’ data. It provides the highest level of tenant and data isolation but is also the costliest approach.
The difficulties in access control management in multitenancy lie in:
The most common access control measure applied in multitenancy is Role-Based Access Control (RBAC). RBAC provides fine-grained authorization to users and builds trust among tenants.
There are quite a number of benefits that have made multitenancy popular among organizations, and they include the following:
Although businesses are constantly looking for ways to capitalize on the benefits of both single tenancy and multitenancy through avenues like multi-cloud tenancy and hybrid tenancy, multitenancy remains at the forefront of cloud computing. It offers organizations boundless opportunities for horizontal expansion and would be the ideal tool for a business looking to move from on-premise servers to cloud services.
LogicMonitor announced the appointment of Nitin Navare as Chief Technology Officer (CTO).
There are a few Agile certifications available to choose from, and in this article, we’ll discuss the best agile certifications currently available for IT professionals.
Join LogicMonitor Wednesday June 1st for Dinner @ Frankie & Johnnie's Steakhouse