Article

A Study and Performance Evaluation of the Multi-Tenant Data Tier Design Patterns for Service Oriented Computing

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

Multi-tenancy is one of key characteristics of the service oriented computing especially for Software as a Service (SaaS) to leverage economy of scale to drive down total cost of ownership for both service consumer and provider. This paper aims to study the technologies to build a cost-effective, secure and scalable multi-tenant infrastructure, especially in data tier. We first explore all the key implementation patterns of data tier multi-tenancy on aspects of isolation, security, customization & scalability etc. Furthermore, we mainly evaluate the performance of these design patterns on aspects of isolation and security via a series of experiments and simulations. This paper also identifies the potential performance bottlenecks, summarizes corresponding optimization approaches and best implementation practices for different multi-tenant business usage models.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... This section presents the results of an experiment, which analyzes the isolation level of the three aforementioned data architectures. In this evaluation experiment each tenant has 4000 rows in the table "Order" and the table has 20 columns [20]. ...
... As it has already mentioned, each multi-tenant data architecture offers different data isolation level. The experiment evaluates the maximum number of tenants, which each data architecture can serve, especially as the Transactions per Second (TPS) per tenant increases from 0.1 to 5 [20]. ...
... On the other hand, "shared database-separate schema" and "shared databaseshared schema" architectures are suitable for tenants with low TPS number, since they can support more tenants than the "separate database" architecture [20]. Figure 10 depicts the maximum number of TPS that the system can afford compared with the number of active tenants. ...
Technical Report
Full-text available
Cloud computing is the most popular and fast growing internet technology nowadays. Cloud computing makes computer processing more convenient and flexible for users and reduces operating costs for providers [1]. Cloud computing services are distinguished in three categories. In this project we study one of these categories “Software as a Service” (SaaS) and its key characteristic “Multi tenancy” [2]. Multi tenancy gives vendors the ability to offer a single instance of an application to multiple tenants. All tenants use the same hardware and software, but each tenant accesses only its own data [2]. The fact that all tenants’ data is stored in the same infrastructure makes them feel anxious and worried about data safety and reliability. Hence, many security issues about data security and privacy arise. The aim of this project is to present the concept of multi- tenancy and the security patterns that are used in it. The first chapter outlines computers jargon containing some basic definitions. The second chapter describes the data architectures that are used in multi tenancy applications and how these architectures contribute to data isolation and protection. The third chapter introduces the security patterns and mechanisms, which are used in multi tenant applications. The forth chapter presents the results of security patterns evaluation experiments. The final chapter contains the conclusions of this project.
... Since data from various tenants exists in same location and accessed via same instance of the service, there is a serious risk of potential privacy and security violation. Even though multi-tenancy [12, 14] helps achieve better resource utilization in cloud, it challenges HIPAA compliance by making health cloud vulnerable to cyberattacks and data breaches. Therefore, information assurance is critical for the acceptance of health cloud. ...
... Therefore, the key aspects of multi-tenancy are considered as following: 1. The ability of the application to share hardware resources [14, 15, 25]. 2. The offering of a high degree of configurability of the software [12, 13]. 3. The architecture in which multiple tenants use single application and database instance [16, 21]. ...
... In a single-tenant environment, the risk of data stealing is relatively small compared to a multi-tenant environment. In multi-tenancy a security breach can result in the exposure of data to other, possibly competitive tenants [12, 14]. In our research, we investigate access related issues of multi- tenancy. ...
Conference Paper
Full-text available
Cloud technology can be used to support costeffective, scalable, and well-managed healthcare information systems. However, cloud computing, particularly multitenancy, introduces privacy and security issues related to personal health information (PHI). In this paper, we designed ontological models for healthcare workflow and multi-tenancy, and then applied HIPAA requirements on the models to generate HIPAA-compliant access control policies. We used Semantic Web Rule Language (SWRL) to represent access control policies as rules, and we verified the rules with an OWL-DL reasoner. Additionally, we implemented HIPAA security rules through access control policies in a cloud-based simulated healthcare environment. More specifically, we investigated access control policy specification and enforcement for cloud based healthcare information systems using an open source cloud platform, OpenStack. The results manifest HIPAA compliance through authorization policies that are capable of addressing vulnerabilities of multi-tenancy.
... Usually, in the SME segment, utilization of such a server is low. By placing several tenants on the same server, the server utilization can be improved [16,17]. Although this happens when virtualization is used as well, virtualization imposes a much lower limit on the number of tenants per server due to the relatively high memory requirements for every virtual server [12]. ...
... 1. Shared application, separate database 2. Shared application, shared database, separate table 3. Shared application, shared table (pure multi-tenancy) Throughout this paper, we will assume the pure multi-tenancy variant is being used, as the other two have performance issues when a large number of tenants are placed on the same server [2,16]. ...
... A number of researchers [2,5,10] have described the possible variants of multitenancy, as we have described in Section 2.2. Wang et al. [16] have evaluated these variants for different numbers of tenants and make recommendations on the best multi-tenant variant to use, based on the number of tenants, the number of users per tenant and the amount of data per tenant. ...
... Research work on multitenancy has acknowledged that there are varying degrees of isolation tenants accessing a multitenant cloud-hosted service [11][12][13][14]. Chong and Carraro discuss three approaches to managing multitenant data, and it is stated that the distinction between the shared data and isolated data is more of a continuum, where many variations are possible between the two extremes [11]. ...
... Wang et al. explored key implementation patterns of data tier multi-tenancy based on different aspects of isolation such as security, customization and scalability [12]. For example, under the resource tier design pattern, the authors identified the following patterns: (i) totally isolated (dedicate database pattern); (ii) partially shared (dedicate table pattern); and (iii) totally shared (share table pattern). ...
Article
Full-text available
A challenge, when implementing multi-tenancy in a cloud-hosted software service, is how to ensure that the performance and resource consumption of one tenant does not adversely affect other tenants. Software designers and architects must achieve an optimal degree of tenant isolation for their chosen application requirements. The objective of this research is to reveal the trade-offs, commonal-ities, and differences to be considered when implementing the required degree of tenant isolation. This research uses a cross-case analysis of selected open source cloud-hosted software engineering tools to empirically evaluate varying degrees of isolation between tenants. Our research reveals five commonalities across the case studies: disk space reduction , use of locking, low cloud resource consumption, customization and use of plug-in architecture, and choice of multi-tenancy pattern. Two of these common factors compromise tenant isolation. The degree of isolation is reduced when there is no strategy to reduce disk space and cus-tomization and plug-in architecture is not adopted. In contrast , the degree of isolation improves when careful consideration is given to how to handle a high workload, locking of data and processes is used to prevent clashes between multiple tenants and selection of appropriate multi-tenancy pattern. The research also revealed five case study differences: size of generated data, cloud resource consumption, sensitivity to workload changes, the effect of the software process , client latency and bandwidth, and type of software process. The degree of isolation is impaired, in our results, by the large size of generated data, high resource consumption by certain software processes, high or fluctuating workload, low client latency, and bandwidth when transferring multiple files between repositories. Additionally, this research provides a novel explanatory framework for (i) mapping tenant isolation to different software development processes, cloud resources and layers of the cloud stack; and (ii) explaining the different trade-offs to consider affecting tenant isolation (i.e. resource sharing, the number of users/requests, customizability, the size of generated data, the scope of control of the cloud application stack and business constraints) when implementing multi-tenant cloud-hosted software services. This research suggests that software architects have to pay attention to the trade-offs, commonalities, and differences we identify to achieve their degree of tenant isolation requirements.
... Three approaches have been introduced to multi-tenant data management [5][6][7][8]: Independent Databases and Independent Database Instances (IDII), Independent Tables and Shared Database Instances (ITSI), Shared Tables and Shared Database Instances ...
... Zhi Hu Wang et. al., [8] study the technologies to build a cost-effective, secure and scalable multi-tenant infrastructure, especially in data tier and explore all kinds of potential implementation patterns of data tier multi-tenancy on aspects of isolation, security, customization & scalability etc. Furthermore, evaluate the performance of these design patterns on aspects of isolation and security via a series of experiments and simulations and the cost of these patterns study from the infrastructure, management and development aspects by using different kinds of measurement metrics. ...
Article
Full-text available
In recent years, the applications of cloud computing technology has been increased significantly. Multi-tenant property of cloud computing allows data sharing between clients. The multi-tenant data management system breaks the cost of hardware, software and professional services among a large number of tenants and thus reduces per-tenant cost. A multi-tenant database system should provide high performance with small storage space and excellent scalability. One major challenge is to reach a database scheme with high-quality. In this paper, we offer a compatible ADAPTED database schema based on genetic algorithms, and compare it with similar schema. Simulation results show that the proposed approach (GA-ADAPT) besides considering criteria of quality of service, provides higher performance comparing the previous ones in terms of selection time of the important features and the average response time to the tenants.
... Multi-tenancy is one of the key characteristics of service oriented computing, especially for SaaS, in order to leverage economy of scale to drive down the total cost of ownership for both service consumers and providers. [4]. Software as a service multi-tenancy helps service providers to cut cost, improve resource utilization, and reduce service customization and maintenance time as the tenants share the same service instance [5]. ...
... The drawback of our approach, contrary to the TOSSMA, is that our solution cannot be applied without making changes to the source code of the target application. Wang et al. [4] evaluated performances for various patterns for data isolation, mostly based on database servers. The paper has theoretical value as it investigates data isolation possibilities and it gives a significant number of performance measures, but it does not provide any software implementation. ...
Article
The Internet of things (IoT) is composed of a large number of end systems. Data gathered from these end systems are processed in the cloud environment. This paper delineates multi-tenancy as a prerequisite for enabling cost effective IoT solutions using any cloud platform. In the IoT world, a large number of end systems imply a large number of users who should have open access to specific subsets of data. As multi-tenancy includes sharing the same application instance, security is a key requirement when engineering new software as a service (SaaS) applications. This paper describes multi-tenant implementation approaches and inspects security aspects and data isolation. It proposes a solution for data layer scalability in order to achieve the desired performances. Furthermore, it proposes an SOA solution to provide a secure multi-tenant web service with scalable data layers. We demonstrate that the proposed approach results in some performance loss, which is not acceptable for performance critical applications but is acceptable for services developed for tenants themselves. We experimentally confirm our data scalability theory based on an actor model and developed a cost estimator. Finally, we conclude that application level multi-tenancy is necessary from a cost efficiency point of view in a scenario involving a large number of users. The solution was tested in a private cloud environment.
... This cost is referred to as Total Cost of Ownership (TCO) which is broken down into three major types. These are infrastructural cost, management cost and application development cost [13]. Infrastructural cost includes the cost of hardware, software and utilization costs. ...
... Management costs are costs related to the operational activities and processes like lifecycle management, monitoring data backup and restoration. Application development costs are costs related to meeting each customer additional unique requirement [13]. Considering all these costs involved in acquiring a dedicated database system, it is obvious that huge amount of resources are involved. ...
Article
Full-text available
—Multi-tenant databases (MTD) are aspect of computing that has become one of the revolutionary technologies of recent years. This technology has helped to discard the large-scale investments in hardware and software resources, in upgrading them regularly and also in expensive licences of application software used on inhouse hosted database systems. A MTD is a way of deploying a Database as a Service (DaaS) for the convenience and benefits of tenants. This concept is good for higher scalability and flexibility but it involves a lot of technicalities. The adoption of a MTD is based on some salient factors which can be grouped into four categories for easy understanding. A survey is presented in this research that involves a focus group of thirty respondents. The result shows the degree of impact each factor has on the decision to adopt a MTD. This paper also considers these factors and develops a framework that will help prospective tenants to take an informed decision about the adoption of the concept.
... Tenants can on-demand access the computational resources with pay-per-use pricing model. As one of the key characteristics of SaaS, multi-tenancy technology (Guo et al., 2007; Wang et al., 2008; Kwok and Mohindra, 2007) targets to support multi tenants by sharing application instances and databases. It makes the SaaS provision more attractive to their potential customers (tenants), especially those small and medium businesses with limited IT investment budgets (Zhang et al., 2010). ...
... y is a constraint factor assuring the utilization rate of a data node is below 1.0 in order to provide higher service reliability and increase uptime which will eliminate or reduce fines caused by missed SLA requirements (Wang et al., 2008; Zhang et al., 2010). Then the residual resource is: ...
Article
On demand migration of tenants' data is a critical technology for elastic load balancing in SaaS application. However, different tenants have different required resource with various SLA requirements. Moreover, previously reported migration techniques are not tenant aware. To study the elastic load balancing of tenants' data, we mainly focus on the problem of when to migrate which tenants' data in a muti-tenant shared DB server and build a new framework that aims to monitor load and minimize migration cost. We establish a demand resource estimation model to decide when to migration and then create a cost model to guide the choice of possible migration tenants. The simulation experimental results show the high effectiveness and the good efficiency of our model.
... Some authors consider multi-tenancy pure when using low degrees of isolation (like in the shared schemas approach); other variations where reutilisation of resources is not 6 A. Rico et al. maximised are considered as semi-multitenant (Bezemer and Zaidman 2010a). In Wang et al. (2008), the authors conduct a study for performance evaluation; better results are achieved as we approach the isolated side of the spectrum. However, since tenants get their own resources, these can be under-used; a scenario that affects system efficiency increases costs and limits the number or tenants allocated. ...
... MT 2 systems must be able to serve a presumably bigger number of tenants than mono-target systems. Future studies should also ruminate on performance isolation methods (Li et al. 2008) or database management system mechanisms (Wang et al. 2008). ...
Article
Multi-tenant architectures (MTAs) are considered a cornerstone in the success of Software as a Service as a new application distribution formula. Multi-tenancy allows multiple customers (i.e. tenants) to be consolidated into the same operational system. This way, tenants run and share the same application instance as well as costs, which are significantly reduced. Functional needs vary from one tenant to another; either companies from different sectors run different types of applications or, although deploying the same functionality, they do differ in the extent of their complexity. In any case, MTA leaves one major concern regarding the companies’ data, their privacy and security, which requires special attention to the data layer. In this article, we propose an extended data model that enhances traditional MTAs in respect of this concern. This extension – called multi-target – allows MT applications to host, manage and serve multiple functionalities within the same multi-tenant (MT) environment. The practical deployment of this approach will allow SaaS vendors to target multiple markets or address different levels of functional complexity and yet commercialise just one single MT application. The applicability of the approach is demonstrated via a case study of a real multi-tenancy multi-target (MT2) implementation, called Globalgest. Up to 50 free copies available at https://www.tandfonline.com/eprint/BH8QUESJ32YZEVPDDX9R/full?target=10.1080/17517575.2014.947636
... Multi-tenant database designs are widely discussed (Wang et al., 2008) (Chong et al., 2006 ). In the following we give a short summary of the different approaches . ...
... (Chong et al., 2006), (Osipov et al., 2009)) discussing how to separate the tenant's data and how to create tenant specific data models. Wang (Wang et al., 2008 ) also did some performance related research. Nevertheless, there is no discussion about mutual influences of non-database and database related concepts. ...
Conference Paper
Full-text available
Multi-tenant applications serve different customers with one application instance. This architectural style leverages sharing and economies of scale to provide cost efficient hosting. As multi-tenancy is a new concept, a common definition of the word and related concepts is not yet established and the architectural concerns are not fully understood. This paper provides an overview of important architectural concerns and there mutual influences. Beside that, it defines multi-tenancy and differentiates it from several related concepts.
... In general, we distinguish three major approaches to separate a tenants data from the data persisted by other tenants (Wang et al. [27] and Chong et al. [6]). The dedicated database system provides a separate dedicated database for each tenant and has the best isolation at the cost of the highest overhead. ...
... In [27], various sharing options for implementing multi-tenant persistence are discussed. The authors evaluate their non-functional behavior including performance aspects. ...
Conference Paper
Cloud environments reduce data center operating costs through resource sharing and economies of scale. Infrastructure-as-a-Service is one example that leverages virtualization to share infrastructure resources. However, virtualization is often insufficient to provide Software-as-a-Service applications due to the need to replicate the operating system, middleware and application components for each customer. To overcome this problem, multi-tenancy has emerged as an architectural style that allows to share a single Web application instance among multiple independent customers, thereby significantly improving the efficiency of Software-as-a-Service offerings. A number of platforms are available today that support the development and hosting of multi-tenant applications by encapsulating multi-tenancy specific functionality. Although a lack of performance guarantees is one of the major obstacles to the adoption of cloud computing, in general, and multi-tenant applications, in particular, these kinds of applications and platforms have so far not been in the focus of the performance and benchmarking community. In this paper, we present an extended version of an existing and widely accepted application benchmark adding support for multi-tenant platform features. The benchmark is focused on evaluating the maximum throughput and the amount of tenants that can be served by a platform. We present a case study comparing virtualization and multi-tenancy. The results demonstrate the practical usability of the proposed benchmark in evaluating multi-tenant platforms and gives insights that help to decide for one sharing approach.
... Abdul et al. [21] they can provide great opportunities to harness the power of cloud infrastructure enabling the tenants to increase the consolidation of data layer operational entities to be dedicated, isolated, and shared. The use of infrastructure can also be done in other ways by applying a multitenant management pattern [22], [23] such as the model-view-controller (MVC), model-view-presenter (MVP), and model-view-view-model (MVVM). Each pattern includes some different aspects of the tenant management systematics. ...
Article
Full-text available
In the new-normal era, public services must make various adjustments to keep the community safe during the COVID-19 pandemic. The Public Service Mall is an initiative to put several public services offices in a centralized location. However, it will create a crowd of people who want access to public service. This paper evaluates multi-tenant models with the rapid adaptation of cloud computing technology for all organizations' shapes and sizes, focusing on multi-tenants and multi-services, where each tenant might have multiple services to offer. We also proposed a multi-tenant architecture that can serve queues in several places to prevent the spread of COVID-19 due to the crowd of people in public places. The design of multi-tenants and multi-services applications should consider various aspects such as security, database, data communication, and user interface. We designed and built the "QuAntri'' business logic to simplify the process for multi-services in each tenant. The developed system is expected to improve tenants' performance and reduce the crowd in the public service. We compared our agile method for system development with some of the previous multi-tenant architectures. Our experiments showed that our method overall is better than the referenced model-view-controller (MVC), model-view-presenter (MVP), and model-model-view-presenter (M-MVP).
... Several applications are being developed with different goals. Multi-tenancy in IoT applications (i) shares network instance for IoT traffic to different types of customers [37], (ii) reduces cost of IoT solutions using different cloud platform for both service consumers and providers [38], and (iii) enables scalable applications [39] [40] [41]. However, there are many challenges regarding multi-tenancy security (e.g., privacy, DDoS detection, and collaboration). ...
... Despite the current trend towards building new applications using microservices [5] and using cloud-native scalable databases [21,24], a large class of SaaS operators still operate applications based on tried-and-tested monolithic applications using a relational (SQL) database to store customer data. In such legacy applications, multi-tenancy is typically implemented at the database level, either using distinct dedicated databases, dedicated tables or shared tables [28]. We focus in this paper on shared-table multi-tenancy: Database tables are shared between tenants, and a tenant identifier enables queries to distinguish the tenants' rows (i.e., a shared-table schema [2]). ...
Chapter
Multi-tenancy enables cost-effective SaaS through resource consolidation. Multiple customers, or tenants, are served by a single application instance, and isolation is enforced at the application level. Service load for different tenants can vary over time, requiring applications to scale in and out. A large class of SaaS providers operates legacy applications structured around a relational (SQL) database. These applications achieve tenant isolation through dedicated fields in their relational schema and are not designed to support scaling operations. We present a novel solution for scaling in or out such applications through the migration of a tenant’s data to new application and database instances. Our solution requires no change to the application and incurs no service downtime for non-migrated tenants. It leverages external tables and foreign data wrappers, as supported by major relational databases. We evaluate the approach using two multi-tenant applications: Iomad, an extension of the Moodle Learning Management System, and Camunda, a business process management platform. Our results show the usability of the method, minimally impacting performance for other tenants during migration and leading to increased service capacity after migration.
... Despite the current trend towards building new applications using microservices [5] and using cloud-native scalable databases [21,24], a large class of SaaS operators still operate applications based on tried-and-tested monolithic applications using a relational (SQL) database to store customer data. In such legacy applications, multi-tenancy is typically implemented at the database level, either using distinct dedicated databases, dedicated tables or shared tables [28]. We focus in this paper on shared-table multi-tenancy: Database tables are shared between tenants, and a tenant identifier enables queries to distinguish the tenants' rows (i.e., a shared-table schema [2]). ...
Conference Paper
Multi-tenancy enables cost-effective SaaS through resource consolidation. Multiple customers, or tenants, are served by a single application instance, and isolation is enforced at the application level. Service load for different tenants can vary over time, requiring applications to scale in and out. A large class of SaaS providers operates legacy applications structured around a relational (SQL) database. These applications achieve tenant isolation through dedicated fields in their relational schema and are not designed to support scaling operations. We present a novel solution for scaling in or out such applications through the migration of a tenant's data to new application and database instances. Our solution requires no change to the application and incurs no service downtime for non-migrated tenants. It leverages external tables and foreign data wrappers, as supported by major relational databases. We evaluate the approach using two multi-tenant applications: Iomad, an extension of the Moodle Learning Management System, and Camunda, a business process management platform. Our results show the usability of the method, minimally impacting performance for other tenants during migration and leading to increased service capacity after migration.
... There are several solutions to multitenancy implementation which have been widely discussed in the literature. Multitenancy can be introduced at different cloud stack layers: application layer [16], middleware layer [19], and data layer [20,21]. ...
... In addition, Wang et al. [41] studied different techniques of data tier to build the scalable multi-tenant application. Furthermore, they evaluate the performance of these design patterns based on a number of tenants, the number of users and the amount of data per tenant. ...
Article
Software-as-a-Service (SaaS) has received significant attention from software providers and users as a software delivery model. Most of the existing companies are transferring their business into a SaaS model. This intensely competitive environment has imposed many challenges for SaaS developers and vendors. SaaS development is a very complex process and SaaS success depends on its architecture design and development. This paper provides a better understanding of SaaS applications architecture phase during the SaaS development process. It focuses mainly on an empirical investigation of key factors of SaaS Architecture phase identified from the systematic literature review. A quantitative survey was developed and conducted to identify key architecture factors for an improved and successful SaaS application. A developed survey was used to test the proposed hypothesis presented in this study. Empirical investigation's results provide evidence that vendors and developers must consider key architecture factors for SaaS development process to stand in the current competitive environment. These key factors include customization, scalability, MTA (Multi-Tenancy Architecture), security, integration, and fault tolerance and recovery management. The main contribution of this paper is to investigate empirically the influence of identified key factors of the architecture on SaaS applications success.
... Chong et al. state that the distinction between the shared data and isolated data is more of a continuum, where many variations are possible between the two extremes. The authors in [24] explore key implementation patterns of data tier multi-tenancy based on different aspects of isolation such as security, customization, and scalability. For example, under the resource tier design [1]. ...
Article
Full-text available
Abstract One of the challenges of deploying multitenant cloud-hosted services that are designed to use (or be integrated with) several components is how to implement the required degree of isolation between the components when there is a change in the workload. Achieving the highest degree of isolation implies deploying a component exclusively for one tenant; which leads to high resource consumption and running cost per component. A low degree of isolation allows sharing of resources which could possibly reduce cost, but with known limitations of performance and security interference. This paper presents a model-based algorithm together with four variants of a metaheuristic that can be used with it, to provide near-optimal solutions for deploying components of a cloud-hosted application in a way that guarantees multitenancy isolation. When the workload changes, the model-based algorithm solves an open multiclass QN model to determine the average number of requests that can access the components and then uses a metaheuristic to provide near-optimal solutions for deploying the components. Performance evaluation showed that the obtained solutions had low variability and percent deviation when compared to the reference/optimal solution. We also provide recommendations and best practice guidelines for deploying components in a way that guarantees the required degree of isolation.
... Fehling et al. [20] also cataloged design patterns that can be employed to solve recurring problems in cloud computing domain. Wang et al. [21] explored patterns of the data layer of the multi-tenant application. Adewojo et al. [17] compared object-oriented software design patterns with recent cloud computing deployment patterns. ...
... [23] focuses on reducing resource consumption and discuss some cost aspects of sharing. [35] presents an approach to determine the best multi-tenant variant to use based on the number of tenants, the number of users per tenant, and the amount of data per tenant. Further papers such as [9] discuss implementation principles for application-level multi-tenancy and explore different approaches to enhance performance, availability, isolation, administration, and security. ...
... This new computing paradigm has been gaining popularity for two reasons. First, the internet has become affordable and its speed has significantly increased [29]. Second, rapid growth in computer usage, in areas such as businesses, governments, health services, education, social media networks, mobile applications, and other computational aspects [17]. ...
Article
Full-text available
Software as a service (SaaS) is a Cloud Computing service model that exploits economies of scale for SaaS service providers by offering a single configurable software and computing environment for multiple tenants. This contemporary multi-tenant service requires a multi-tenant database that accommodates data for multiple tenants using a single database schema. In general, traditional Relational Database Management Systems (RDBMS) do not support multi-tenancy and require schema extensions to provide multi-tenant capabilities. This paper proposes a multi-tenant database schema called Elastic Extension Tables (EET), which is highly flexible in enabling the creation of database schemas for multiple tenants by extending a preexisting business domain database, or by creating tenant business domain database from the scratch at runtime. The empirical results presented in this paper indicate that the EET schema has potential to be used for implementing multi-tenant databases for multi-tenant SaaS applications.
... A framework for implementing multi-tenant applicationsìs proposed in [12]. The framework defined configurations for security, performance, and administration for application. ...
Article
A multi-tenant Software as a Service (SaaS) application delivers customized run-time application to each tenant using a single application. Multi-tenancy offers several advantages including quick application deployment, reduced application maintenance, effective version control, and much more. However, handling large datacenter resources and providing better Quality of Service (QoS) is a major challenge for SaaS providers. SaaS application have unstable load based on tenant user's demand. In a typical multitenant application security, reliability and energy efficiency play an important role. However, these aspects are largely ignored while focusing on the performance of the application. In this paper we propose a novel application's component based multivariable architecture for multi-tenant Software as a Service (SaaS) application. Instances of application's components are created at component level and dynamically scaled based on the component's load considering security, reliability and energy based runtime factors applying multi-criteria Zionts-Wallenius optimization method. Our evaluation and discussions show that the proposed multi-instance Towards Multivariable Architecture (TMA) offers enhanced application load distribution and at the same time offers improved application response time and conserves energy in datacenter.
... Much of the work related to multi-tenanted systems has been done in the last few years including work on maturity levels[2], data isolation[18,19], enabling customizations[11]and tenant placement[3,6]. A survey of the application of control engineering approaches to build selfadaptive software system can be found in[15]. ...
Conference Paper
Full-text available
The methodologies to develop multi-tenanted architectures have been investigated in the recent literature due to the popularity of cloud computing. A number of challenges need to be overcome if multi-tenanted architectures are to be effective and efficient. Among the challenges is the management of performance properties while effectively sharing the limited resources between the tenants. This work presents an approach to design such a management system for a multi-tenanted business process server. This approach not only enables performance to be maintained at different levels for different tenants depending on their priorities, but also autonomously detects the overloads of aggressive tenants and dynamically changes the control objectives to safeguard the business operations of other tenants. The novelty of the proposed approach is the use of the nonlinear feedback control. The experiment results indicate that the proposed nonlinear control approach achieves the objectives much better compared to the existing fixed and linear control techniques.
... his master tenant will be to maintain the other tenant's data as well as manage changes in other tenants data. This is very identical to the concept of admin user. There can be multiple master tenants of a database. For example if Main branch of any bank want to see the reports of its particular branch then it should be declared as a master tenant. [6] Copyright © 2012 MECS ...
Article
Full-text available
Multi-tenant applications are usually cloud based software services which can serve different users at the same time. This is done using single instance of applications by sharing hardware, infrastructure, data storage and virtualization. To achieve multi tenancy different approaches are there at every layer (Application, Data, hardware).Multi tenancy helps to minimize the effort needed for deployment and maintenance with an adequate level of security and privacy. Now a day the work is going on custom multi tenancy by sharing everything at each layer. This paper will describe the techniques of multi tenancy and how security, flexibility and scalability relate to each other when it comes to multi tenancy for customization.
... This means that each customer shares hardware and software resources leading to better resource utilization. A shared-table design [7], [8] is used to isolate data inside relational database instance. In our implementation, a single tenant correlates to single customer -producer or distribution organization. ...
Conference Paper
Full-text available
End user development (EUD) is the idea of providing end users, professionals outside computer science community, to develop their own software. This idea has received special attention by domain experts who would like to easily modify software applications to their needs, without intervention of technical professionals and without learning conventional programming languages. The end user development is in fact a system property, closely related to system adaptability that should be built into a system to enable number of modifications at different system levels securing powerful system expressions that would satisfy the end user needs. This is a challenging requirement for every software provider. There are a number of identified system perspectives, critical to EUD, and general guiding principles what should be addressed. However, in reality, building these properties into the concrete system, a number of complex and interrelated issues have to be solved. In this paper we report challenges that we addressed in the way of implementing end user development capability into a software system within business domain.
... Since flexibility is key to effective multi-tenant applications, their deployment should go along with inherently accommodative architectures, such as service oriented architectures (SOA) [21]. For example, SOA permit to isolate tenant-specific business needs in a separate version of a service, which raises the challenge of managing versions of services. ...
Conference Paper
Full-text available
Multi-tenant systems represent a class of software-as-a-service (SaaS) applications in which several groups of users, i.e. the tenants, share the same resources. This resource sharing results in multiple business organizations using the same base application, yet, requiring specific adaptations or extensions for their specific business models. Each configuration must be tended to during evolution of a multi-tenant system, because the existing application is mended, or because new tenants request additional features. In order to facilitate the understanding of multi-tenant systems, we propose to use a runtime topology augmented with user and version information, to help understand usage patterns exhibited by tenants of the different components in the system. We introduce Serviz, our implementation of the augmented runtime topology, and evaluate it through a field user study to see to which extent Serviz aids in the analysis and understanding of a multi-tenant system.
... The other key for realizing the multi-tenant SaaS application is to assure data isolation among different tenants by certain strategy and ensure that different tenants can share the same application instance but monopolize their private data. The data isolation can be realized by three means [20, 23]: @BULLET Independent database: Each tenant owns its database, which indicates the highest user data isolation. It guarantees the best security but the highest cost. ...
Conference Paper
Full-text available
With the pervasiveness of the success cases of SaaS applications, outsourcing the manuscript submission and review system of periodical presses to SaaS providers becomes a new trend. This study proposes a solution for constructing the journal manuscript submission and review system based on level-3 maturity model of SaaS. In this article, the requirements of the system have been elicited, the architecture has been designed, and the key implementation has been presented. By renting the services provided by the system instead of buying or developing, the periodical presses can not only obtain better technical support, but also save costs. In addition, the periodical press can utilize its agglomeration effect based on SaaS platform and subscribe the value-added services such as journal recommendation service to implicit contributors and reviewer recommendation service to periodical presses which will be helpful to promote the quality and impact factor of the journal.
... Three different approaches shared machine, shared process and shared table are discussed by Jacobs in [27]. In [28], a simulation study is done which analyzes the performance of different approaches to implement the multi-tenant databases. An approach for multi-tenant architecture supporting the SaaS model is discussed in [29] . ...
Article
Data management and sharing is the challenge being faced by all the IT majors today. Adds over it, is the challenge faced by the cloud service providers in terms of multi-tenancy of data and its efficient retrieval. It becomes more complex in a heterogeneous computing environment to provide cloud services. A simple, robust, query efficient, scalable and space saving multi-tenant database architecture is proposed along with an ad hoc cloud architecture where organizations can collaborate to create a cloud, that doesnt harm their existence or profitability. An ad hoc cloud fits very well to the scenario where one wants to venture into remote areas for providing education services using a cloud. The results of the proposed multi-tenant database show 20% to 230% improvement for insertion, deletion and updation-queries. The response of the proposed approach is stable as compared to other system which degrades in terms of response time by 384% for increased number of attributes up to 50. The proposed approach is also space efficient by almost 86%. Dynamically changing cloud configurations requires adaptable database and mechanism to persist and manage data and exploit heterogeneous resources. The proposed ad hoc cloud handles heterogeneity of the involved nodes and deals with node specific granularity while decomposing workloads for efficient utilization of resources.
Conference Paper
Full-text available
Conference Paper
Software-as-a-service (SaaS) has received significant attention from software providers and users as software delivery model. Most of the existing companies are transferring their business into SaaS model. This intensely competitive environment has imposed many challenges for SaaS developers for the development process. SaaS development is a very complex process and SaaS success depends on its architecture design and development. This paper identifies important key factors from literature and provides guidelines for SaaS developers to support these factors in SaaS architecture development process. Ultimately, it will be beneficial for SaaS developers to improve the development process of SaaS application.
Conference Paper
Multi-tenancy is an architectural style to share resources amongst several tenants. It is an important facet of Cloud Computing and often considered a key element to make Software-as-a-Service (SaaS) profitable. Indeed, SaaS providers adopt multi-tenancy to optimize resource usage and to save operational costs. While literature often discusses how to develop new, green-field software with multi-tenancy, this paper focuses on adding multi-tenancy to existing, brown-field software. This is particularly relevant in the context of Cloud migration where legacy software should be moved into the Cloud. The major contribution of this paper is to present an approach to leave the application’s source code untouched, i.e., to add some new components in order to enable the application for multi-tenancy. To this end, we apply the aspect-oriented language AspectJ in an industrial case study to evaluate what can be achieved with such an approach as well as to enumerate the benefits and drawbacks in detail. In a nutshell, the approach is appropriate to handle REST applications and/or backend services. The following important facets of multi-tenancy can be achieved: Tenant management; tenant-specific authentication and data isolation among multiple tenants for various database servers and strategies; tenant-specific customization by modifying existing behavior, particularly, removing functionality but also to introduce new functionality; and as a by-product, to monitor all tenants’ activities as a prerequisite for a tenant-specific billing.
Conference Paper
Multi-tenant database is a new cloud computing paradigm that has recently attracted attention to deliver database functionalities for multiple database users to create, store, and access their databases over the internet. However, such approach raises an issue in database performance, due to the fact that the multi-tenant database is shared between multiple tenants. Therefore, this contemporary database requires a special query method to optimize different query retrievals for multiple tenants who are using the same resources of a single multi-tenant database. In this paper, we are proposing a multi-tenant query optimization method based on multi-tenant database schema called Elastic Extension Tables (EET). This method estimates the cost of different query execution plans, to determine the optimal plan. Then uses this plan to execute a tenant’s query by using a code base solution that converts multi-tenant queries into traditional database queries and executes them by using a query optimizer of any Relational Database Management System (RDBMS).
Article
As a popular technique in Cloud computing, Multi-Tenancy (MT) can significantly ease software maintenance, and improve resource utilization. To make use of the MT technique, an application may need to be transformed to be MT-enabled. This process involves finding and processing a special kind of data entities named Global Isolation Points (GIPs). Practically, finding all GIPs of an application is challenging. Traditional method involves manually browsing the application code, requiring a great deal of human effort. To solve this problem, we introduce a toolkit named Auto-MT to help find and process GIPs of an application. Auto-MT is able to find new GIPs based on their relations to known GIPs. To characterize the relation, a novel graph called Value Flow Graph (VFG) is introduced, which models the value flows of data entities. It can also be used in other scenarios, like taint analysis. We have implemented Auto-MT as an Eclipse Plug-in, and applied it to transform Roller, a widely used Java application. Experimental results show that Auto-MT saves substantial human effort, and accelerates the process of transforming applications to be MT-enabled.
Article
Multi-tenant applications are usually cloud based software services which can serve different users at the same time. This is done using single instance of applications by sharing hardware, infrastructure, data storage and virtualization. To achieve multi tenancy different approaches are there at every layer (Application, Data, hardware). Software-as-as-Service (SaaS) is a new approach for developing software, and it is characterized by its multi-tenancy architecture and its ability to provide flexible customization to individual tenant. SaaS (Software as a Service) is a modern approach to deliver large scalable enterprise software as a service on Internet. Cloud computing platform provides the scalability, availability and utility computing for services on Internet. There are many technical challenges involved in SaaS development. One of them is multi-tenancy, which allows single instance of software to serve multiple organizations by accommodating their unique requirements through configuration at the same time. The target SaaS platform is composed of the key components that supports SaaS Application execution environment that serves multiple tenant using a single service instance. An example scenario of SaaS software lifecycle is also described to explain how the target platform would be operated from development and deployment of SaaS application to configuration by tenants.
Conference Paper
Full-text available
Considering the extremely low utilization of dedicated database servers and also reducing the hardware and operational cost associated with this model of database deployment, it is more reasonable to adopt a multi-tenant database (MTD). A MTD is a way of deploying a Database as a Service (DaaS). This is gaining momentum with significant increase in the number of organizations ready to take advantage of the technology. A multi-tenant database refers to a principle where a single instance of a Database Management System (DBMS) runs on a server, serving multiple clients organizations (tenants). This is a database which provides database support to a number of separate and distinct groups of users or tenants. This technology amortises the total cost of ownership (TCO) thereby leading to reduction in per-tenant cost by increasing the scale. This paper considers the requirements and challenges of implementing MTDs. Several factors that influence the adoption of MTDs are identified. In this work, a research survey is presented that use a questionnaire while UK Oracle user group (UKOUG) members are the focus group. Thirty respondents' data were collated and carefully analysed. The primary contribution of this paper is to present to intended subscriber of MTD the degree of impact these factors has on the decision to adopt any of the MTD model.
Article
Full-text available
Cloud services provide platform for multiple users to remotely store , share and update data items. Mobile virtual environment and effective use of cloud computing made this great success. . This paper is an implemented real time web and mobile application named BookCafé using cloud database storage (common for both web and mobile) provided by Amazon web service. BookCafé is a storage where all the books will be stored with year wise and subject wise classification for student's purpose. Update's can be done at any time. They can have like laptops, smart phones, and tablet computer devices. Users of Online web application (non smart) access through user interface for signing, reading and uploading new books category wise. By uploading the android application on Google Play store, smart phone users can avail all the facilities on their handheld devices. The students either through mobile (android based) or through web, share and upload new books from anywhere in the campus by connecting to cloud.
Conference Paper
In view of the present situation of data management for intelligent transportation, this paper proposes a multi-source data organization and management method. It uses a combination of centralized and distributed organization mode, with hierarchical model of data management and query mapping conversion mechanism to achieve multi-source traffic data isolated storage and transparent management. Finally, the paper introduces the data management platform architecture and carries out the actual deployment.
Article
This paper presents a novel mechanism to cost-efficiently support multi-tenant database as a service (MTDBaaS) in cloud for small businesses. We aim at the scenarios where a large number of small tenants are served but only some of them are active simultaneously. By small tenants, we mean that a tenant may have many small-sized tables while only a small number of those tables are accessed concurrently for each query. As most MTDBaaS providers, we consolidate multiple tenants’ data into the same database management system (DBMS) to reduce the cost of operation. However, our solution distinguishes itself from the existing solutions by a novel mechanism: Load As You quERy (LAYER in short). Concretely, tenants can define and create their own tables with LAYER, and set up possible reference constraints between any two tables. A shared table is used to store all data for all tenants, but only a moderate number of working tables are maintained for answering queries from active tenants. When a new query is submitted, tables involved in the query but not yet in the DBMS will be restored: tables are created, and data are loaded to these newly-created tables. If an active tenant becomes inactive (logs out or no query is issued in a specified time period), tables belonging to the tenant could be dropped when necessary, and updates to these tables would be mirrored to the shared table for backup. We provide two implementations of the LAYER mechanism, one is LAYER-MySQL, which is based on the traditional disk-based relational DBMS MySQL, and can yield high consolidation and acceptable performance; the other is LAYER-VoltDB, which is based on the in-memory relational DBMS VoltDB, and can provide much higher performance. Experimental results validate the feasibility of the proposed mechanism.
Conference Paper
Multi-tenant applications are usually cloud based software services which can serve different users at the same time. This is done using single instance of applications by sharing hardware, infrastructure, data storage and virtualization. To achieve multi tenancy different approaches are there at every layer (Application, Data, hardware). Software-as-as-Service (SaaS) is a new approach for developing software, and it is characterized by its multi-tenancy architecture and its ability to provide flexible customization to individual tenant. SaaS (Software as a Service) is a modern approach to deliver large scalable enterprise software as a service on Internet. Cloud computing platform provides the scalability, availability and utility computing for services on Internet. There are many technical challenges involved in SaaS development. One of them is multi-tenancy, which allows single instance of software to serve multiple organizations by accommodating their unique requirements through configuration at the same time. The target SaaS platform is composed of the key components that supports SaaS Application execution environment that serves multiple tenant using a single service instance. An example scenario of SaaS software lifecycle is also described to explain how the target platform would be operated from development and deployment of SaaS application to configuration by tenants.
Article
Full-text available
Software as a service is frequently offered in a multi-tenant style, where customers of the application and their end-users share resources such as software and hardware among all users, without necessarily sharing data. It is surprising that, with such a popular paradigm, little agreement exists with regard to the definition, domain, and challenges of multi-tenancy. This absence is detrimental to the research community and the industry, as it hampers progress in the domain of multi-tenancy and enables organizations and academics to wield their own definitions to further their commercial or research agendas.
Article
In today's era all the enterprises are moving towards automation whether they are large or small. So, keeping in view the changing trends and the interests of the enterprises software vendors are trying to accommodate and facilitate the organizations with the best possible solution within its clients' financial capacity. Keeping in view the need SaaS vendors offered a suitable solution via its multi-tenant approach which is viable solution for SMEs as they are financially limited with the resources and yearning for cost effective ERP solutions within their organizations. Multi-tenancy is an approach through which a customized and reliable solution being delivered to various customers with the single application instance. In this article in detail we have tried to study that how SaaS with its multi-tenancy approach along with efficient utilization of SOA leveraging the enterprises. In the reflection of all the discussion carried out in this paper we have proposed an open multi-tenant architectural blueprint based on a real world scenario.
Conference Paper
Multi-tenant database is a new cloud computing paradigm that has recently attracted attention to deliver database functionalities for multiple tenants to create, store, and access their databases over the internet. This multi-tenant database should be highly configurable and secure to meet tenants' expectations and their different business requirements. In this paper, we propose an architecture design to build an intermediate database layer to be used between software applications and Relational Database Management Systems (RDBMS) to store and access multiple tenants' data in the Elastic Extension Table (EET) multi-tenant database schema. This database layer combines multi-tenant relational tables and virtual relational tables and makes them work together to act as one database for each tenant. This architecture design is suitable for multi-tenant database environment that can run any business domain database by using a combination of a database schema, which contains shared physical structured tables and virtual structured tenant's tables. Further, this multi-tenant database architecture design can be used as a base to build software applications in general and Software as a Service (SaaS) applications in particular.
Conference Paper
Full-text available
A Multi-tenant database (MTD) is a way of deploying a Database as a Service (DaaS). This is gaining momentum with significant increase in the number of organizations ready to take advantage of the technology. A multi-tenant database refers to a principle where a single instance of a Database Management System (DBMS) runs on a server, serving multiple clients organizations (tenants). This is a database which provides database support to a number of separate and distinct groups of users or tenants. This concept spreads the cost of hardware, software and other services to a large number of tenants, therefore significantly reducing per tenant cost. Three different approaches of implementing multi-tenant database have been identified. These methods have been shown to be increasingly better at pooling resources and also processing administrative operations in bulk. This paper reports the requirement of multi-tenant databases, challenges of implementing MTD, database migration for elasticity in MTD and factors influencing the choice of models in MTD. An insightful discussion is presented in this paper by grouping these factors into four categories. This shows that the degree of tenancy is an influence to the approach to be adopted and the capital and operational expenditure are greatly reduced in comparison with an on-premises solution
Conference Paper
Analytical solutions are considered as increasingly important for modern enterprises. Currently, systematical adoption of analytical solutions is limited to only a small set of large enterprises, as the deployment cost is high due to high performance hardware requirement and expensive analytics software. Moreover, such on-premises solutions are not suitable for the occasional analytics consumers. In order to accelerate the prevalence of analytical solutions, this paper explores the feasibility of leveraging SaaS (Software-as-a-Service) delivery model to provide analytics capabilities as services in a cost-effective way. The main contributions of our work include: (1) proposing a framework to enable enterprise tenants to consume analytics capabilities as services; (2) developing a method to enhance existing analytics platform to support multi-tenancy so that a single software instance can effectively support multiple concurrent tenants; (3) designing an SLA (Service Level Agreement) customization mechanism to satisfy the diverse analytics capability demands of tenants. A prototype system has been developed to evaluate the feasibility of our approach.
Conference Paper
Software as a service (SaaS) is attracting increasing attention and leading business to migrate the existing traditional web application onto cloud. With the transition from traditional software to SaaS, the most important thing in the technical architecture is characterized by single-tenant model to multi-tenant model, and multi-tenant model is essentially faced with the challenge between tenant-unrelated of the business component and the global access of the data. This paper analyzes the migration method for business component and the essential problems that the business component migration faced with. In order to solve the problems, we introduce memory database as the implementation mechanism of distinguishing table instances for multi-tenant data isolation, a Data Relationship Engine to realize the relationship between the business components and multi-tenant database, and present a multi-tenant database development framework for business component migration in SaaS. An experiment has been conducted to validate the usability and correctness of our migration method and database development framework.
Conference Paper
Today we see Smartphone's everywhere which run different kinds of applications. This has made life of the user easier as many things are available with just a click. However many applications are unable to execute efficiently or provide high-end features due to shortage of resources for computation, data storage and battery capacity of the device. We present a framework designed for speeding up the computational tasks which require heavy resources. For this we propose a cloud based virtualised execution environment which can store the data in a secure manner. This framework shall execute Android applications using an Android Emulator. Hence this framework will aid an android developer in using the power of the cloud yet not being required to build web services and manage the cloud.
Conference Paper
As a Platform as a Service (PaaS) designer, we should satisfy customers' demands of resources and to save resources in a cloud at the same time. In PaaS, one of the main problems is that if one of virtual machines' (VM) workload increases fast in a host, other VMs' performance characteristics may be influenced negatively. To solve the performance isolation problem, this paper gives a method. In this method, we use an algorithm to forecast all VMs' resources usage at first. Then we find which VMs' workloads may increase fast in future. We move these VMs to hosts which have more resources and other VMs' performance characteristics will not be affected at the same time. So the main problem now is which hosts we should use to move these VMs as mentioned above to. In this paper, we use Dynamic Programming method to solve this problem. So, with all of these algorithms, in this paper, we propose a strategy to solve Performance Isolation problem in PaaS.
Article
The cloud computing paradigm enables the provision of costefficient IT-services by leveraging economies of scale and sharing data center resources efficiently among multiple independent applications and customers. However, the sharing of resources leads to possible interference between users and performance problems are one of the major obstacles for potential cloud customers. Consequently, it is one of the primary goals of cloud service providers to have different customers and their hosted applications isolated as much as possible in terms of the performance they observe. To make different offerings, comparable with regards to their performance isolation capabilities, a representative metric is needed to quantify the level of performance isolation in cloud environments. Such a metric should allow to measure externally by running benchmarks from the outside treating the cloud as a black box. In this paper, we propose three different types of novel metrics for quantifying the performance isolation of cloud-based systems and a simulation-based case study applying these metrics in the context of a Softwareas-a-Service (SaaS) scenario where different customers (tenants) share one single application instance. We consider four different approaches to achieve performance isolation and evaluate them based on the proposed metrics. The results demonstrate the effectiveness and practical usability of the proposed metrics in quantifying the performance isolation of cloud environments.
Article
This paper introduces readers to the concept of software as a service (SaaS) and helps them evaluate a business case for where to use SaaS in the enterprise. While the underlying concept behind SaaS — renting your business application as a service — is not new, changes in technology and the software landscape now make this model a viable and smart alternative to licensed software. By looking at the history of enterprise computing, the author illustrates why this new wave in computing models represents a natural evolution in technology. More importantly, by examining the hidden costs behind licensed software or the total cost of ownership, the author helps the reader better evaluate the trade-offs between licensed and hosted software.Journal of Digital Asset Management (2005) 1, 32-39; doi:10.1057/palgrave.dam.3640007
Conference Paper
This is a position paper on multi-tenant databases. As motivation, it first describes the emerging marketplace of hosted enterprise services and the importance of using multi-tenancy to handle high traffic volumes at low cost. It then outlines the main requirements on multi-tenant databases: scale up by consolidating multiple tenants onto the same server and scale out by providing an administrative framework that manages a farm of such servers. Finally it describes three approaches to implementing multi-tenant databases and compares them based on some simple experiments. The main conclusion is that existing database vendors need to enhance their products to better support multi-tenancy.
Conference Paper
As service providers strive to improve the quality and efficiency of their IT (information technology) management services, the need to adopt a standard set of tools and processes becomes increasingly important. Deploying multi-tenant capable tools is a key part of this standardization, since a single instance can be used to manage multiple customer environments, and multi-tenant tools have the potential to significantly reduce service-delivery costs. However, most tools are not designed for multi-tenancy, and providing this support requires extensive re-design and re-implementation. In this paper, we explore the use of virtualization technology to enable multi-tenancy for systems and network management tools with minimal, if any, changes to the tool software. We demonstrate our design techniques by creating a multi-tenant version of a widely-used open source network management system. We perform a number of detailed profiling experiments to measure the resource requirements in the virtual environments, and also compare the scalability of two multi-tenant realizations using different virtualization approaches. We show that our design can support roughly 20 customers with a single tool instance, and leads to a scalability increase of 60–90% over a traditional design in which each customer is assigned to a single virtual machine.
Conference Paper
Multi-tenancy technology is one of key competencies for network delivery services to achieve higher profit margin by leveraging the economic of scale. This paper explores the requirements and challenges of the native multi-tenancy pattern which have the potential of serving a large volume of clients simultaneously. We provide a framework with a set of multi-tenancy common services to help people design and implement a high quality native multi-tenant application more efficiently. Due to the essential requirement to guarantee service quality with high share efficiency, we present approaches and principles to support better isolations among tenants in many aspects such as security, performance, availability, administration etc. We have already achieved many hand on experiences by applying parts of the design and principles into a real multi-tenant application, and identified some future research points to better safeguard the quality of service for each tenant.
Conference Paper
The IT Infrastructure Library (ITIL) provides guidance for IT service management but does not specifically address the challenges that Service Providers face. A Service Provider is an enterprise whose business is to manage the IT business of other enterprises. To manage its cost the Service Provider must host multiple diverse customers in a shared environment. The customers have unique business requirements, such as customizations of the processes based on customer policies and role, which the Service Provider must address while supporting the services in such a way that they provide functionality that appropriately spans organizational units, satisfying the customers' goals to be ITIL compliant and meeting the economic pressures of constantly reducing cost. The paper considers the impact that hosting multiple customers in a shared environment has on data segregation, process definition, and security, explores different models of Service Provider operations and outlines future work needed in this area.
multi-tenant database performance tests results -litwarehr
  • Frederick Chong
  • Gianpaolo Carraro
Frederick Chong and Gianpaolo Carraro, " multi-tenant database performance tests results -litwarehr ", Microsoft Corporation, http://www.codeplex.com/LitwareHR/Release/Project Releases.aspx?ReleaseId=8440, October 2007
Software as a Service (SaaS): An Enterprise Perspective
  • Gianpaolo Carraro
Gianpaolo Carraro and Frederick Chong, " Software as a Service (SaaS): An Enterprise Perspective ", Microsoft Corporation, http://msdn2.microsoft.com/, October 2006
Multiple-Tenancy Hosted Applications: The Death and Rebirth of the Software Industry
  • Greg Gianforte
Greg Gianforte, " Multiple-Tenancy Hosted Applications: The Death and Rebirth of the Software Industry ", RightNow Technologies Inc., ww.rightnow.com, 2005