A Multi-tenant architecture is a cost optimization for Software as a Service, where customers, also referred to as tenants are consolidated into the same server. The main idea of this architecture is to consolidate as many tenants as possible into the same server to reduce the total cost for the service provider. However, the contention of shared resources can lead to reduced performance for the tenants. One shared resource between the tenants is the data-layer.This thesis aims to analyze and to do a performance evaluation of different data-layer designs in a Multi-tenant architecture. The thesis compares three data-layer designs implemented in a RDBMS.An experiment was performed to evaluate the transactions per secondfor tenants when both the amount of data and the number of tenants increase. The evaluations were computed for the Create, Read, Update and Delete operations, also known as the CRUD-operations.Three data-layer designs were tested in the experiment; Shared table design, where tenants share the same database system as well as the tables, Separated table design, where tenants share the same database system but store and query data to their own private tables and Oracle Multi-tenant, where each tenant gets its own database.The experiment indicates that the Oracle Multi-tenant has the highest performance while the Shared table design suffers when both the number of tenants and the amount of data increase. / Multi-tenant arkitektur är en kostnadsoptimering för mjukvara som tillhandahålls över ett nätverk. Användarna, tenants är då betjänade av samma serverdator. Uppdraget för serverdatorn är att betjäna så många tenants som möjligt för att reducera kostnader för mjukvaruägaren. Men att dela resurser mellan tenants kan leda till försämrad prestanda. En delad resurs mellan tenants är dataskiktet.Målet med denna uppsats är att göra en analys och ett prestandatest av olika uppsättningar av dataskikt i en Multi-tenant arkitektur. Uppsatsen fokuserar endast på olika uppsättningar i ett RDBMS.Ett experiment utfördes där antalet tenants och data ökade för varje uppsättning. Experimentet evaluerade prestanda av Create, Read, Update och Delete operationer, även känt som CRUD-operationer. Tre uppsättningar testades; Shared table design, där tenants delar databas och tabeller, Separated table design, där tenants delar databas, men lagrar data i sina egna tabeller och Oracle Multi-tenant, där varje tenant får en egen databas.Experiment visar att Oracle Multi-tenant har högst prestanda medan Shared table design har lägst när antalet tenants och mängd data ökar.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-191560 |
Date | January 2016 |
Creators | Blad, Julius |
Publisher | KTH, Skolan för datavetenskap och kommunikation (CSC) |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | English |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0013 seconds