Load Balancing in Heterogeneous Cluster Cloud Computing

Load Balancing in Heterogeneous Cluster Cloud Computing

Nirmalan R. (Sri Vidya College of Engineering and Technology, India), Gokulakrishnan K. (Anna University Tirunelveli, India) and Jesu Vedha Nayahi J. (Anna University Tirunelveli, India)
Copyright: © 2019 |Pages: 24
DOI: 10.4018/978-1-5225-9023-1.ch010


Cloud computing is a modern exemplar to provide services through the internet. The development of cloud computing has eliminated the need of manpower, which is mainly used for the management of resources. During the cloud computing process, the term cloud balancing is a vital one. It deals with distribution of workloads and computing resources. The load balancing allows the company to balance the load according to the demands by the allocation of the resources to multiple servers or networks. The quality of service (QoS) metrics, including cost, response time, performance, throughput, and resource utilization are improved by means of load balancing. In this chapter, the authors study the literature on the load-balancing algorithms in heterogeneous cluster cloud environment with some of its classification. Additionally, they provide a review in each of these categories. Also, they provide discernment into the identification of open issues and guidance for future research work.
Chapter Preview


Cloud computing generally refers to providing delivery of hosted services through internet. It can be used like electricity in our day to day life rather than building and maintaining a computer infrastructures. It has more benefits which make it attractive for the end users. Due to the self-provisioning of the cloud computing, the customers can utilize it for several applications. The development of cloud computing has eliminated the need of manpower which is mainly used for the management of resources. It provides better elasticity so that the companies can increase the load whenever they want and decrease it whenever the demand decreases. This eliminates the huge investment for the company for development of infrastructure. The end users can pay according to their workloads and resources used by them which would be a greater benefit for the end-users.

The workload resilience in the cloud computing often implements their redundant resources which ensures that the resilient storage keeps the end user workloads running even in the multiple countries. It also provides migration flexibility which enables the organization to move their workloads to several platforms to save cost or to adopt new services.

In the present scenario, the companies are growing regarding their end-user requirements which require the need for more databases to be stored. As the flow of data in the company increases the need for multiple servers increases since a single server cannot handle enormous data at a single time. Clustering in the cloud data helps in lining any number of servers, and it can act as a single server which could handle several servers. It can provide continuous operation even if any one of the servers fails. It needs some special computers and different versions of operating systems for synchronization of data. It also demands the needs of advanced networking adaptors which could be applied to the movement of data at higher speed. The parameters considered during the clustering processes are energy efficiency and location. The energy consumed by both the parameters are very high. The optimized energy consumption is the foremost principle considered by different clustering algorithms. The location awareness can be carried out either by using global positioning systems or by estimating the strength of the returned signal. Several algorithms are developed during the clustering process which eliminates the need for precious locations or even the location of the subsequent servers.

In the case of homogeneous cloud computing the whole software stack from the remote cloud provider goes through various several management layers which finally reaches the end-user through one vendor. While considering the heterogeneous cloud, it combines the components provided by different vendors either at different levels or in the same levels.

The clustering of nodes can be done using algorithms like Fuzzy K-Means, Streaming K-Means, Spectral clustering, Dirichlet clustering. Fuzzy K- means algorithms use only one data point to form a single cluster. If a single point belongs to multiple clusters, it creates an overlapping cluster. Fuzzy K-Means algorithms are unsuitable if the volume of data is too high which has to be stored in the main memory as it's batch processing mechanism repeats over all the data points. It is also very sensitive to the noises present in the data. In the case of Streaming, K-Means algorithms solve by operating in two steps. On the first step, a set of weighted data points are created for further processing. In the second step, the outliers are removed.

The spectral clustering algorithm is used for solving hard and non-convex clustering problems. The cluster points use eigenvectors of the matrix to derive their data. Dirichlet clustering algorithms use the Fuzzy K-Means and K-Means algorithms model clusters as spheres. Initially, K-means assumes a commonly fixed variance and it does not model the distribution of the data points. For the efficient usage of the Spectral clustering algorithm, a normal data distribution can be done by the usage of K-Means and Fuzzy K-Means algorithms. If the distribution of data is different, the efficiency of the K-means algorithm will be very less and the final output will not be good. Dirichlet clustering can be effective in the case of modeling different data effectively. It fits into a dataset according to the model, and it tunes its parameters which adjusts it to a model parameter which correctly fits the data. It can be applied to the problems dealing with the hierarchical-clustering problem.

Complete Chapter List

Search this Book: