selected to be the ”master”, other n − 1 servers be-
come ”replicas”. When deciding on where to host a
new client, this algorithm calculates the ratio of the
usage for each group, and selects the group with min-
imal ration (if there are several such groups, it ran-
domly selects one of them). The algorithm takes into
account only those groups that have enough free space
to host a new client or its replica at every server within
the group. This algorithm will be referred to as Algo-
rithm r2.
The third algorithm is a generalization of the Al-
gorithm wr3. For every incoming request, it finds the
best placement of master data instance and its repli-
cas in terms of minimization of the function (8). The
kind of branch and bounds algorithm is used to find
the best solution for a current tenant. This algorithm
will be referred to as Algorithm r3.
The experiment results are given in Table 2. The
first two columns show the parameters of the model
(ratio between read-only and data-modifying queries)
and the algorithm was used in the particular experi-
ment. The third column shows the average amount
of clients which was hosted at the cluster when the
model met the experiment stop condition, which was
the same as in the first experiment series. The algo-
rithm r3 has shown better results than others for all
three ratios of query types.
Table 2: The results of the first experiment series for clus-
ters with replication.
Algorithm RO/W Avg. N. of tenants
r1 70/30 724
r1 50/50 723
r1 30/70 666
r2 70/30 682
r2 50/50 610
r2 30/70 448
r3 70/30 564
r3 50/50 530
r3 30/70 494
6 CONCLUSION
The experiment has shown that the load-balancing
strategy based on the analysis of incoming query
flows intensities is more effective than ad-hoc strate-
gies. This fact leads to the conclusion that the above
theoretical concepts are correct and can be applied to
construct more complicated load-balancing strategies
which take into account more factors and can be used
in more complicated environment. Especially inter-
esting questions to study are:
• how to determine the incoming query flow inten-
sity of the client in a real environment;
• what algorithms can be used to find a better solu-
tion for the clients assignment problem;
• are all solutions of the clients assignment prob-
lem equally valuable when intensities of incoming
query flows are not constant;
• what strategy should be used to relocate client
data when the load balancing subsystem decides
to do so.
All these questions are crucial in implementing effi-
cient load-balancing strategy for the cluster.
REFERENCES
Beckman, M. and Koopmans, T. (1957). Assignment prob-
lems and the location of economic activities. Econo-
metrica, 25:53–76.
Boytsov, E. (2013). Designing and development of the imi-
tation model of a multi-tenant database cluster. Mod-
eling and analysis of information systems, 20.
Burkard, R. (1990). Locations with spatial interactions: The
quadratic assignment problem. Discrete location the-
ory, pages 387–437.
Burkard, R. and Cela, E. (1997). Quadratic and three-
dimensional assignment problems. pages 373–392.
Candan, K., Li, W., Phan, T., and Zhou, M. (2009). Fron-
tiers in information and software as services. In Pro-
ceedings of ICDE, pages 1761–1768.
Chong, F. and G., C. (2006). Architecture strategies for
catching the long tail.
Elmore, A., Das, S., Agrawal, D., and El Abbadi, A. (2011).
Zephyr: Live migration in shared nothing databases
for elastic cloud platforms. In SIGMOD Conference.
Lang, W., Shankar, S., Patel, J., and Kalhan, A. (2012). To-
wards multi-tenant performance slos. In ICDE.
Lee, C.-G. and Ma, Z. (2004). The generalized quadratic
assignment problem. Technical report, University of
Toronto, Department of Mechanical and Industrial En-
gineering, Toronto, Canada.
Rendl, F., Pardalos, P., and Wolkowicz, H. (1994). The
quadratic assignment problem: A survey and recent
developments. In Proceedings of the DIMACS Work-
shop on Quadratic Assignment Problems, volume 16,
pages 1–42. American Mathematical Society.
Sahni, S. and Gonzalez, T. (1976). P-complete approxima-
tion problems. Journal of ACM, 23(3):555–565.
Schaffner, J., Januschowski, T., Kercher, M., Kraska, T.,
Plattner, H., Franklin, M., and Jacobs, D. (2013).
Rtp: Robust tenant placement for elastic in-memory
database clusters. In SIGMOD Conference.
Yang, F., Shanmugasundaram, J., and Yerneni, R. (2008).
A scalable data platform for a large number of small
applications. Technical report, Yahoo! Research.
Fourth International Symposium on Business Modeling and Software Design
222