Font Size: a A A

ReSearch On Some Key Issues Of Multiple Tenants In SAAS Application

Posted on:2013-06-19Degree:DoctorType:Dissertation
Country:ChinaCandidate:P L GuFull Text:PDF
GTID:1228330374999635Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
The development of IaaS technology in cloud computing has brought a large number of cloud clients including the PaaS and SaaS providers. To the IaaS providers there is no doubt that software as a service (SaaS) is a more general infrastructure technology. This convenient software delivery and payment for cloud computing is becoming a new platform for enterprises and PC. Due to the flexibility, scalability, and cost-effectiveness of the SaaS model, it has been increasingly adopted by many enterprise software systems. Multi-tenant technology is the key attribute of SaaS applications. That is, SaaS applications must be able to support multi-tenant so SaaS vendors can reduce their software development costs, hardware acquisition costs, training costs, and upgrade and maintenance costs with minimal infrastructure costs to get the most profit. At the same time, it would allow customers to pay for SaaS application on demand with a lower application threshold and risk. But to have a software support multi-tenant is not easy. It needs not only to make the appropriate changes to its software architecture but also to provide a special design for its database structure to insure security and isolation. Therefore, with the combination of973project "The Research on the Basis of Trusted Network and Pervasive services--Research on Theory, Model and Key Technology for Pervasive Service", the National Natural Science Foundation "Research on Intelligent Active Service Theory and Key Technology for Mobile Internet Users", and "Behavior Adaptation Mechanisms and Algorithms for Large-grained Network Services Collaborative ", and "Afficient and Scalable Cloud Services System Architecture" project, our research work is mainly about scalability architecture for multi-tenant application, data storage, improvement of application performance. The paper’s main work is concentrated in the following areas:1) With the popularity of the SOA architecture and the rapid development of Web services, more and more enterprises are using the ESB platform. The ESB is a message-based distributed integration architecture but is not a multi-ESB architecture. Its framework is not suitable for cloud computing environment. It also shows that it cannot support large-scale data interaction in practical applications. So, in order to make our ESB platform services have scalable architecture to support more tenants and handle large-scale multi-tenant message interaction, we propose a multiple ESBs communication method based on WS-Notification specification and cloud queue model. This method for exchanging data among multiple ESBs has a key problem. If the exchange can’t be supported, distributed interaction would not be implemented among multiple ESBs. To solve this problem, we designed and implemented a Web Service notification broker and Subscribe Request Queue cloud service that supports real-time communication among multiple ESBs. Through theoretical analysis and practical application, these two services allow our system to support more tenants with better scalability.2) On the basis of this platform, we further propose a mechanism of topic-based publication and subscription to run a subscription-driven service. In our framework, composition services deployed on multi-ESB or different business processes can be executed if they subscribe to the appropriate topic by a certain order. Meanwhile, if a service wants to quit a business process, it only needs to cancel the topic subscription, and if they want to join, they can subscribe. In short, services can join or leave processes dynamically at run-time. In this way, our experiment demonstrates better efficiency of business execution.3) As a key technology in the SaaS service, multi-tenant technology aims to support a large number of customers, and SaaS service providers also hope to provide assistance. SaaS service providers must be able to accept and deal with customer requests as much as possible. With the development of cloud computing, SaaS application providers have to face a flood of access requests of multi-tenant, and a large number of access requests, especially for the competition resources such as databases, etc., will be a key factor in limiting the SaaS system capacity. We use the idea of network coding to discuss the request and response of bottleneck resources in our multiplexing processing method. A multiplexing method based on multi-tenant’s request is used to expand the SaaS system capacity. In this paper, we primarily focus on two key issues:First, how to share requests and responses, second, how to separate your response from a shared reply. For request multiplexing, different sharing strategies are used for different competing resources. About reply sharing, we use tenants’ID, request information, and response information for the organization of information between the tenants in order to distinguish the data among different tenants. After the system encoding of the returned response, we use OR operator to decode the data in order to shield the data of unrelated tenants and return the response to the tenant. Furthermore, we give a related request multiplexing description, encoding algorithm description, and decoding algorithm description. In conclusion, our experiment shows a better effect on system capacity.4) We studied the design of multi-tenant data storage mode. At present, there are two storage models based on the shared schema:key-value method and metadata-driven approach. The data storage mode mainly includes key-value method and metadata-driven approach. Metadata-driven approach to data management plays an important role in the management of multi-tenant SaaS application customization. SaaS system establishes the correspondence between tenants and custom by the metadata tables. But in the customization process of the tenants, we can see that different tenants can customize the same object. For the metadata storage, due to the nature of the multi-tenant, it can result in a large number of custom objects duplicated storage. In addition, in the current data storage mode, which is still overly dependent on metadata, you need to constantly read the metadata information to find complete business data. So, the efficiency of metadata table is also one of the factors of system efficiency. Based on this, we discussed data storage mode in the environment of multi-tenant. We divided metadata into basic metadata, extended metadata, and tenants’metadata. We defined a basic metadata template, and then used the template to extract a common shared data. Thus, the basic template data can be materialized in order to improve access efficiency of meta-data and application.According to our definition of metadata classification, we can see that, except for the differences caused by tenants metadata, the differences of customization among tenants mainly come from the basic template customization and the non-difference data cause data redundancy stored. For this redundancy phenomenon, we propose a metadata-based multi-tenants differences data storage mode and provide data storage and access approach. Algorithms descriptions are given based on the difference in storage. According to our space efficiency analysis, we can see that in the case of the large amounts of data, our method reduces redundancy with a considerable effect.
Keywords/Search Tags:Multiple tenants, SaaS application, ESB architecher, requestmultiplexing, differential storage, Web Service Notification
PDF Full Text Request
Related items