# A Comprehensive Survey on the Societal Aspects of Smart Cities
## 3 Smart Cities' Technologies
### Big Data  
Smart cities are predicated on data to function effectively, and their network of devices provides that data in large quantities. However, these data bring their own issues. Firstly, data comes in raw and unformatted, and necessitates preparation and collation to become structured data, which can be then used for analysis and information extraction. Secondly, the large volume of data is overwhelming for standard database and data processing systems, with even simple operations like read or write becoming inefficient and time-consuming. The field of big data was created to handle these challenges, and in this section, we will discuss how the field of big data has evolved to handle them. Big data can be defined as \"data that contains greater variety, arriving in increasing volumes and with more velocity\" [237]. However, this definition is relative and what was considered big data in previous decades requiring specialized equipment and techniques to be analyzed and processed can be easily managed with consumer-grade computing today. Therefore, another big data definition states that \"data whose size forces us to look beyond the tried-and-true methods that are prevalent at that time.\" [25]. Parallel computing is an obvious solution to process big data, since when more data must be stored and analyzed, it is possible to increase the number of computing resources. Until recently, this would have required a significant investment in computing resources. However, the advent of cloud computing allows the availability of these resources at significantly lower costs. Cloud computing is also a very scalable solution, with available resources being provisioned and used as needed [238]. Another option available is edge computing, where instead of data being processed in a centralized location, the bulk of the processing happens at the edge of the network of connected devices. In a smart city, this would mean that the devices collecting data (e.g., dedicated sensors or smartphones) would also possess enhanced computing capabilities to send processed data instead of raw data to central storage. This would significantly reduce the work needed from central computer resources, allowing the use of the available resources on other tasks. Edge computing is scalable, as each new device handles its own processing needs and allows for better real-time response and closer interactions with users [239; 240]. These options satisfy the hardware requirements for big data computing, but what about the software? New data mining algorithms must be used to take advantage of the parallel processing capabilities of the hardware to extract information quickly and efficiently from large datasets. For this purpose, ML and AI are invaluable, as they can be employed to analyze different types of data and extract useful information from them, while traditional data mining algorithms are designed to be used for a specific purpose on specific types of datasets. Therefore, ML and AI can be used broadly and achieve results with almost any dataset, while specific algorithms are better and more efficient but on a much narrower scale [241]. Nevertheless, both approaches require that the data being processed should be prepared and free of errors. The better the datasets quality, the better the information that can be extracted from them. As such, data must present several attributes (e.g., accuracy, relevancy, interpretability, or accessibility) to guarantee their quality. Big data have their own traits, commonly known as the three Vs (i.e., volume, velocity, and variety), although more have been added over the years (e.g., value, veracity, or viability). These traits have a significant impact on data quality [242], but quality assessment tools for big data are not as mature as those for more standard data.