GDAL: Geospatial Data Abstraction Library

| |

  • We can think of the Geospatial Data Abstraction Library (GDAL) as critical GIS infrastructure.
  • GDAL is used both for raster and vector based operations, often among the most important and common geospatial operations such as georeferncing, data resampling, or vector import and export operations.
  • GDAL is open source; while it will likely remains as such, the business model for such a tool is changing.

We often think of critical infrastructure as something that relates to roads or electricity. In our increasingly digitized world, critical infrastructure is also data networks and software. The Geospatial Data Abstraction Library (GDAL)[1], a set of software tools, is possibly one of the most essential pieces of GIS software, having existed as a project since 2000.

This library is used by both major public platforms such as Google Earth but also common GIS tools such as ArcGIS, QGIS, and GRASS. In fact, there are probably hundreds of software projects that use the GDAL library.

In an interview on the MapScapping PodcastPaul Ramsey discusses the importance of GDAL but also its financial model and long-term viability to the geospatial community.

GIS Data and GDAL

We can think of GDAL as providing the data plumbing of many operations that relate to vector and raster data. Data can be arranged and manipulated so that various data editing and visualization operations can be applied, including among the most common operations such as transformations and georeferencing.

Operations conducted by the tool include slope and aspect calculations, raster warping, subsetting, and image resampling. Many users know it from its ability to work and manipulate a variety of data formats with over 160 raster formats handled and imported by the library.

Data can also be exported in a variety of formats, with the tool working and applying GeoTiIFF, GeoJSON, and CSV formats among many others.

GDAL logo.
GDAL logo.

GDAL Functions Within Other Software and Tools

Command line access means it is often applied within other tools. The OGR library, which works with vector data, including vector graphics, and performs read and write operations on standard formats, is also used.

GDAL is used in a wide range of open source and private tools, therefore it’s frequently included in third-party software for every major operating system.[2]

GDAL, with parts written in C, C++, and Python, has a variety of computer language bindings, which is one reason why it is widely accessible. This enables the tool to be used within popular GIS scripting languages, such as Python, Perl, Ruby, R, and others.

Larger object-oriented platforms applying C, C++, or Java also apply the library. Because of the common operations that can be done within GDAL, large companies such as Esri have decided it is better to use this library rather than create their own proprietary libraries.

More recently, GDAL is also applied as part of cloud-based computing operations, which means users do not even need to have a local copy it and spatial operations can be applied remotely and sometimes in near real-time when data are created.

For example, when you access data such as Landsat from USGS or high resolution satellite imagery from Planet Labs, GDAL operations are already applied from the point of the data being sent from the satellite, including orthorectification.

The GDAL library is constantly updated and improved; it often is important the software is kept up-to-date to avoid potential software conflicts or operations not working properly with other software. 

GDAL: Critical Infrastructure for the Geospatial Community

What we can conclude is that GDAL has effectively become critical infrastructure for the geospatial community. It is perhaps one of the most critical libraries used, given the wide range of operations applied to vector and raster data. Additionally, so many large and small tools use GDAL, it has also become indispensable for applications.

The great news is the library is free and open source using the MIT license. This is reassuring for the geospatial community, but as an open source project that has grown in importance, maintaining the library has become challenging and time demanding.

Maintaining and Funding GDAL

GDAL has benefited many users, including wealthy large technology corporations, who do not have to pay for the tool. Fortunately, the GDAL business model has altered, and large cloud providers and corporations that use the program are now urged to give to the project in order to pay for the software’s time and upkeep.

This has worked well and has allowed the project to bring in developers and editors of the code. Additionally, this means the library is maintained fairly regularly and it can be insulated from it becoming a liability for geospatial users if the software was not maintained. 

As an open source project, GDAL is a collaborative project with various contributors and a more limited number of individuals certifying changes made. While currently some companies and projects are contributing financially to maintain GDAL, it is also important that people become aware that GDAL is critical to many even smaller firms and organisations.

To help maintain the future of this critical software, it might be necessary for users to encourage their managers and budgeting staff to help make contributions to the project to help maintain its future. There is no anticipation the project will charge anyone for its use, given its open source nature, but making donations could be a way to ensure the project continues for years to come. 

References

[1]    For more on GDAL, see:  https://gdal.org/.

[2]    For a recent review of GIS tools and applications, including those that apply GDAL, see:  Duarte, Lia, and Ana Cláudia Teodoro. 2021. “GIS Open-Source Plugins Development: A 10-Year Bibliometric Analysis on Scientific Literature.” Geomatics 1 (2): 206–45. https://doi.org/10.3390/geomatics1020013.

Related

Share this article


Enter your email to receive the weekly GIS Lounge newsletter: