1 Introduction

People have been increasingly interested in the hyper-connected society, where billions of devices with sensors and actuators, such as IoT devices and smart phones could be connected to each other by networks and their information could be shared in anytime and anywhere. In particular, Internet of Things (IoT), which leads the hyper-connected society, is evaluated as one of the core technologies to bring about the 4th Industrial Revolution. Geospatial IoT (Geo-IoT) technology has attracted much attention as a core technology that can realize cyber physical system (CPS) that combines the real world and the cyber world built on an ICT basis in the hyper-connected society.

There are two representative examples of CPS realization: one is a kind of location-based online to offline (O2O) service that uses the real time location data of users and the surrounding spatial data and contents of service providers to provide users’ desired services offline in a timely manner, and the other is Smart City service that uses IoT devices installed in various objects and environments to perform the remote monitoring, analysis, and control of the integrated spatial data and sensor data. Besides, spatial and location data has been actively used by integrating with various types of sensor data in the latest ICT service areas such as Autonomous Driving, Drone, and Robot. As the integrated utilization of spatial, location and sensor data are generalized, the research and development related to the acquisition, storage management, analysis, visualization, service and standardization of Geo-IoT data have been actively carried out. Specifically, various researches have been conducted on the acquisition of Geo-IoT data, such as the data dissemination among fixed and mobile Geo-IoT devices, the security of Geo-IoT data, the deployment of Geo-IoT devices, the indoor and outdoor positioning using Geo-IoT devices, and the collection of crowd sensing data using smartphone sensors. In addition, researches have been actively conducted on the storage management and analysis of Geo-IoT data, such as the real-time storage management of huge amounts of Geo-IoT data, the integration of heterogeneous Geo-IoT data, and the development of Geo-IoT middleware platform. Lastly, various researches and developments have been conducted on the visualization and service of Geo-IoT data, such as the integrated visualization of spatial data and Geo-IoT data and the development of O2O, LBS, and Smart City services. This study specifically analyzes the recent research trends, technology levels and major issues related to the research on Geo-IoT, and, based on the findings, presents future challenges for and direction of Geo-IoT research. This study also presents Geo-IoT node and server middleware platform architecture that include core functions required to support various types of Geo-IoT services.

This paper is structured as follows. Section 2 examines various recent trends of Geo-IoT research since 2010. Section 3 performs a hierarchical analysis on the trends of Geo-IoT research as in research on the acquisition, storage, analysis and service of data. This section also presents research directions and challenges in each area. Section 4 presents a new Geo-IoT node and server middleware platform architecture that can support various Geo-IoT services, including the future challenges presented in Chapter 3. Section 5 shows future research directions and the conclusions.

2 Related works

In regard to IoT research, many researches have been undertaken on sensor networks to build efficient wireless sensor networks (WSN) and to acquire sensor data efficiently in the early 2000s. As spatial and location data of users and sensors becomes more important in WSN environment, various researches have been performed on Geosensor network that integrates spatial and sensor data. The early researches on Geosensor network dealt mainly with a WSN routing configuration method based on spatial data, an energy-efficient spatial and sensor data acquisition method from IoT devices, and a method for integrating and visualizing web-based spatial and sensor data. Most of the researches focused on verification of their proposed method through a simulation rather than actual application of services. On the contrary, recent researches have been conducted on various services such as Smart City, LBS, O2O and AR by using the latest ICT technologies including the rapidly growing IOT sensor technology, 5G wireless communication and smart phone, and by integrating spatial and location data, sensor data, social media data, and cultural contents.

First, in order to support the development of various Geo-IoT services by integrating sensor datga, spatial and location data, and social media data, research and development have been carried out in various forms for IoT Server platforms which include technologies regarding the acquisition of heterogeneous Geo-IoT data, the storage management and analysis of huge amounts of Geo-IoT data, the real-time event processing of Geo-IoT, and the sharing and visualization of web-based Geo-IoT data [1]. In order to overcome the heterogeneity of Geo-IoT devices, Kim et al. [2, 3] and Chen et al. [4] proposed an abstraction method for Geo-IoT devices by using metadata that are defined for their devices. SIGHTED platform [5] proposed a method of implementing a wrapper module that can provide a unified interface for heterogeneous Geo-IoT data acquisition and a layered architecture for an integrated management framework for heterogeneous data. Kim and Lee [2], Lee [6] and Kim et al. [7] proposed a method of implementing Geo-IoT platform for efficient management and analysis of Geo-IoT data where a spatio-temporal analysis and query-processing function required by OGC “Simple Features Specification for SQL” standards was added to the existing TinyDB used in the IoT environment. Jin et al. [8] and Kim et al. [9] proposed a spatial query optimization method by analyzing similarities between multi-spatial queries to Geo-IoT platform and an efficient spatio-temporal indexing method in Geo-IoT, respectively. Ji et al. [10], Kim et al. [11], Baek and Kim [12] and Eom et al. [13] presented stream processing methods of spatio-temporal aggregation processing, spatio-temporal filtering, sliding window setting about stream-type Geo-IoT data. Jin et al. [8] proposed a method of spatio-temporal event processing about Geo-IoT data. In addition to these methods, in the research area of Geo-IoT server platform, various methods were developed and proposed: an in-memory-based huge amounts of Geo-IoT data management method for real-time storage, search and analysis processing [3], a convergence, visualization and service method for Geo-IoT data using an spatial open platform such as Google Map [14,15,16,17,18], and a method of converging Geo-IoT data, 3D spatial data and VR technology [19].

Second, with the computing power of IoT devices being rapidly improved, much Geo-IoT research based on in-network or edge computing has been conducted to support the distributed and real-time analysis of complex Geo-IoT data in IoT devices. In the research area of edge computing, researches were performed mainly on in-network spatial query processing and energy-efficient simple routing between IoT devices to minimize the energy consumption of IoT devices. Recently, researches have, however, been actively conducted on geographic routing that connects IoT devices based on spatio-temporal data to support various practical service applications [20,21,22,23,24]. In addition, various researches have been performed on stream data processing in the distributed Geo-IoT environment [25], acquisition, analysis and monitoring of real-time Geo-IoT data in distributed manner [26], distributed event processing [27], distributed Geo-IoT data sampling [28], distributed aggregate query processing [24], and optimized deployment of Geo-IoT devices using Voronoi diagram [29].

Third, research has been actively carried out on positioning and location based service (LBS) using Geo-IoT devices. With regard to indoor or outdoor positioning using Geo-IoT devices, a method of estimating location using one way time of arrival (OW-TOA) data provided from Geo-IoT devices [30], a method of estimating location using a vibration sensor installed in a building [31], and a method such as NextMe [32] that extracts location-related correlations from social interplay of smart phone and determines relative locations were developed. As for LBS, the following methods were developed: a mobility mining algorithm of applying complex event processing to the data acquired from smartphone built-in sensor to extract movement pattern [33], a method of setting geo-fence area and providing services based on a user’s location and geo-tagging data [34], and a method of building an LBS platform integrated with Geo-IoT data used for the service of special purpose such as culture, tourism and disaster prevention [35].

Fourth, various researches have been conducted to realize practical services in various areas such as Smart City, CPS, LBS, O2O and AR/VR through the convergence of spatial, location and sensor data, social media data and cultural contents, especially on Smart City to perform public sector services such as environmental monitoring, facility monitoring, water resource monitoring, and traffic monitoring [19, 36,37,38,39,40,41,42]. Recent research include studies on augmented reality or O2O service such as Pokemon GO integrating wireless Internet, VR/AR, real-time positioning, smart phone and spatial data [19, 43]. In addition to the research on Geo-IoT platform, Geo-IoT positioning, and Geo-IoT convergence service, research on Geo-IoT standardization, security, and context awareness have been performed.

Other researches include method of the application of the standard specifications for OGC SWE, SOS and SensorThings to standardize the acquisition and distribution of the heterogeneous Geo-IoT data [44,45,46], a security method against location spoofing attack [47] that deceives the location data of Geo-IoT devices, a method of real-time context-awareness using sensor and spatio-temporal data collected through Geo-IoT devices [48, 49], and a method of crowd sensing that collects user participatory data in real time using Geo-IoT devices [50].

3 Geo-IoT research area classification and issues

This chapter identifies the research areas of Geo-IoT by performing a hierarchical analysis of the contents of various related researches carried out so far in terms of the acquisition, integration, storage management, analysis and service development of Geo-IoT data. Then, this chapter also presents research issues and challenges for each area. Specifically, five research areas of Geo-IoT were drawn in a broad sense, as shown in Fig. 1, by performing a hierarchical analysis on about sixty Geo-IoT research papers that have been published since 2010. The 5 research areas of Geo-IoT drawn are as follows: Geo-IoT edge computing for efficient generation and distributed processing of sensor data; Geo-IoT device integration for seamless integration of heterogeneous devices; Geo-IoT Data Acquisition and Management for efficient storage and analysis of real-time big data; Geo-IoT Service Provider for external disclosure of Geo-IoT data based on wired and wireless networks; and Geo-IoT Application where various services are developed.

Fig. 1
figure 1

