Degrees of tenant isolation for cloud-hosted software services: a cross-case analysis

Abstract 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 the...

Full description

Bibliographic Details
Main Authors: Laud Charles Ochei, Julian M. Bass, Andrei Petrovski
Format: Article
Language:English
Published: SpringerOpen 2018-12-01
Series:Journal of Cloud Computing: Advances, Systems and Applications
Subjects:
Online Access:http://link.springer.com/article/10.1186/s13677-018-0121-8
id doaj-7b20623626b143b19b5300da3e35219a
record_format Article
spelling doaj-7b20623626b143b19b5300da3e35219a2020-11-25T01:19:16ZengSpringerOpenJournal of Cloud Computing: Advances, Systems and Applications2192-113X2018-12-017113910.1186/s13677-018-0121-8Degrees of tenant isolation for cloud-hosted software services: a cross-case analysisLaud Charles Ochei0Julian M. Bass1Andrei Petrovski2Robert Gordon University, School of Computing and Digital MediaUniversity of Salford, School of Computing, Science and EngineeringRobert Gordon University, School of Computing and Digital MediaAbstract 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, commonalities, 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 customization 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.http://link.springer.com/article/10.1186/s13677-018-0121-8MultitenancyDegree of isolationCloud patternsGlobal software developmentSoftware development toolsCloud-hosted software services
collection DOAJ
language English
format Article
sources DOAJ
author Laud Charles Ochei
Julian M. Bass
Andrei Petrovski
spellingShingle Laud Charles Ochei
Julian M. Bass
Andrei Petrovski
Degrees of tenant isolation for cloud-hosted software services: a cross-case analysis
Journal of Cloud Computing: Advances, Systems and Applications
Multitenancy
Degree of isolation
Cloud patterns
Global software development
Software development tools
Cloud-hosted software services
author_facet Laud Charles Ochei
Julian M. Bass
Andrei Petrovski
author_sort Laud Charles Ochei
title Degrees of tenant isolation for cloud-hosted software services: a cross-case analysis
title_short Degrees of tenant isolation for cloud-hosted software services: a cross-case analysis
title_full Degrees of tenant isolation for cloud-hosted software services: a cross-case analysis
title_fullStr Degrees of tenant isolation for cloud-hosted software services: a cross-case analysis
title_full_unstemmed Degrees of tenant isolation for cloud-hosted software services: a cross-case analysis
title_sort degrees of tenant isolation for cloud-hosted software services: a cross-case analysis
publisher SpringerOpen
series Journal of Cloud Computing: Advances, Systems and Applications
issn 2192-113X
publishDate 2018-12-01
description Abstract 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, commonalities, 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 customization 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.
topic Multitenancy
Degree of isolation
Cloud patterns
Global software development
Software development tools
Cloud-hosted software services
url http://link.springer.com/article/10.1186/s13677-018-0121-8
work_keys_str_mv AT laudcharlesochei degreesoftenantisolationforcloudhostedsoftwareservicesacrosscaseanalysis
AT julianmbass degreesoftenantisolationforcloudhostedsoftwareservicesacrosscaseanalysis
AT andreipetrovski degreesoftenantisolationforcloudhostedsoftwareservicesacrosscaseanalysis
_version_ 1725139154692472832