Our GRID product – the online, easy to use GIS for the Natural Resources Management (NRM) community – continues to advance with funding from the State NRM body. This last couple of months has seen us working on several different areas, with a big focus on data management (which you can see in our last blog on the project), linkages between GRIDs, mobile technology testing, the new State NRM GRID instance, and the subject of this blog – Infrastructure upgrades.
“Infrastructure” can mean a wide range of things for different people; but in this project, we’re talking about making sure that the software and libraries that are ‘under the hood’ of GRID are updated to the latest versions and to take a look at other opportunities for improving the product. Let’s start with two of the biggest components of the GRID engine; GeoServer and PostgreSQL.
GeoServer (http://geoserver.org/) is what powers all the spatial components of GRID. We have extensively used GeoServer in the past, but due to some issues we kept hitting with it, we were actually considering a potential replacement. However, as is the case in the open source community, since that time there have been a wide range of upgrades delivered for GeoServer (just look at that consistent commitment graph below), and as a result, we have chosen to stick with GeoServer and to undertake the required upgrades to update it.
The GeoServer Commit graph from Github – a nice solid baseline of ongoing commitments – see more at Github
PostgreSQL (https://www.postgresql.org/) is our back-end database that stores all the GRID data, and this is something that we had also considered a potential replacement for. However, after reviewing the sheer amount of work of uncoupling from PostgreSQL, and in also reviewing the upgrades that have occurred in the background, meant that we’ve also chosen to stick with it, and to undertake upgrades instead.
Meanwhile, programming libraries like Django and Dynatree, have been upgraded; which has meant a lot of effort consolidating and testing these new versions. In addition, we’ve also undertaken a bunch of additional enhancements for GRID, including additional web services, absolute co-ordinates, metadata downloads and release notes. So, when we start rolling out the upgrades in the coming weeks for all of our GRID instances (see the map below), they will all benefit – and we’ve been able to ensure that we are providing a highly valuable upgrade as a result.
Meanwhile, we’ve also been refactoring, enhancing and restructuring the codebase behind GRID itself, to make sure that the deployment and ongoing management of the system is much easier. This is a key productivity boost for our own team, but is also setting the scene for some further upgrades and broader uptake we are seeing for GRID into the near future.
We are heads down at the moment heading towards the next set of deliverables, and we continue to work with the NRM GRID Champions around the State to determine the next set of functions that we will be delivering.