CP-15 - Mobile Devices

Mobile devices refer to a computing system intended to be used by hand, such as smartphones or tablet computers. Mobile devices more broadly refer to mobile sensors and other hardware that has been made for relatively easy transportability, including wearable fitness trackers. Mobile devices are particularly relevant to Geographic Information Systems and Technology (GIS&T) in that they house multiple locational sensors that were until recently very expensive and only accessible to highly trained professionals. Now, mobile devices serve an important role in computing platform infrastructure and are key tools for collecting information and disseminating information to, from, and among heterogeneous and spatially dispersed audiences and devices. Due to the miniaturization and the decrease in the cost of computing capabilities, there has been widespread social uptake of mobile devices, making them ubiquitous. Mobile devices are embedded in Geographic Information Science (GIScience) meaning GIScience is increasingly permeating lived experiences and influencing social norms through the use of mobile devices. In this entry, locational sensors are described, with computational considerations specifically for mobile computing. Mobile app development is described in terms of key considerations for native versus cross-platform development. Finally, mobile devices are contextualized within computational infrastructure, addressing backend and frontend considerations.
CP-07 - Spatial MapReduce
MapReduce has become a popular programming paradigm for distributed processing platforms. It exposes an abstraction of two functions, map and reduce, which users can define to implement a myriad of operations. Once the two functions are defined, a MapReduce framework will automatically apply them in parallel to billions of records and over hundreds of machines. Users in different domains are adopting MapReduce as a simple solution for big data processing due to its flexibility and efficiency. This article explains the MapReduce programming paradigm, focusing on its applications in processing big spatial data. First, it gives a background on MapReduce as a programming paradigm and describes how a MapReduce framework executes it efficiently at scale. Then, it details the implementation of two fundamental spatial operations, namely, spatial range query and spatial join. Finally, it gives an overview of spatial indexing in MapReduce systems and how they can be combined with MapReduce processing.