Multitenancy is a software architecture principle in which a single instance of the application runs on the server, but multiple clients or organizations (fork or instance) are being served. This model differs from multi-instance architectures where each organization or client has its own installed instance of the application. With a multi-tenant architecture, your application can virtually partition its data and configuration so that each client has a virtual instance tailored to their requirements. Some experts see multiple tenure as a decisive factor in the cloud computing paradigm beside scalability and elasticity. An IT system that satisfies this property offers the possibility of disjunctive, client-oriented data storage, presentation (GUI) and configuration (customizing). Each customer can only see and change their data. A system becomes not multi-tenant by creating a separate instance (copy) of the system for each tenant.
Multitenant applications have evolved from timesharing of the 1960s on mainframe computers. From the 1990s traditional application service providers were forced to host applications on separate machines. Presently, the consumer-oriented web applications are developed as multitenant applications offering additional customization to the same organization.
The tenant is the highest order authority in the IT system and represents a data-related and organizationally closed unit in the system. The client thus structures the use of the system. In a multi-tenant system, a distinction must be made between client-dependent and multi-tenant data and objects. Tenant-dependent data and objects are data, data presentations, and configurations that can be individually regulated for each tenant. Examples include customers, their account information, or the user directory. Cross-tenant data and objects are used for the general and multi-tenant-independent configuration of the system. Examples are countries, locations, currency rates or internationally standardized industry catalogues.
Advantages of Multitenancy
Advantages of tenant systems are in particular the central installation and maintenance, the lower storage requirements for data (because cross-tenant data and objects only have to be held once per installed system and not even per tenant), and possibly lower license costs (depending on the license model).
A multitenant architecture allows you to exchange and share resources and costs at the time of application execution. In this sense, this architecture can be seen as an alternative to virtualization. Additionally, instead of collecting data from multiple sources using probably different database schemas, all customer information is stored in a common and unique schema. Therefore, executing requests to the database about clients to complete e.g. tasks. Data mining, evolution analysis and prediction, becomes much simpler to perform.
Implementing such architectures is more complex, as there are more configuration alternatives to consider and managing data can be complicated. Data security is essential so that users on one instance cannot access data from another instance. On the other hand, the costs of redesigning applications to support multiple tenancies are significant, especially with companies continuing to offer separate applications for each customer with a particular version of their product. This can force the maintenance and support of two different products with all their associated drawbacks.
Large web hosts offer thousands of web presences from independent tenants under one IP address. On some content management systems and online store systems, different tenants can be served on the same instance. Virtual servers can operate multiple systems with different IP addresses on one hardware that look like a separate server for each customer. In the same instance of an ERP system, several companies (clients) are managed, e.g. parent companies plus subsidiaries. On a smaller scale, for example, several companies can be created in the same accounting program, such as parent companies plus subsidiaries, or a tax advisor manages several clients in his program.Tagged With multi-tenancy jupyter , what is multitenancy and advantages