Working With Multi-Tenant Database Architecture

Multi-Tenant Database Architecture

Software as a Service (SaaS) denotes a novel and innovative paradigm, and the fact that companies do not have to purchase and maintain their own Information Technology (ICT) infrastructure; instead services from third party are acquired. Multi-tenancy permits SaaS providers to provide similar service to various customers (tenants), which share physical and/or virtual resources transparently.

Multi-tenancy database architecture essentially forms a design in which a single instance of the software is run on the service provider’s infrastructure, and multiple tenants access the same instance. Simply put “A multi-tenant application lets customers (tenants) share the same hardware resources, by offering them one shared application and database Instance, while allowing them to configure the application to fit their needs as if it runs on a dedicated environment”.

One of the most conspicuous features of Multi-tenant architecture is that allows for consolidating multiple businesses onto the same operational platform or system. Multi-tenancy invariably takes place at the database layer of a service. As an analogy, think of a rental apartment building with numerous tenants, each having its own requirement of storage, space, and utilities.

Multi-Tenant Database Architecture

Easier application deployment for Service Providers, improved rate of hardware utilization, and reduction in overall costs especially for SMEs are core benefits of Multi-tenant model.

Multi-tenancy was in fact pioneered by salesforce.com. In traditional single-tenant software development, tenants usually have their own virtual server. This set-up is similar to the traditional Application Service Provider (ASP) model. However, in the SME segment, for instance, server utilization in such a model is low. By placing several tenants on the same server, the server utilization can be improved.

There are three different kinds of Multi-tenant models that exist in database applications today are as follows:

  1. Separate application, separate database, and infrastructure (Isolated Tenancy)
  2. Separate application, separate database, shared infrastructure (Infrastructure Tenancy)
  3. Shared application separate database, shared infrastructure (Application Tenancy)

Shared application, shared database, shared infrastructure (Shared Tenancy) is perhaps the ‘purest’ form of Multi-tenancy environment. The above figure illustrates various Multi-tenant approaches as a continuum paradigm. The far left (Isolated Tenancy) depicts each tenant with its own application instance running and as we move further towards the right, sharing of tenancy increases, ultimately reaching the far right side (Shared Tenancy).

From the functionality point of view, the multi-tenant system have limited modifications to the software, because multiple customers are running the same instance of the software and their data is being placed in a pre-configured database format. Multi-tenant SaaS providers generally do a very good job of anticipating the needs of current and prospective customers and the standardized functionality that is often needed by a company.

Due to the low number of instances, multi-tenancy sounds like a maintenance dream. Deployment of software updates becomes much easier and cheaper, due to the fact that a much smaller number of instances has to be updated. However, the complexity of the code does increase, that may possibly lead to maintenance issues. As cloud computing technology continues to grow and mature, further research related to reviewing real world cloud implementations, challenges, benefits, and lessons learned will benefit organizations that are currently considering or planning a SaaS based implementation.

By Syed Raza

Mark Ardito
OPEX is the new battleground I recently wrote in CloudTweaks about how cloud is forcing CIOs to work more closely with their C-suite colleagues to sell the benefits and its role as a business driver ...
Gary Bernstein
Common DevOps Misconceptions 86% of businesses say it’s important for their company to develop and produce new software fast to win market share and beat the competition, Harvard Business Review reveals. Yet, just 10% of businesses ...
Metasploit-Penetration-Testing-Software-Pen-Testing-Security
Vulnerability Scanners Cyber security vulnerabilities are a constant nuisance and it certainly doesn't help with the world in a current state of disarray and uncertainty. Vulnerabilities leave businesses and individuals subject to a wide range ...
Tosin Vaithilingam
Navigating Economic Uncertainty: Strategies for IT Leaders and MSPs Lately, it seems that each day brings news of more economic uncertainty. Companies that have been navigating the pandemic for the past two and a half ...
Martin Mendelsohn
The Colonial Pipeline Dilemma The Colonial Pipeline is one of a number of essential energy and infrastructure assets that have been recently targeted by the global ransomware group DarkSide, and other aspiring non-state actors, with ...
David Discenza
Four Ways to Improve Cybersecurity (Updated: December 9th, 2022 ) Cyber-attacks on businesses have become common place. In fact, it’s estimated that a cyber-attack occurs every 39 seconds. Who are the targets of these attacks? ...
Gilad David Maayan
What Is Cloud Deployment? Cloud deployment is the process of deploying and managing applications, services, and infrastructure in a cloud computing environment. Cloud deployment provides scalability, reliability and accessibility over the internet, and it allows ...
Sofia Jaramillo
Augmented Reality in Architecture Augmented reality (AR) is a growing field of study and application in the world of architecture. This useful tool can help us visualize architectural designs by superimposing them onto real-world scenes ...