Geo-IoT research area classification derived from previous researches (2010–2017)

3.1 Research area of Geo-IoT edge computing

In the area of Geo-IoT Edge Computing, with a focus on improving the efficiency of the generation and processing of sensor data performed by IoT devices installed in things and environments, various research has been carried out.

First, research has been actively performed on geographical deployment and routing of IoT devices to improve the efficiency of sensor data acquisition through the efficient spatial deployment of IoT devices and the configuration of energy-efficient wireless network. In particular, research on long-range deployment methods or reliable sensor network routing methods of IoT devices based on spatio-temporal data has been conducted steadily since the early 2000s when IoT devices began to be used [19,20,21,22, 24]. In recent years, there has been research conducted on the configuration of long-range wireless network for mobile IoT devices with mobility and the tracking of these mobile IoT devices [23].

Second, research has actively been performed on positioning to estimate the real-time location of moving objects using spatial data held and sensor data collected by Geo-IoT devices. For example, many researches have been underway in relation to positioning using IOT devices that can be installed at low cost and in large numbers in place of WiFi or UWB access points (APs) in an existing method of determining the location of moving objects using the communication distance between mobile objects and WiFi APs or UWB APs with reference location data. In addition, much research has been conducted on positioning using the edge computing technology of IoT devices, including research on positioning [31] through a sensor data analysis on moving objects acquired by Geo-IoT devices and research on relative positioning through a correlation analysis in social interaction among IoT devices [32].

Third, numerous studies have been conducted with a focus on convergence analysis and processing of distributed spatial and sensor data based on edge computing, which can directly support the real-time execution of services based on spatial and location data in the environment where IoT devices are installed. Initial research on the processing of distributed spatial and sensor data focused on increasing the energy efficiency of IoT devices, and dealt with a variety of in-network spatial query processing [24, 51]. More recent research has begun to focus on distributed spatial analysis, distributed stream processing, and distributed event processing required for developing real-time spatial and location-based services in the edge computing environment rather than the improvement of the energy efficiency of IoT devices [25,26,27, 52].

Lastly, the importance of research on deployment and routing has decreased with the remarkable performance improvement of IoT device and smartphone and the practical application of 5G wireless communication technology, whereas the importance of research on positioning and edge computing has greatly increased. In the future, various studies on high-precision indoor and outdoor positioning, advanced spatial analysis and edge cloud are expected to be conducted in the research area of Geo-IoT edge computing. They will be actively used in services such as LBS, O2O, Autonomous Driving, Drone and AR.

3.2 Research area of Geo-IoT device integration

As, in recent years, the diversity of Geo-IoT devices has rapidly expanded, Geo-IoT device integration research which enables to overcome the heterogeneity of Geo-IoT devices and ensures the efficient integration and convergence of sensor data has been carried out.

First, in the research area of Geo-IoT device integration, much research has been conducted to change the heterogeneous interfaces of Geo-IoT devices into the standardized and integrated interface in a way to implement a wrapping module. Specifically, a method of implementing a wrapping module by applying OGC’s SensorThings API standard interface [45], or a method of implementing an extending SQL interface used in sensor network DBMS [2, 3] was developed to create the standardized interface. In particular, many efforts have been made to efficiently define and manage metadata about the location, function, sensor type and actuator type of Geo-IoT devices in order to clearly identify the functions of Geo-IoT devices in this research.

Second, research has been conducted to support the dynamic connection of Geo-IoT devices and Geo-IoT server platform that operate independently according to the user’s request. Specifically, research has been conducted on how to dynamically connect or disconnect the Geo-IoT devices to the server platform using component programming [3].

Lastly, some standards such as OGC SensorThings API have been presented concerning Geo-IoT device integration technology. Nevertheless, it is necessary to prepare various standards concerning a method of expressing the metadata for Geo-IoT devices, a method of efficient processing user’s complex query, and a method of dynamic connection with heterogeneous Geo-IoT devices. In this sense, the research and development of Geo-IoT device integration technology is expected to be performed more actively in the future, given a rapid increase in demand for services that require real-time integration with diverse and heterogeneous Geo-IoT devices such as Smart City, Smart Office, LBS and O2O.

3.3 Research area of Geo-IoT data acquisition and management

In the research area of Geo-IoT Data Acquisition and Management, various studies have been performed with regard to various methods of acquiring spatial, location, sensor, and social data provided by Geo-IoT devices, spatio-temporal query and analysis methods, real-time processing methods and storage management methods. Specifically, research concerning Geo-IoT data acquisition, Geo-IoT data analysis, Geo-IoT stream processing, and Geo-IoT storage management has been underway.

First, various research was conducted on Geo-IoT Data Acquisition that enables Geo-IoT Server platform to acquire data from Geo-IoT devices in various ways. Such research includes studies on the filtering-based data acquisition method to satisfy complex conditions, the data acquisition method according to a certain period, the stream-based data acquisition method, and the data acquisition method according to event occurrence of Subscribe/Publish. Recently, much research has been carried out on the method for real-time filtering and transmission of large volume of data such as photographs or images in regard to data acquisition [53].

Second, the interest in the research on Geo-IoT Storage Management using memory, DBMS and Cloud infrastructure is greatly increased with the increase in the amount of spatial, location, sensor and social media data acquired from Geo-IoT devices. In addition, research on data management and compression using in-memory technology has been performed for the real-time storage of explosively increasing Geo-IoT data and for the real-time processing of complex analysis functions [3].

Third, various research on Geo-IoT query processing and analysis has been carried out to efficiently perform various spatio-temporal query and analysis functions, including spatial and location data in the IoT environment. In the early stage of research, in order to add spatio-temporal query and analysis functions to existing IoT server platforms, the majority of research was conducted to implement the spatio-temporal analysis functions and the extended query processor, as specified in OGC’s “Simple Features Specification for SQL” standards [2, 6, 7]. Here, the extended query processor is defined to support various data acquisition methods such as methods for filtering-based data acquisition, periodic data acquisition, stream-based data acquisition, and event-based data acquisition. After the initial research, there was research conducted on the development of a spatio-temporal indexing method such as STaas [54] for the optimization of spatio-temporal query processing to Geo-IoT data, and on the optimization of multiple queries based on the locality of multiple spatial query areas [9].

Fourth, there has been research on Geo-IoT stream processing to efficiently perform continuous query processing for Geo-IoT devices that can continuously generate and provide data in a stream form. For example, such research includes studies of a method for improving the accuracy of spatio-temporal aggregate query processing for Geo-IoT stream data [1, 10, 13], a method for efficient filtering of large volume of Geo-IoT stream data [11], and a method for setting the spatio-temporal sliding window [12].

Lastly, various research and development have been carried out concerning Geo-IoT Data Acquisition and Management technology. However, there has been absolutely little research on integrated methods for standard and performance enhancement concerning Geo-IoT stream query, huge amounts of Geo-IoT data processing and real time Geo-IoT data processing. In this area, research will be steadily conducted to implement new functions for spatial intelligence such as Geo-IoT big data processing, spatial context awareness and artificial intelligence processing, and to secure a high performance for real-time storage management, big data analysis, complex event processing and multi-queries optimization.

3.4 Research area of Geo-IoT service provider

In the research area of Geo-IoT Service Provider, there has been research on the design and implementation of a standardized web interface for Geo-IoT Server platform that can support the development of various Geo-IoT services. Specifically, such research includes studies on the design, implementation, standardization and performance measurement of web service interface and Open API interface that Geo-IoT platform supports. For example, research has been frequently conducted is about the implementation of the standards of OGC Sensor Web Enablement (SWE), Sensor Observation Services (SOS), Sensor Planning Services (SPS), Web Processing Services (WPS) with respect to Geo-IoT web service interface and their application to the development of Geo-IoT services [14, 44,45,46, 55]. For Geo-IoT Open API interface, there have been researches conducted to develop Geo-IoT services through mashups of various sensor data and spatial data using the open platform of Google Map [15, 56]. In addition, research was conducted on the implementation of a user-defined interface, such as extended SQL, to efficiently provide users with complex search and analysis functions for Geo-IoT data. For example, [2, 57] regarded Geo-IoT devices as the tables of distributed database, and defined and implemented the extended SQL interface. In the research area of Geo-IoT Service Provider, web service standards need to be extended to integrate various sensor data and drive the actuator in addition to the functions provided according to existing OGC standard. Also, Open API standards for Geo-IoT Service Provider need to be newly defined. Specifically, various research will continue to be conducted concerning the new definition or upgrade of standardization of Geo-IoT Web Service and Open API interface, the standardization of Geo-IoT data transmission, the optimization of data transmission, and the development of convergence and analysis interface of cloud-based large volume of Geo-IoT data in order to efficiently support the development of Geo-IoT services in the wired and wireless environment in the future.

3.5 Research area of Geo-IoT application

Recently, much research has been performed to develop various types of Geo-IoT application services through the easy convergence of high-precision spatial data, real-time location data, sensor data, and social media data with the development of smart phones, IoT devices and 5G wireless communication technologies.

Research and developments related to Smart City, LBS, O2O and AR/VR application services using Geo-IoT data have been actively conducted until now. In particular, much research has been conducted on smart city services that integrate, visualize and analyze sensor data, location data and spatial data collected from environment, facilities, water resources, traffic and power infrastructures, and control them in real time [19, 37,38,39,40]. In recent years, there has been a significant increase in the research on crowdsourcing services that regard smartphone users as an important producer of Geo-IoT data and collect and analyze various social media data in order to apply opinion mining and real-time disaster analysis [36], and also on O2O and LBS applications to converge and analyze on-line high-precision spatial data, location data and user profile data and provide real-time services to off-line users. In addition, there also has been an increase in the research on AR that creates new services through the convergence of real-time location, real image data, and spatial data in the mobile environment using smartphone such as Pokemon GO [19, 43].

Lastly, such research on Geo-IoT applications is expected to expand into various areas with the development of the 4th Industrial Revolution technology. For example, it is expected that the research and development of a wide variety of application services will be performed through the convergence with research on Autonomous Driving, Drone and artificial intelligence as well as existing research on Smart City, O2O, LBS and AR/VR. However, the development of such new Geo-IoT applications assumes that the functions of Geo-IoT Edge Computing, Device Integration, Acquisition and Management, and Service Provider mentioned above should be efficiently implemented and that each module should operate smoothly in integration with each other.

3.6 Summarization of research area classification

This section presents the technology readiness level (TRL), research trends, future research directions and challenges for each of Geo-IoT research areas described in Sects. 3.13.5 (Table 1).

Table 1 TRL, trends, issues and challenges of Geo-IoT research areas

As shown in Table 1, various research on routing, positioning, and distributed data processing has been conducted in the area of Geo-IoT Edge Computing, which seems to remain in the experimental stage beyond the basic research stage in terms of TRL. This is probably because research on high-precision indoor and outdoor positioning, advanced spatial analysis and edge cloud is continuously needed to support various real-time mobile services such as mobile game, advertisement, social media, and AR/VR, according to the rapid advancements of IoT devices, smart phones and 5G wireless communication technologies. The area of Geo-IoT Device Integration seems to have reached the prototype stage, when considering that OGC SensorThings API standards and SQL API have been announced to overcome heterogeneity between Geo-IoT devices. Future research is expected to substantively verify the dynamic integration of heterogeneous Geo-IoT devices provided by various third parties. Also, in the area of Geo-IoT Data Acquisition and Management, various research has been conducted on query processing, stream processing, spatio-temporal analysis and storage management for large volume of Geo-IoT data. So, the area of Geo-IoT Data Acquisition and Management seems to have reached the prototype stage where the prototypes are announced or applied to some services. In the future, advanced research is expected to be conducted on spatial intelligence or artificial intelligence, such as Geo-IoT big data processing, the recognition of spatial awareness, real-time analysis, and complex event processing. Various research has been performed on the design, implementation, standardization and performance analysis of web service interface and Open API, in the area of Geo-IoT Service Provider as well, which seems to have reached the prototype stage in which OGC’s SOS and SPS standards could be applied to service. It is expected that research will continue to be conducted on the advancements of Geo-IoT web service and Open API standards, the standardization of Geo-IoT data transmission, the optimization of data transmission, and the development of cloud-based Geo-IoT data convergence and analysis interface. Lastly, it seems that the area of Geo-IoT application has partially reached the practical use stage, given the fact that various services and solutions are announced concerning Smart City, LBS, O2O and AR/VR. In particular, the area of Geo-IoT application will be converged with Autonomous Driving, Drone, AR, and Artificial Intelligence technologies, which are recently attracting attention. So, more various services are expected to be announced for the area.

4 Geo-IoT platform implementation strategy

In the recent IoT service market, companies preoccupying the IoT platform are expected to make good revenue. In the IoT service market, unlike other markets where the platform ecosystem has been gradually built up since various services were launched first, various IoT services and platforms are being launched simultaneously. Currently, the IoT platform ecosystem is largely classified into the following two ways: a way in which the IoT platform is built by companies such as Google and Apple that have led the ecosystem as a powerful platform in the smartphone market, and a way where the standard IoT platform is built through the IoT consortium that is composed of chip manufacturing, device manufacturing, network service, and service development companies. For instance, the IoT platforms of individual companies aimed at Smart Home services include ‘Brillo/Weave’ platform with Google’s lightweight OS and IoT communication functions, Apple’s ‘HomeKit’ platform, and Samsung’s ‘ATIK’ platform. The standard platforms built by IoT consortium include the following three representative platforms: ‘AllJoyn’ platform of AllSeen Alliance’s composed of Qualcomm, Cisco, Microsoft and LG; ‘IoTivity’ platform of Open InterConnect Consortium (OIC) comprised of Intel and Samsung; ‘oneM2 M Platform’ of oneM2 M composed of global major standardization organizations such as TTA (Korea), ETSI (Europe), TIA (USA), ATIS (USA), ARIB (Japan), TTC (Japan) and CCSA (China).

