Multi Tenancy

When we develop software which is applicable to multiple customers we need to consider Multitenant architecture. In Multi-tenancy, each customer is called a tenant.

Shared Database, Shared Schema
In this case, multiple tenants are using the same database and schema. Each table will have records from multiple tenants. A unique ID like Tenant ID relates every record with the particular tenant.

Sharing database with Separate Schemas
In this case, multiple tenants are in the same database, with each tenant having its own schema created specifically. Here database server, Database and Instance are shared.

Separate database for each tenant
In this case, only the database server resource can be shared. Each tenant has its own database. Banking Customers are mostly looking for the products with this option.

Key Benefits

  • It simplifies release management process and does not require having separate release for each customer until changes required in customized interfaces.
  • IT has ability to scale up easily. The scaling productivity depends upon the available resources.
  • Addition of new customer is economical.
  • Cost saving in terms of:
    • License Cost of software like OS, DBMS, etc.
    • Sharing of hardware resources

To know more about this topic, contact us.

Cloud Computing

“There was a time when every household, town, farm or village had its own water well. Today, shared public utilities give us access to clean water by simply turning on the tap; cloud computing works in a similar fashion. Just like water from the tap in your kitchen, cloud computing services can be turned on or off quickly as needed. Like at the water company, there is a team of dedicated professionals making sure the service provided is safe, secure and available on a 24/7 basis. When the tap isn’t on, not only are you saving water, but you aren’t paying for resources you don’t currently need.”

Vivek Kundra, Federal CIO, United States Government

Companies have to provide the infrastructure to their Employees which require:

  • Space for hardware (Servers, Network Storage Devices, etc.) installation.
  • A dedicated team for hardware maintenance.
  • Require hardware up-gradation to meet the system requirements in order to install the software applications.

In Cloud computing end user can access an application directly through the internet using the web browser, no software installation process required. Thus, it reduces the investment on hardware and other resources of an organization. The cloud environment provides the flexibility, stability, support, backup, and restoration services.

Few points of Cloud Computing:

  • Ability to run multiple virtual machines, on a single server
  • Internet speed enhancement
  • Development of applications accessible through the internet
  • Better software performance over the internet

Cloud providers offer physical and virtual machines, firewalls, load balancers, networks, IP addresses, etc. Cloud users need to install operating system images and the applications on the machines. It is billed based on resources allocated and consumed.

Here cloud providers offer a computing and solution platform, includes operating system, database, web server and programming language execution environment.  Here it automatically computes and scales the resources, thus no need to allocate the resources manually.

Here cloud providers perform all the tasks like- installation of operating systems and applications, maintenance of infrastructure and cloud platform, load balancing, cloning, etc. It rules out the need to install and run the application for the cloud user’s system, it simplifies the maintenance and support.  It is a software distribution model in which applications are hosted by a vendor or service provider and made available to customers over a network, typically the Internet.

To know more about this topic, contact us.