### A Self-Optimizing Technique Based on Vertical Handover for Load Balancing in HWN Using BD Analytics  
On the basis of the formed stages of the method of increasing the performance of the heterogeneous network, a model of the heterogeneous network environment is proposed which, in contrast to the known, uses the method of processing a large amount of data to monitor the processes of information transfer, analysis of tasks and output of necessary reports on switching or initiating the handover and allows to investigate the optimization of network infrastructure operator network by implementing an algorithm for the redistribution of its network resources and balancing. To simplify understanding, we proposed a hierarchical representation of the input data in the implementation of the developed complex heterogeneous network optimization process. In Figure 4, the hierarchical structure of the input data for the modeling of the investigated network consisting of 2G/3G/4G/5G/Wi-Fi technology, service and QoS planes is presented. The technology plane includes mobile technologies of the 2G, 3G, 4G, 5G Cloud-RAN, and Wi-Fi network. For modeling, it is assumed that all technologies operate within the range of the cell 2G. Additionally, only one base station that works with the presented technologies is considered in the paper. Each of the base stations receives requests from the UE, which are divided into priority requests (shown in Figure 4, marked in red) and non-priority (marked in blue). For example, it was assumed that users may receive requests for the following types of services:  
* Calls as voice transmission over IP networks (Voice over IP);
* Digital Interactive Television (IPTV);
* Internet data (I), which includes uploading and downloading data from internet resources;
* Video conferencing (Conf);
* WEB. These types of services form the plane of services. Each base station receives requests from the UE with the type of services, respectively; requests from users can form active and inactive sessions. To connect and maintain the UE, the required quality of service must be provided, which is represented in the QoS plane. The QoS plane uses acceptable session service quality parameters according to ITU-T recommendations to ensure guaranteed quality for users. * Throughputs (C);
* Probability of losses (Pv);
* Delay time (T);
* Jitter (dt). For the practical implementation of the proposed big data approaches, it was decided to apply a cloud solution, namely, renting DigitalOcean cloud based on creating an account in DigitalOcean with setting up a server with Ubuntu 16.04 and installing the software needed for experimental research. The Cassandra database and the scalable Apache Spark data analysis platform were selected for the heterogeneous network, which is critical to the processing time [36]. Apache Cassandra is a scalable, fault-tolerant NoSQL database that is suitable for fast writing and reading of large amounts of unstructured data. Apache Spark is a fast and common engine for large-scale data processing. The general scheme of the heterogeneous network model using BD is depicted in Figure 5.  
This is followed by the import of statistics into the Cassandra database, obtained by computer simulation, using the Makaroo utility (Figure 6) [37]. The results of the generated heterogeneous network statistics is depicted in Figure 7.  
Figure 4: Hierarchical structure of input data of the studied heterogeneous network. Figure 5: General scheme of the heterogeneous network model using BD. Figure 6: Generated heterogeneous network statistics, using the Makaroo utility. To calculate and analyze data, Jobs scripts are written in the Python programming language for Spark. When working, job-1 Spark performs a request to read data from the database Cassandra and processes them, calculating the number of active sessions on the network. The result is presented in Figure 7(a). During operation, job-4 Spark simulates an active heavy load on the network. The result is presented in Figure 7(b).