The need for Geo-IoT platform-building is also greatly increasing in the area of Geo-IoT service, which requires the convergence of spatial, location and sensor data. For example, in recent years, the need for a Geo-IoT platform, which will include the function to support real-time convergence service with the latest ICT services such as Driving, Robot, and Drone, is also significantly increasing, as shown in the utilization effect of the spatial information open platform, such as the existing Google Maps, Bing Maps, and OpenStreet Map, which supported the convergence of spatial data and user data. However, until now, individual technology-centered research and development has been mainly conducted in Geo-IoT, unlike IoT. As Geo-IoT service, which requires complex functions such as Smart City, O2O and CPS, has recently become an issue, it has become necessary to present a representative platform to support various Geo-IoT services.

This paper proposes a specific design of Geo-IoT platform including the functions of Geo-IoT Edge Computing, Geo-IoT Device Integration, Geo-IoT Data Acquisition and Management, and Geo-IoT Service Provider presented in Chapter 3. The proposed Geo-IoT platform is configured to support all the areas of Geo-IoT Server-centric application, Geo-IoT Device-centric application and Geo-IoT Server-Device collaboration application, which are expected to be activated in the near future, as shown in Fig. 2.

Fig. 2
figure 2

Geo-IoT application areas based on Geo-IoT server and devices

As seen from Fig. 2, the Geo-IoT Application environment is composed of various Geo-IoT devices, gateways and servers; and actual application services are expected to actively take place not only at the server level but also at the device level. Considering the research issue in Table 1 and the application service environment in Fig. 2, this chapter proposes an architecture that includes the future Geo-IoT platform implementation strategy composed of Geo-IoT Node platform and Geo-IoT Server platform (Fig. 3). The proposed Geo-IoT platform architecture consists of various existing IoT platforms, and spatial and location data processing functions and Geo-IoT application support functions of Smart City, O2O, LBS, AR, CPS, Autonomous Driving, Robot and Drone added to those existing platforms.

Fig. 3
figure 3

Geo-IoT platform architecture that enables spatial and location data processing

4.1 Geo-IoT node platform

The use of gateway-level hardware platforms such as Raspberry Pi and Intel Edison, and terminal node-level lightweight hardware platforms, such as ARM mBed and Arduino, are sharply increasing with the rapid development of IoT devices. The performance of these IoT devices of gateway and terminal node is rapidly improving recently. The proposed Geo-IoT Node platform includes real-time actuation and processing functions for hardware, OS, network, sensor, and actuator that make up these IoT devices. In other words, Geo-IoT Node platform includes the functions of Geo-IoT Edge Computing to converge location, spatial, sensor and user data in real time in the mobile and moving environment and to provide timely service. In this section, functions to be performed by Geo-IoT Node platform are divided into physical layer, core functions layer, and service layer.

First, physical layer is a layer that enables the basic operation of hardware held by IoT devices. It consists largely of OS and network module. In particular, network module for supporting spatial and location data processing should be capable of supporting the geographical routing function. This geographical routing function is to establish a connection in consideration of the spatial distance and adjacency with a network target when transmitting sensor data to other Geo-IoT devices or users. It can be used for implementing functions such as real-time tracking of Geo-IoT devices or users, the transmission of reliable data, and long-range communication in the future.

Second, core functions layer should implement the functions that the processor, memory, sensor, and actuator of Geo-IoT devices must perform. Basically, it is necessary to implement sensing module, filtering operator and memory module for the acquisition, filtering and storage of sensor data that IoT devices must perform, actuation module for the control of IoT devices, and security module and metadata module for security processing and metadata management. In particular, Geo-IoT Node platform should be capable of supporting spatio-temporal filtering and storage function to analyze, store and manage the integrated spatial, location and sensor data in the distributed environment of IoT devices. It should also be capable of supporting positioning & tracking function to accurately calculate and track the real-time location of moving objects by using various sensor data about moving objects acquired by IoT devices. Recently, as the computing and network performance of IoT devices has been greatly improved, the implementation of Geo-IoT Edge Computing module, which is to implement the spatio-temporal filtering, storage function and the positioning and tracking function with high performance through the collaboration between many IoT devices, is a strategic necessity.

