Skip to main content
main-content

Tipp

Weitere Kapitel dieses Buchs durch Wischen aufrufen

Erschienen in:
Buchtitelbild

2021 | OriginalPaper | Buchkapitel

A Methodology for Tenant Migration in Legacy Shared-Table Multi-tenant Applications

verfasst von : Guillaume Rosinosky, Samir Youcef, François Charoy, Etienne Rivière

Erschienen in: Distributed Applications and Interoperable Systems

Verlag: Springer International Publishing

share
TEILEN

Abstract

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.
Fußnoten
1
Database sharding, e.g., using PL/Proxy [22] allows splitting the content of tables over multiple database nodes, but it is not elastic: changing the sharding plan requires to restart the database. Database specific extensions such as the Citus extension for Postgresql or Vitess for Mysql permit automatic scaling. However, they imply switching to specific engines, with their limitations and limited support.
 
2
Foreign Data Wrappers availability is vendor-dependent. Postgres, MySQL, and MariaDB support the ISO standard. Db2, SQL Server and Oracle do not support it, but offer similar features (with respectively distributed databases, linked servers, and database link). Support of distributed transactions is also vendor-dependent: they are not supported in MySQL, are only partially supported in PostgreSQL and the Open Source engine FederatedX of MariaDB, and fully supported in commercial engines such as Oracle, SQL Server, DB2, and the Spider engine of MariaDB.
 
3
This inconvenience can be addressed by using database triggers emulating the integrity constraints.
 
Literatur
1.
Zurück zum Zitat Barker, S., Chi, Y., Moon, H.J., Hacigümüş, H., Shenoy, P.: Cut me some slack: latency-aware live migration for databases. In: 15th International Conference on Extending Database Technology, EDBT. ACM (2012) Barker, S., Chi, Y., Moon, H.J., Hacigümüş, H., Shenoy, P.: Cut me some slack: latency-aware live migration for databases. In: 15th International Conference on Extending Database Technology, EDBT. ACM (2012)
2.
Zurück zum Zitat Chong, F., Carraro, G., Wolter, R.: Multi-tenant data architecture, pp. 14–30. MSDN Library, Microsoft Corporation (2006) Chong, F., Carraro, G., Wolter, R.: Multi-tenant data architecture, pp. 14–30. MSDN Library, Microsoft Corporation (2006)
3.
Zurück zum Zitat Das, S., Agrawal, D., El Abbadi, A.: ElasTraS: an elastic, scalable, and self-managing transactional database for the cloud. ACM Trans. Database Syst. 38(1), 1–45 (2013) MathSciNetCrossRef Das, S., Agrawal, D., El Abbadi, A.: ElasTraS: an elastic, scalable, and self-managing transactional database for the cloud. ACM Trans. Database Syst. 38(1), 1–45 (2013) MathSciNetCrossRef
5.
Zurück zum Zitat Di Francesco, P., Lago, P., Malavolta, I.: Migrating towards microservice architectures: an industrial survey. In: International Conference on Software Architecture, ICSA. IEEE (2018) Di Francesco, P., Lago, P., Malavolta, I.: Migrating towards microservice architectures: an industrial survey. In: International Conference on Software Architecture, ICSA. IEEE (2018)
6.
Zurück zum Zitat Elmore, A.J., Arora, V., Taft, R., Pavlo, A., Agrawal, D., El Abbadi, A.: Squall: fine-grained live reconfiguration for partitioned main memory databases. In: ACM SIGMOD International Conference on Management of Data (2015) Elmore, A.J., Arora, V., Taft, R., Pavlo, A., Agrawal, D., El Abbadi, A.: Squall: fine-grained live reconfiguration for partitioned main memory databases. In: ACM SIGMOD International Conference on Management of Data (2015)
9.
Zurück zum Zitat Kalra, S., Prabhakar, T.: Multi-tenant quality attributes to manage tenants in SaaS applications. In: 2020 IEEE International Conference on Software Architecture Companion (ICSA-C), pp. 83–88. IEEE (2020) Kalra, S., Prabhakar, T.: Multi-tenant quality attributes to manage tenants in SaaS applications. In: 2020 IEEE International Conference on Software Architecture Companion (ICSA-C), pp. 83–88. IEEE (2020)
10.
Zurück zum Zitat Lin, Y.S., Pi, S.K., Liao, M.K., Tsai, C., Elmore, A., Wu, S.H.: MgCrab: transaction crabbing for live migration in deterministic database systems. Proc. VLDB Endow. 12(5), 597–610 (2019) CrossRef Lin, Y.S., Pi, S.K., Liao, M.K., Tsai, C., Elmore, A., Wu, S.H.: MgCrab: transaction crabbing for live migration in deterministic database systems. Proc. VLDB Endow. 12(5), 597–610 (2019) CrossRef
11.
Zurück zum Zitat Melton, J., Michels, J.E., Josifovski, V., Kulkarni, K., Schwarz, P.: SQL/MED: a status report. SIGMOD Rec. 31(3), 81–89 (2002) CrossRef Melton, J., Michels, J.E., Josifovski, V., Kulkarni, K., Schwarz, P.: SQL/MED: a status report. SIGMOD Rec. 31(3), 81–89 (2002) CrossRef
14.
Zurück zum Zitat Moniruzzaman, A.B.M.: NewSQL: towards next-generation scalable RDBMS for online transaction processing (OLTP) for big data management. Int. J. Database Theory Appl. 7(6), 121–130 (2014) CrossRef Moniruzzaman, A.B.M.: NewSQL: towards next-generation scalable RDBMS for online transaction processing (OLTP) for big data management. Int. J. Database Theory Appl. 7(6), 121–130 (2014) CrossRef
18.
Zurück zum Zitat Schaffner, J., Jacobs, D., Kraska, T., Plattner, H.: The multi-tenant data placement problem. In: 4th International Conference on Advances in Databases, Knowledge, and Data Applications, DBKDA (2012) Schaffner, J., Jacobs, D., Kraska, T., Plattner, H.: The multi-tenant data placement problem. In: 4th International Conference on Advances in Databases, Knowledge, and Data Applications, DBKDA (2012)
19.
Zurück zum Zitat Shah, A., Banakar, V., Shastri, S., Wasserman, M., Chidambaram, V.: Analyzing the impact of GDPR on storage systems. In: 11th USENIX Workshop on Hot Topics in Storage and File Systems. HotStorage (2019) Shah, A., Banakar, V., Shastri, S., Wasserman, M., Chidambaram, V.: Analyzing the impact of GDPR on storage systems. In: 11th USENIX Workshop on Hot Topics in Storage and File Systems. HotStorage (2019)
21.
Zurück zum Zitat Shute, J., et al.: F1: a distributed SQL database that scales. Proc. VLDB Endow. 6(11) (2013) Shute, J., et al.: F1: a distributed SQL database that scales. Proc. VLDB Endow. 6(11) (2013)
23.
Zurück zum Zitat Taft, R., Lang, W., Duggan, J., Elmore, A.J., Stonebraker, M., DeWitt, D.: STeP: scalable tenant placement for managing database-as-a-service deployments. In: 7th ACM Symposium on Cloud Computing, SoCC (2016) Taft, R., Lang, W., Duggan, J., Elmore, A.J., Stonebraker, M., DeWitt, D.: STeP: scalable tenant placement for managing database-as-a-service deployments. In: 7th ACM Symposium on Cloud Computing, SoCC (2016)
24.
Zurück zum Zitat Taft, R., et al.: CockroachDB: the resilient geo-distributed SQL database. In: ACM SIGMOD International Conference on Management of Data (2020) Taft, R., et al.: CockroachDB: the resilient geo-distributed SQL database. In: ACM SIGMOD International Conference on Management of Data (2020)
27.
Zurück zum Zitat Wang, F., Li, J., Zhang, J., Huang, Q.: Research on the multi-tenant placement genetic algorithm based on eucalyptus platform. In: 12th International Conference on Computational Intelligence and Security, CIS. IEEE (2016) Wang, F., Li, J., Zhang, J., Huang, Q.: Research on the multi-tenant placement genetic algorithm based on eucalyptus platform. In: 12th International Conference on Computational Intelligence and Security, CIS. IEEE (2016)
28.
Zurück zum Zitat Wang, Z.H., Guo, C.J., Gao, B., Sun, W., Zhang, Z., An, W.H.: A study and performance evaluation of the multi-tenant data tier design patterns for service oriented computing. In: International Conference on e-Business Engineering. IEEE (2008) Wang, Z.H., Guo, C.J., Gao, B., Sun, W., Zhang, Z., An, W.H.: A study and performance evaluation of the multi-tenant data tier design patterns for service oriented computing. In: International Conference on e-Business Engineering. IEEE (2008)
29.
Zurück zum Zitat Weissman, C.D., Bobrowski, S.: The design of the force.com multitenant internet application development platform. In: ACM SIGMOD International Conference on Management of Data (2009) Weissman, C.D., Bobrowski, S.: The design of the force.com multitenant internet application development platform. In: ACM SIGMOD International Conference on Management of Data (2009)
Metadaten
Titel
A Methodology for Tenant Migration in Legacy Shared-Table Multi-tenant Applications
verfasst von
Guillaume Rosinosky
Samir Youcef
François Charoy
Etienne Rivière
Copyright-Jahr
2021
DOI
https://doi.org/10.1007/978-3-030-78198-9_1

Premium Partner