4.2 Mixed Load Balancer
In Locality-Aware Load Balancer for HBase (Ke-
wal Panchputre and Garg, 2016), they implemented
an algorithm to combine different types of load bal-
ancers supported by HBase. The locality load bal-
ancer takes into consideration server balance, table
balance and locality. The algorithm was tested on ba-
sics read write operations where it shows a better per-
formance than simple load balancer. The proposed
solution does not take into consideration neither the
balance key to do optimized splits nor the average re-
sponse time of clients’ requests.
4.3 HBase Monitoring
Hannibal (Hannibal, 2016) introduced a monitoring
tool to help HBase administrators to monitor and
maintain HBase clusters that are configured for man-
ual splitting. The proposed tool introduces monitor-
ing technique for the region distribution on the cluster
and region splits per table. Moreover, it displays the
regions of a table ordered by size to help administra-
tors making decision of splitting. Nonetheless, it does
not provide an automatic split or move of the regions
and the administrator has to manually distribute the
regions based on the reported results.
4.4 Latency-based Optimization
The basic motivation of our algorithm was the so-
lution proposed in (Sharov et al., 2015) to dynami-
cally handle leader selection in distributed systems by
monitoring client workload for previous time frames.
Then, based on certain threshold and the location of
the servers, the leader will be selected. The consid-
ered workload is the global load in the cluster and
not the local one. Moreover, the clients are dynami-
cally grouped according to their location and requests
(read/write). The leader election algorithm is parti-
tioned in two phases:
• Leader placement based on averaging latency of
server operations. The latency is calculated based
on the last time interval (1 day) and introducing a
weight decay parameter to compute latency based
on past intervals.
• Leader and Replica roles: in this tier the algorithm
optimizes the voters selection in quorum based on
replica location the selected leader.
5 CONCLUSION AND FUTURE
WORK
We propose an algorithm that enhances client opera-
tion latency by monitoring and dynamically balancing
(by splitting or moving regions) the region servers of
HBase system based on the most requested keys and
the average response time of clients’ requests. The
evaluation shows that our algorithm reduces the la-
tency of client requests in case where some keys are
highly requested.
For future work, we consider several directions.
First, we want to extend our algorithm to take into
account write operations. Second, we consider testing
our algorithm on larger clusters and tables. Third, we
want to introduce an automatic compaction of regions
when the number of regions becomes too small.
REFERENCES
Chang, F., Dean, J., Ghemawat, S., Hsieh, W. C., Wallach,
D. A., Burrows, M., Chandra, T., Fikes, A., and Gru-
ber, R. E. (2008). Bigtable: A distributed storage sys-
tem for structured data. ACM Trans. Comput. Syst.,
26(2).
Favored Node Load Balancer (2016). Favored Node
Load Balancer. https://hbase.apache.org/
devapidocs/org/apache/hadoop/hbase/master/
balancer/FavoredNodeLoadBalancer.html.
Ghemawat, S., Gobioff, H., and Leung, S. (2003). The
google file system. In Proceedings of the 19th ACM
Symposium on Operating Systems Principles 2003,
SOSP 2003, Bolton Landing, NY, USA, October 19-
22, 2003, pages 29–43.
Hadoop (2016). HDFS. https://hadoop.apache.org/
docs/r1.2.1/hdfs_design.html.
Hannibal (2016). Hannibal HBase. https://github.com/
sentric/hannibal.
Kewal Panchputre, P. C. and Garg, R. (2016). Locality-
aware load balancer for hbase. Technical report, Uni-
versity of Minnesota, Twin Cities.
Sharov, A., Shraer, A., Merchant, A., and Stokely, M.
(2015). Take me to your leader! online optimiza-
tion of distributed storage configurations. PVLDB,
8(12):1490–1501.
Simple Load Balancer (2016). Simple Load Bal-
ancer. https://hbase.apache.org/devapidocs/
org/apache/hadoop/hbase/master/balancer/
SimpleLoadBalancer.html.
Stochastic Load Balancer (2016). Stochastic Load Bal-
ancer. https://hbase.apache.org/devapidocs/
org/apache/hadoop/hbase/master/balancer/
StochasticLoadBalancer.html.
CLOSER 2017 - 7th International Conference on Cloud Computing and Services Science
368