The current market for connected devices is huge and will continue to grow. According to Salesforce, there will be 75 billion connected devices by 2020. As such, it’s a promising market for many different parties – geospatial software companies being one of them. In a way, location technology and IoT are old friends. When surveying equipment vendors introduced RFID tags for tracking assets in the field a few years ago, the term IoT wasn´t around yet but the concept behind it was the same: devices talking to each other over the internet.
What is new, though, is the scale and speed at which IoT data is captured from devices, transferred, stored, and analyzed. This is where cloud and big data analytics technology comes in, as the cloud is the number one choice for handling and analyzing IoT data nowadays. It is not that simple, however. If you want to monetize IoT data, one needs a good financial strategy (cloud costs can escalate quickly) as well as a plan for the massive amounts of data that need to be maintained, prepared, and analyzed for consumption before you see any returns on your investment.
These challenges are discussed in detail in a recently published book called “Analytics for the Internet of Things (IoT)” written by Andrew Minteer. The cost aspect keeps coming back throughout the book, whether the topic is deploying cloud infrastructure or organizing IoT data for analytics.
Minteer also discusses the challenges of storing geospatial data for IoT, a slightly more complex topic. He offers a number of options for undertaking this task, including a filesystem format (Esri shapefile, GeoJSON) and a relational database type (Oracle, SQL Server, PostGIS). Both options work fine in a desktop-based environment, but, again, the preferred option for IoT data analytics is the cloud. And unfortunately, services in the Hadoop ecosystem such as the Hadoop Distributed File System (HDFS) and Apache Hive do not natively support spatial data types. However, there are some open source projects that fill the gap, and Minteer covers a method that uses geospatial Python packages.
There is also the challenge of processing geospatial big data when desktop tools fall short. Big data tools that offer geospatial capabilities are Elasticsearch (an open source distributed search engine), RedShift (a managed petabyte-scale data warehouse service from Amazon Web Services) and an Esri-supported open source project called GP tools for AWS that is now four years old.
A few solutions
Luckily, Esri has been developing a number of custom server-based solutions for IoT, real-time GIS and big data that solve the data storage and processing problems mentioned earlier. These are available since the ArcGIS 10.5 release that streamlined and renamed its entire server-type product line. For IoT, there´s the GeoEvent Server that offers ingestion and analytics capabilities of high-velocity and real-time data. Second, there´s the Spatialtemporal Big Bata Store, which enables archival of high volume observation data, sustains high velocity write throughput, and can run across multiple machines (called nodes). Third, there´s the GeoAnalytics Server for big data analysis. They can be used separately or in different combinations. Another geospatial software provider, Carto, has been active in the IoT/Big Data space for some time and offers similar solutions.