Book Image

Geospatial Data Analytics on AWS

By : Scott Bateman, Janahan Gnanachandran, Jeff DeMuth
Book Image

Geospatial Data Analytics on AWS

By: Scott Bateman, Janahan Gnanachandran, Jeff DeMuth

Overview of this book

Managing geospatial data and building location-based applications in the cloud can be a daunting task. This comprehensive guide helps you overcome this challenge by presenting the concept of working with geospatial data in the cloud in an easy-to-understand way, along with teaching you how to design and build data lake architecture in AWS for geospatial data. You’ll begin by exploring the use of AWS databases like Redshift and Aurora PostgreSQL for storing and analyzing geospatial data. Next, you’ll leverage services such as DynamoDB and Athena, which offer powerful built-in geospatial functions for indexing and querying geospatial data. The book is filled with practical examples to illustrate the benefits of managing geospatial data in the cloud. As you advance, you’ll discover how to analyze and visualize data using Python and R, and utilize QuickSight to share derived insights. The concluding chapters explore the integration of commonly used platforms like Open Data on AWS, OpenStreetMap, and ArcGIS with AWS to enable you to optimize efficiency and provide a supportive community for continuous learning. By the end of this book, you’ll have the necessary tools and expertise to build and manage your own geospatial data lake on AWS, along with the knowledge needed to tackle geospatial data management challenges and make the most of AWS services.
Table of Contents (23 chapters)
1
Part 1: Introduction to the Geospatial Data Ecosystem
4
Part 2: Geospatial Data Lakes using Modern Data Architecture
10
Part 3: Analyzing and Visualizing Geospatial Data in AWS
16
Part 4: Accessing Open Source and Commercial Platforms and Services

Redshift geohashing support

Now, let’s look at how Redshift Spectrum partitioning can be combined with geospatial data to efficiently query data. So, what is geohashing? Geohashing essentially takes the world and divides it into grids. By hashing latitude and longitude coordinates, we can create a hashmap that is assigned to those grids and group data into these grids. This grouping can then be used in conjunction with database partitioning. This is a powerful approach to segmenting and storing data in a data lake. Redshift supports geohashing, giving you the ability to write a SQL query and generate a geohash for latitude and longitude, which can then be used to reference your partition. A more specific example of this could involve dividing the world into four squares, named a, b, c, and d. So, now we write a SQL query to, say, select a column ID where the geohash equals a. Now, Redshift will only read the data in S3 from the a quadrant of the planet. This could still be potentially...