Database Reference
In-Depth Information
codebase and metadata capability. Multi-tenant aware application enables each tenant to
design different parts of the application, and automatically con
gure its behaviour
during runtime without redeploying the application [ 3 ]. Multi-tenant databases manage
two types of data: shared data and tenant
s isolated data. Combining these two types of
data gives tenants a complete view of the data which suits their business requirements
[ 6 , 16 ]. There are various approaches of multi-tenant database schema designs and
techniques that address multi-tenant database challenges [ 21 , 23 ], but there are also
remaining challenges [ 2 ].
Designing and developing a con
'
gurable multi-tenant SaaS application is a com-
plicated task due to the lack of support for a manageable database schema, and the
complexities associated with providing con
gurable database
elds [ 8 , 9 , 14 , 18 ]. In
[ 21 , 23 ], we proposed a con
gurable database design technique for multi-tenant
applications called Elastic Extension Tables (EET) that consists of Common Tenant
Tables (CTT), Extension Tables (ET), and Virtual Extension Tables (VET). This
design enables tenants to build their virtual database schema by creating the required
number of tables and columns, creating virtual database relationships, and assigning
suitable data types and constraints for table columns during multi-tenant application
runtime. In this paper, we propose a multi-tenant database proxy service called Elastic
Extension Tables Proxy Service (EETPS). This service is based on EET, and it inte-
grates, generates, and executes tenants
'
queries by using a codebase solution that
converts multi-tenant queries into traditional database queries and execute them in a
RDBMS. It provides new features, include: (1) allowing cloud database service pro-
viders to offer three EET database models, and database tenants to choose from any of
these database models; (2) allowing extensions to the traditional Relational Database
Management Systems (RDBMS) during applications
runtime; (3) avoiding the need to
write SQL queries, learning special programming languages, and writing backend data
management codes by calling functions from EETPS. This service retrieves simple and
complex queries including join operations,
'
ltering on multiple properties, and
ltering
of data based on subquery results. We present sample algorithms for
ve EETPS
functions, and we carry out
ve types of experiments to verify the effectiveness
of EETPS. The results of these experiments indicate that EET multi-tenant schema and
EETPS is suitable for storing and retrieving data for software applications in general
and SaaS applications in particular.
The remainder of this paper is organized as follows. Section 2 reviews related work.
Section 3 describes the Elastic Extension Tables. Section 4 describes the Elastic
Extension Tables Proxy Service. Section 5 presents the Elastic Extension Tables Proxy
Service algorithms. Section 6 gives our experimental results, and Sect. 7 concludes this
paper and describes the future work.
2 Related Work
A number of multi-tenant database schema designs and techniques have studied and
implemented to address multi-tenant database challenges. This section presents seven
multi-tenant database schema techniques, including Private Tables, Extension Tables,
Universal Table, Pivot Tables, Chunk Table, Chunk Folding, and XML Table [ 1 , 2 , 8 ,
Search WWH ::




Custom Search