# Big Data in Smart City: Management Challenges
## 2 Related Works  
Smart cities cover different phenomena of life and must include all of them to provide expected feedback, such as: Internet of Things, internet, development of smartphones, computers, and other mobile communication networks necessary for smart cities, defined big data problems, and created problems of speed, structure, volume, cost, value, security, privacy, and interoperability. Traditional methods are impotent when facing big data problems because of their lack of scalability and efficiency. All those problems in the context of smart cities are defined as the five V problem. Volume problems and solutions  
Big data analysis requires large dataset analysis and the creation of advanced analytic algorithms that require a great deal of processing power and resources. By adopting virtualization, software frameworks become more efficient. Existing spatial database systems (DBMSs) extend relational DBMSs with new data types, operators, and index structures to handle spatial operations based on the open geospatial consortium standards [22]. Eventhough such systems provide full support for spatial data in some ways, they suffer from a scalability issue. This happens because the massive scale of available spatial data hinders the process when using traditional spatial query processing techniques. Recent papers such as [PERSON] et al. [23] and [PERSON] et al. [24] extended the Hadoop ecosystem to perform spatial analytics at scale. The Apache Spark module was used to complete the parallelization for the complex data types. Apache Spark adopts a flexible resilient distributed dataset (RDD) programming model which is originally positioned as a fast and general data processing system. To work with these data, there are several big data oriented storage options such as HDFS, HBase, Kudu, Kafka, etc. Additionally, there are some research papers where Apache Spark as a big data engine was used to connect to DBMS and process spatial data stored in those DBMSs [25]. There are many big data based solutions dealing with processing large amounts of data. The main problems in the distributed processing of geospatial big data are the methods for indexing and storing data, which are the focus of this paper. With the use of the GeoSpark library, the standard form of RDD was expanded into a spatial RDD (SRDD) form (20). The query operations, provided through a spatial query processing layer, were performed over objects stored in SRDD [25]. GeoMesa provided the spatio-temporal indexing for massive storage of point, line, and polygon data as well as near real-time stream processing of spatio-temporal data by layering spatial semantics on top of Apache Kafka. Currently, it works with three major Hadoop-based database systems: Accumulo, Apache HBase, and Google Cloud Bigtable [26]. The GeoWave library supports Apache Accumulo and Apache Hbase repositories and provides out-of-the-box support for distributed key-value stores. It uses multiple gridded space filling curves (SFCs) to index data to the desired key-value store [27]. Indexing information is stored in a generic keystructure that can be used for server-side processing [28]. [PERSON] et al. [23] proposed a GeoSpark SQL framework which provides convenient interface for geospatial SQL queries on top of Apache Spark. The experimental results showed that Apache Spark had a better performance than traditional DBMSs for various types of geospatial queries [26]. The methods based on Apache Spark for large point cloud management are described in [29; 30]. The method for ingesting the point clouds in the Apache Spark data structures is presented in [29]. The indexing of point clouds based on space filling curves is presented in [30]. The methods for classification, feature identification, and change detection using large point clouds are described in [26; 27; 29; 31; 32]. A file-centric approach for storage of large point clouds collected by LiDAR is described by [PERSON] et al. [33].