Third, service layer must implement the interface module for providing the functions implemented in physical layer and core functions layer of the corresponding Geo-IoT devices to the outside through the standardized and abstracted API. These interface modules should be configured to enable the standardized access to various heterogeneous Geo-IoT devices. It is necessary to implement OGC’s SensorThings API [45] standard specification representatively, with respect to the interface module to provide spatial and location data in IoT devices in a standardized way. In order to support the development of services that can be directly used in Geo-IoT devices having excellent computing performance and screen display capability such as smart phones, service layer must implement a standardized visualization API that can integrate and display spatial, location, and sensor data on screen in real time. This visualization API should be capable of providing real-time augmented reality (AR) and hologram display functions, in consideration of future Geo-IoT services as well as 2D and 3D display functions of spatial, location and sensor data. Lastly, it is necessary to support real-time AR and hologram display functions of spatial, location, sensor, and attribute data provided by Geo-IoT devices to efficiently support development of various services such as games, entertainment, education, shopping, and advertisement, whose utilization is expected to increase sharply in the future.

4.2 Geo-IoT server platform

Most of the IoT platforms, such as HomeKit, AllJoyn, IoTivity, and oneM2 M Platform, which are currently proposed, are conventional IoT Server platforms or IoT middleware platforms that operate in the manner of transmitting the data acquired from IoT devices to servers, storing and analyzing it, and then providing it to users. In recent years, IoT Server platforms have provided the service functions of acquisition, storage management, analysis and disclosure of heterogeneous IoT data in order to efficiently support Smart Home, Smart Office, Smart City, Smart Car, Smart Factory, Healthcare, etc. via the web. This study proposes Geo-IoT Server platform architecture where the services of acquisition, storage, analysis and disclosure of spatial and location data along with sensor data are strategically added to this service of IoT server platform. The proposed architecture consists of the research contents that are required for playing the role of the future Geo-IoT Server platform in the areas of Geo-IoT Device Integration, Geo-IoT Data Acquisition and Management, and Geo-IoT Service Provider.

4.2.1 Geo-IoT device integration

In the near future, there will be a great need for an abstracted integration method for heterogeneous Geo-IoT devices and a method for dynamically integrating and separating new devices without affecting existing Geo-IoT devices when various types of Geo-IoT devices will be used. Geo-IoT Device Integration consists of adapter module for the abstracted integration of Geo-IoT devices and dynamic integration module for the dynamic integration and separation of Geo-IoT devices.

First, Geo-IoT devices use various network protocols such as MQTT, CoAP, XMPP, SOAP, HTTP, and various data representation methods such as XML, JSON, CSV and binary files in various wireless communication environments such as WiFi, BLE, Zigbee, Z-Wave, LTE-M, Long Range (LoRa) and Narrow Band-IoT (NB-IoT). Geo-IoT Server platform should provide the function of abstraction to independently integrate these heterogeneous Geo-IoT devices with communications, network protocols, and data representations. This function can dramatically reduce the cost and time required for the integration between Geo-IoT Server platform and various Geo-IoT devices. Previous research on Geo-IoT Device Integration [2] employed a way of automatically generating adaptor module code about Geo-IoT gateway connected to Geo-IoT Server platform using metadata on sensor, driver, data format and interface provided by Geo-IoT devices. Adapter module largely consists of a part connected to Geo-IoT Server platform and a part connected to Geo-IoT gateway. A platform administrator can modify the code of the connection part to Geo-IoT gateway to perform functions such as sensor data acquisition and actuator control using the gateway’s interface. In order to support Geo-IoT devices requiring direct connection without a gateway, this study proposes an extended adapter module method that can be used in various wireless communication environments by extending the existing method [2], as shown in Fig. 3.

Second, there will be frequent situations where a large number of devices are dynamically integrated or separated on Geo-IoT Server platform in the future. Therefore, Geo-IoT Device Integration should implement the function of dynamically integrating and separating Geo-IoT devices without interrupting the operation of Geo-IoT Server platform. Recently, a component programming technique [3] has been used to implement dynamic integration and separation of Geo-IoT devices. Specifically, adapter module is implemented as component, and a platform administrator is given the right to ‘Start’, ‘Suspend’, ‘Resume’, and ‘Stop’ services for adapter module that corresponds to each Geo-IoT device and gateway to be integrated or separated. As shown in Fig. 3, this study proposes a system in which dynamic integration module can exercise the right to start, suspend, resume, and stop each adapter module. In particular, dynamic integration module, which performs functions similar to those of plug and play, is a necessary function for services of Smart City, etc. where the dynamic integration and separation of various Geo-IoT devices frequently occur.

4.2.2 Geo-IoT data acquisition and management

