Font Size: a A A

Research On Placement Mechanism For SaaS Multi-Tenant Data

Posted on:2016-04-22Degree:DoctorType:Dissertation
Country:ChinaCandidate:X N LiFull Text:PDF
GTID:1108330461485497Subject:Computer software and theory
Abstract/Summary:Request the full-text of this thesis
As one of the three service modes of cloud computing, the Software as a Service (SaaS) has changed the traditional mode of people’s using software because it rents by demand, has low cost and is easy to be exploded. Therefore, gradually, SaaS becomes an important way for small and medium sized enterprises to apply advanced technology. SaaS, whose future is widely promising, is considered as the weapon to promote the information construction of enterprises.Multi-tenant is the key technology to achieve SaaS. As the commonest cloud service SaaS whose two core characteristics are the Single instance Multi-tenancy and the dynamic adaptation with the multi-tenant’s requirement. The SaaS service providers adapt one-to-many mode of software delivery, which means thousands of tenants could share the same application and the business data is stored in the sharing database. However, as the number of tenants and data increase dramatically, the ability of single node becomes a bottleneck. When tenants need more storage space and service with higher quality, they have to rely on cloud computing architecture to obtain the dynamic extension of system’s scale.The appearance of cloud database provides a nearly infinite extensional opportunity for multi-tenant data placement and data service with large scale. However, the cloud database at present is usually based on DaaS (Data as Service) instead of designing for SaaS application. Thus, it could not recognize the multi-tenant characteristic on the application layer, not guarantee the effective running of SaaS application and satisfy the user experience of multi-tenant. All of these challenge the transformation from SaaS multi-tenant data to multiple nodes in the cloud, which reflects on the following aspects. (1) How to place the SaaS multi-tenant data into multiple nodes in the cloud effectively and reasonably based on the resilience of data nodes in cloud architecture. The strategy of cloud data placement at present does not include the characteristic of SaaS. The characteristic of application layer tenants as independent individuals is ignored, which causes the mix placement of multi-tenant data, the decentralization of single tenant data and the rising cost of data access. Therefore, in order to place SaaS multi-tenants data effectively and achieve the dynamic extension of the system, we should introduce the characteristic of multi-tenant data to the management of cloud data. (2) The lack of effective mechanism about the partition of SaaS multi-tenant data. Reasonable division is the key step to realize the extensional architecture in the cloud and support the placement on multiple nodes. The traditional division of database and the partition in the cloud data management at present are difficult to be expanded. As a result, the support for transactional workloads is limited. On the other hand, it does not introduce the characteristic of SaaS multi-tenant, which makes it easy to decrease the cost of distributed transaction ineffectively. With the dynamic increase of system scale, the data of one tenant would be stored in a node or several node in the cloud. It is important to partition the multi-tenant data based on sharing storage reasonably and decrease the cost of distributed transaction. (3) The lack of flexible mechanism to maintain SaaS multi-tenant data replicas consistency. In the SaaS mode, the requirement of tenants is various. Not only would it satisfy the various requirement about consistency, but also it would add huge loads to the database system if we adapt a static and single strategy to constraint all tenant data. Therefore, only if we take multi-tenant into consideration, make consistency mechanism reasonably, keep balance between the consistency, availability and performance, could we promote the development of SaaS mode.This thesis mainly aims at the problem of placing SaaS multi-tenant data into multi notes in the cloud dynamically. In addition, the thesis does a deep research on the mechanism of dynamic placement of multi-tenant data, the strategy of partition based on sharing mode and the maintenance of data replica’s consistency. The main contribution of this thesis can be listed below.(1) A kind of mechanism aimed at dynamic placement of data copy for SaaS multi-tenant is provided. The problem that the cost of consistency maintenance increases and the load of nodes is unbalanced, which caused by the lack of support for the characteristic of multi-tenant can be solved. By the dynamic adjusted mechanism, it could maintain the performance and save the resources of the system.The thesis makes a deep analysis about the influence of data placement. Then we build the weight function which affects the placement between nodes. Based on topological relationship between SaaS application nodes and data storage nodes and the placement weight function, we build multi-tenant data placement model and design the algorithm of it. Then we get the most optimized node set of data placement, guarantee the balance of loads between nodes and decrease the update cost of data access and consistency. According to different stages during the development of system, the thesis proposes different placement strategies for initial data, new data of tenants and data of new tenants. For the variation of system load, the thesis researches the dynamic mechanism of data placement. Through partition the multi-tenant data, we adjust the position of placement, maintain the performance of the system, save the resources and realize the dynamic data placement in the cloud effectively. The result of experiments indicates that the placement in the thesis guarantees the multi-tenant data storage system a better performance.(2) A multi-tenant data partition model and algorithm is proposed, which solves the problem that data partition would produce lots of distributed transactions caused by the unconsciousness SaaS application tenants during the process of the transformation from single node to multiple nodes in the cloud.As the number of tenants and data increase, the single node becomes the bottleneck of the whole system. Through data partition, the scale of the system could be expanded. The thesis puts forward a multi-tenant data partition model with three-layer structure, named tenant layer, group layer and tenant partition layer respectively. Taking advantage of the correlation group algorithm, the data of a tenant can be divided into several new partitions, called group in the thesis.Every group includes several tables with high relevance. Then in the unit od group, in the weight of transaction access characteristic, we abstract photos and get several tenant partition through stoer-wagner algorithm. During the process of partition, we make sure that the number of distributed transactions between tenant partitions is smallest. At last, according to the choice of destination node in data placement mechanism, we determine the tenant and its partition that has to be expanded to the new nodes after partition. In this way, we realize the dynamic extension of multi-tenant data based on share storage. Meanwhile, the cost of distribution can be decreased. The result of experiments indicates that, compared with other common data partition technologies, the number of distributed transactions decreases obviously, which guarantees the effective running of SaaS application.The thesis puts forward a kind of mechanism to maintain the consistency of SaaS multi-tenant data replicas automatically and solves the problem that the consistency strategy from cloud storage constraint all tenant data, which adds huge loads on the database system and cannot satisfy the requirement of diversification.(3) The thesis takes data, SaaS application and multi-tenant into consideration, analyzes the factors that affect the requirement level of data consistency and defines it formally. In addition, the thesis proposes the mechanism to maintain the consistency of SaaS multi-tenant data copies automatically, including four classes of consistency requirement. During the running of the system, according to the change of characteristic variables and different conditions of reading and writing, it could choose different mechanism dynamically and keep balance among consistency, usability and performance, based on strong consistency, weak consistency, and the compromise between them. The thesis sets detailed strategies to maintain the consistency and proposes a logical management model named Cohort for multi-tenant data copies under the condition of share storage. By referring Paxos algorithm, combined with the characteristic of multi-tenant, the thesis introduces metadata to describe queue and determine the way to realize data update and data access between copies in Cohort among strong consistency, weak consistency and the compromise between them. The experiments shows that the mechanism to maintain the consistency of data copies automatically adapts the characteristic of multi-tenant better.
Keywords/Search Tags:SaaS, Multi-tenant, data placement, data partition, consistency
Request the full-text of this thesis
Related items