# Research Trends, Enabling Technologies and Application Areas for Big Data
## 4 Enabling Technologies for Big Data  
As discussed previously, handling the large amounts of data that all application areas of Big Data require is a challenge. As a result of this, considerable research has been directed toward _high-performance computing_ and _supercomputing_ techniques for Big Data [56]. In [57], [PERSON] and [PERSON] discussed the importance of optimized load balancing in high-performance computing for Big Data analytics. The importance of load balancing and optimization for Big Data application was also identified by [PERSON] and [PERSON] [58]. One way to improve the performance of applications using Big Data is to use _GPUs_ or other forms of _parallel and distributed processing_. In [59], [PERSON] et al. presented an architecture that enables Apache Flink ([[https://flink.apache.org/](https://flink.apache.org/)]([https://flink.apache.org/](https://flink.apache.org/)), accessed on 5 August 2022) to benefit from the massive parallel processing capacity of modern GPUs. In [60], [PERSON] et al. presented another system that uses GPUs for accelerating the performance of Big Data applications. [PERSON] et al. suggested a system that improves the parallel process ing performance of Big Data applications using Apache Hadoop MapReduce [61]. In [62], [PERSON] et al. presented a survey of geographically distributed Big Data processing using MapReduce and Apache Spark ([[https://spark.apache.org/](https://spark.apache.org/)]([https://spark.apache.org/](https://spark.apache.org/)), accessed on 5 August 2022). In [63], [PERSON] et al. proposed an optimization algorithm that improves the computational performance when analyzing Earth system models on multi-core clusters. Such models use massive amounts of data and are used for weather forecasting. In [64], [PERSON] at al. discussed how massive parallel processing can be used for providing high performance in applications that process Big Data for describing brain activities and functions (e.g., EEG data). Finally, [PERSON] et al. conducted a survey of parallel processing systems for Big Data [65]. When we discussed the telecommunication domain, we showed that efficient _storage systems_ and _database systems_ for Big Data are very important. In [66], [PERSON] et al. defined a scheme for optimizing performance by placing data with high I/O cost in fast SSD storage. In [67], [PERSON] et al. improved the locality of network and storage I/O operations on many-core systems running Big Data applications using Apache Hadoop MapReduce. In [68], [PERSON] et al. discussed the importance of proper parameter settings in high-performance database systems for Big Data. In [69], [PERSON] et al. defined a new benchmark and a new set of tools for benchmarking database systems for Big Data applications. In [70], [PERSON] et al. described the implementation of a data lake, where a company can store their raw data in such a way that it could be governed by one set of policies but processed by multiple teams using different tools. There are many publications that discuss how _cloud computing_ can be used as an enabling technology for Big Data applications, including two conference series on the subject [71; 72]. In [73], [PERSON] et al. discussed how cloud computing and Big Data can be used as enablers for the Fourth Industrial Revolution in healthcare. In [74], [PERSON] et al. discussed the relation between Big Data and cloud computing, including research challenges. [PERSON] et al. were the editors for a special issue on cloud computing and Big Data [75]. The manuscripts of that special issue focus on job scheduling, resource optimization, privacy and security and performance evaluation. A recent trend is that the processing of Internet of Things (IoT) Big Data is performed closer to where the data originate. This is called _edge computing_ or _fog computing_[76] (as opposed to cloud computing, where the processing is performed in the cloud). In [77], [PERSON] et al.