Geo-IoT Data Acquisition and Management should efficiently implement Geo-IoT acquisition module, Geo-IoT storage module, and Geo-IoT analysis module in order to provide the excellent acquisition, storage and analysis of spatial, location and sensor data.

First, it is necessary to implement Geo-IoT acquisition module that can reflect the requirements of users in the process of Geo-IoT data acquisition and can consider the performance limit of Geo-IoT device and gateway. Specifically, Geo-IoT acquisition module is configured to acquire data through various request methods, such as condition search-based data acquisition, periodic data acquisition, continuous data acquisition, event -based data acquisition, and real-time data acquisition for spatial, location and sensor data.

Second, it is essential to meet the rapidly increasing demand for the processing of real-time large volume of Geo-IoT data due to the introduction of 5G technology, the expansion and spread of Geo-IoT devices, and the diffusion of real-time spatial and location data services. This study configured Geo-IoT storage module which can process real-time large volume of Geo-IoT data using DBMS, file system, and main memory. The Geo-IoT storage module should be basically capable of performing the real-time storage management and history management of Geo-IoT data and also the storage management of big data according to the situation. Specifically, the utilization of DBMS for the storage management of stable and efficient Geo-IoT data, the utilization of in-memory processing for real-time data, and the utilization of NoSQL DBMS for big data processing, should be secured. Further, the function of utilization of spatial DBMS and in-memory spatial processing should also be secured for the efficient storage management of real-time large volume of spatial and location data that is complicated to process.

Third, the functions of high-performance computation and analysis for Geo-IoT data are required to support complex and diverse Geo-IoT services such as Smart City, O2O, LBS, AR, CPS, Autonomous Driving, Robot and Drone. This study proposes the implementation of Geo-IoT analysis module. Geo-IoT analysis module should basically implement the query processing function for spatial, location, and sensor data and the stream processing function for continuous Geo-IoT data. In addition, it is necessary to implement the functions of event processing, context-awareness, big data processing, and artificial intelligence that are increasingly utilized in services based on real-time location and spatial data, according to the situation.

4.2.3 Geo-IoT service provider

Geo-IoT Server platform proposed in this study configures Geo-IoT service provider to simply provide spatial, location and sensor data or to provide analysis function to external users.

Specifically, Geo-IoT service provider should implement web service API module that can perform various computation and analysis functions on Geo-IoT data, Open API module where external users can use Geo-IoT data directly for mashup, and user-defined API module, such as extended SQL that can perform complex search, analysis and computation functions for Geo-IoT data. In particular, they should be implemented in consideration of standardization to ensure interoperability between various future Geo-IoT Server platforms. Currently, web service API module can be implemented by extending OGC’s SOS, SPS, and SensorML standards. Open API module can be implemented by extending Open API for spatial information open platform, such as Google Map and OpenLayers. SQL API module can be implemented by extending OGC’s Simple Features for SQL standard. Lastly, these APIs provided by Geo-IoT service provider should be configured to provide as many functions as needed to develop various types of Geo-IoT services.

5 Conclusion

This study identified five core research areas of Geo-IoT Edge Computing, Geo-IoT Device Integration, Geo-IoT Data Acquisition/Management, Geo-IoT Service Provider and Geo-IoT Application by investigating and analyzing research trends in terms of the acquisition, storage, analysis, disclosure, and service of spatial, location, and sensor data related to recent research on Geo-IoT. In addition, in this study, detailed technology trends, TRL, and future research directions and challenges for each area were presented. This study also proposes a system architecture for Geo-IoT platform that enables efficient convergence analysis services of spatial and location data, sensor data, social media data, and cultural contents with respect to the activation of Geo-IoT service. In particular, this study presented not only Geo-IoT Server platform architecture for existing servers that acquired and utilized Geo-IoT data with respect to Geo-IoT platform architecture proposal, but also Geo-IoT Node platform architecture, which can provide timely services through the real-time convergence of location, spatial, sensor and user data in the mobile and moving environment. The utilization of the proposed Geo-IoT platform architecture is expected to greatly increase in various Geo-IoT services, such as Smart City, CPS, O2O, LBS, AR, CPS, Autonomous Driving, Robot and Drone, by adding the spatial and location data processing function to the existing IoT platform. In particular, the areas of timely services including O2O, LBS, and AR that provide services in real time to users on the move using Geo-IoT Node platform are expected to grow greatly.

This study intends to identify various future Geo-IoT service models for future research and analyze the list and level of technologies to support this service. Further, this study also intends to extend Geo-IoT platform architecture proposed as a future service model and configure Geo-CPS system for national land information management which can perform real-time monitoring and control.