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 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

Chandani Patel

Design Practices: AWS IoT Solutions

AWS IoT Solutions Internet of Things (IoT) presents an unparalleled opportunity for every industry to address their business challenges. With the proliferation of devices, one needs a solution to connect, collect, store, and analyze the ...
Aarti Parikh

What are the Capabilities of the AWS Serverless Platform?

AWS Serverless Platform AWS serverless compute services allow to build and deploy applications on AWS cloud without having to manage the servers. AWS serverless platform enables vendors to deploy cloud solutions without server provisioning, deploying, ...
Tunio Zafer

Questions To Ask Every Cloud Storage Provider

Cloud Storage Provider Questions As with many new technologies, attitudes toward cloud storage vary. Telephones were immobile; wearables perhaps unwarranted. And now, the global cloud storage market was estimated at $21.1 7 billion in 2015, ...
Patrick Joggerst

Session Border Control as a Service: Faster, More Secure and Dramatically Less Complex Enterprise Communications

Session Border Control as a Service As businesses are increasingly moving to cloud-based unified communications (UC) for improved collaboration and productivity, they must also ensure that their networks and systems are as secure as possible ...
Big Data Explosion

Developing Machine Learning-based Approach for Optimizing Virtual Agent (VA) Training

Optimizing Virtual Agent (VA) Training Achieve NLU model’s precision, recall & accuracy up to 78% The success of any Virtual Agent (VA) depends on the training of its Natural Language Understanding (NLU) model prior to ...
Flexiant Tony Lucas

There Are Still Opportunities For Service Providers

Opportunities For Service Providers Service providers (SPs) still have a golden, but short-lived opportunity to commercialize the $266.4 billion cloud services market before AWS and others call it “game over.” By being more agile, able to ...