Multi-Tenant Databases for Software as a Service: Schema-Mapping Techniques

Authors: 
Aulbach, Stefan; Jacobs Dean, Torsten GrustDean; Kemper, Alfons; Rittinger, Jan
Author: 
Aulbach, Stefan
Grust, Torsten
Jacobs, Dean
Kemper, Alfons
Rittinger, Jan

In the implementation of hosted business services, multi-
ple tenants are often consolidated into the same database
to reduce total cost of ownership. Common practice is to
map multiple single-tenant logical schemas in the applica-
tion to one multi-tenant physical schema in the database.
Such mappings are challenging to create because enterprise
applications allow tenants to extend the base schema, e.g.,
for vertical industries or geographic regions. Assuming the
workload stays within bounds, the fundamental limitation
on scalability for this approach is the number of tables the
database can handle. To get good consolidation, certain ta-
bles must be shared among tenants and certain tables must
be mapped into fixed generic structures such as Universal
and Pivot Tables, which can degrade performance.

This paper describes a new schema-mapping technique for
multi-tenancy called Chunk Folding, where the logical ta-
bles are vertically partitioned into chunks that are folded to-
gether into different physical multi-tenant tables and joined
as needed. The database’s “meta-data budget” is divided
between application-specific conventional tables and a large
fixed set of generic structures called Chunk Tables. Good
performance is obtained by mapping the most heavily-uti-
lized parts of the logical schemas into the conventional ta-
bles and the remaining parts into Chunk Tables that match
their structure as closely as possible. We present the re-
sults of several experiments designed to measure the efficacy
of Chunk Folding and describe the multi-tenant database
testbed in which these experiments were performed.

Year: 
2008
Venue: 
SIGMOD 2008
URL: 
http://portal.acm.org/ft_gateway.cfm?id=1376736&type=pdf&coll=GUIDE&dl=GUIDE&CFID=57101750&CFTOKEN=57903061
Citations: 
0
Citations range: 
n/a