Database Reference
In-Depth Information
multi-tenant schema and in [ 23 ] we evaluated this schema by comparing it with the
Universal Tables schema that is the optimal commercially available multi-tenant data-
base schema, which is used by Salesforce. The experiments of EET evaluation show
signi
cant performance improvements obtained using EET when compared to Universal
Tables, making EET schema a good candidate for the management of multi-tenant data
in SaaS applications.
Salesforce, the pioneer of SaaS CRM applications has designed and developed a
storage model to manage its virtual database structure by using a set of metadata,
universal data table, and pivot tables. This set of metadata and tables get converted to
objects that the Universal Data Dictionary (UDD) keeps track of them, their
elds and
relationships, and other object de
nition characteristics. In addition, it provides a special
object-oriented procedural programming language called Apex that has the following
functions. First, declare program variables, constants and execute traditional flow
control statements. Second, declare data manipulation operations. Third, declare the
transaction control operations. Then Salesforce compiles Apex code and stores it as
metadata in the UDD [ 20 ]. In addition, it has its own Query Languages,
rst, Salesforce
Object Query Language (SOQL), which retrieve data from one object at a time. Second,
Salesforce Object Search Language (SOSL), which retrieve data from multiple objects
simultaneously [ 10 , 20 ]. NoSQL is a non-relational database management system
approach designed to handle storing and retrieving large quantities of data, and it
includes services such as MongoDB, Cassandra, CouchDB, Google App Engine Da-
tastore, and others. This technique avoids joining operations,
ltering on multiple
properties, and
ciency of
its simple query is very high, but this is not the case for complex queries. Moreover,
unless con
ltering of data based on subqueries results. Therefore, the ef
guring NoSQL consistency models in protective modes of operation,
NoSQL database typically do not ensure data consistency [ 4 , 11 ]. Indrawan-Santiago
[ 13 ] states that NoSQL should be seen as a complimentary solution to relational dat-
abases in providing enhanced data management capability, not as a replacement for it.
3 Elastic Extension Tables
The proposed Elastic Extension Tables (EET) database schema is a novel way of
designing and creating a multi-tenant database that consists of three types of tables
[ 21 , 23 ]. The
rst type is Common Tenant Tables (CTT) which are physical tables
shared between tenants using a RDBMS. These physical relational tables can be
applied to any business domain database such as CRM, Accounting, Human Resource
(HR), or other business domains. The second type is Virtual Extension Tables (VET),
which allow tenants to extend the existing business domain database, or have their own
con
gurable database through creating their virtual database structures from scratch by
creating (1) virtual database tables, (2) virtual database relationships, and (3) other
database constraints. The third type is Extension Tables (ET), which consists of eight
physical tables that are used to construct VETs [ 21 , 23 ]. The data architecture details
of the eight ETs of EET are shown in Fig. 1 and listed as follows: (1) the
'
db_table
'
ET allows tenants to create virtual
tables and give them unique names. (2) The
'
table_column
'
ET allows tenants to create virtual columns for a virtual table stored in
Search WWH ::




Custom Search