Book Image

Mastering PostGIS

By : Dominik Mikiewicz, Michal Mackiewicz , Tomasz Nycz
Book Image

Mastering PostGIS

By: Dominik Mikiewicz, Michal Mackiewicz , Tomasz Nycz

Overview of this book

PostGIS is open source extension onf PostgreSQL object-relational database system that allows GIS objects to be stored and allows querying for information and location services. The aim of this book is to help you master the functionalities offered by PostGIS- from data creation, analysis and output, to ETL and live edits. The book begins with an overview of the key concepts related to spatial database systems and how it applies to Spatial RMDS. You will learn to load different formats into your Postgres instance, investigate the spatial nature of your raster data, and finally export it using built-in functionalities or 3th party tools for backup or representational purposes. Through the course of this book, you will be presented with many examples on how to interact with the database using JavaScript and Node.js. Sample web-based applications interacting with backend PostGIS will also be presented throughout the book, so you can get comfortable with the modern ways of consuming and modifying your spatial data.
Table of Contents (9 chapters)

Chapter 6. ETL Using Node.js

In this chapter, we will focus on ETL operations. ETL stands for Extract-Transform-Load, and its name pretty much describes what we are about to do.

As a matter of fact, we are already familiar with loading the data, as well as extracting it; we also did some data transformations when we reprojected datasets, made flat data spatial, exported a subset of a dataset, or cropped a portion of a raster off a larger dataset. Indeed, we have done ETL already, although our approach involved some manually executed tasks, so it is easy to imagine how labor intensive and therefore time consuming our operations would become if we had to repeat them many times.

Not surprisingly, it is possible to make our lives easier with just a bit of scripting. Over the next few pages, we will define some hypothetical workflows, and then use Node.js to automate and chain the required operations.

Note

We could obviously use any other programming language, but because we're going to do some WebGIS...