Overview of GeoRef system health, cluster status, and data status.

Active Cluster

Target Cluster

MapServer

Last Job

Reference Data Row Counts

Side-by-side comparison of active and target clusters. Zero counts indicate data not yet imported. Import data to the target cluster, then rotate to make it active.

Table (active) (target) Description

Application Data (DynamoDB)

Sources

Collections

Jobs

A collection defines what data to import. It groups data sources and locations together so you can run them as a single job.

Create Collection

Automatically swap to the new data after a successful import
NameItemsAuto-RotateLast RunActions

No collections match your filter.

No collections yet. Create one to get started.

Data Source Items

Each item specifies a data source and which locations (states) to import. Click "Add Source" to include a data source in this collection.

Data TypeSourceCountryLocationsActions

No data sources added yet. Add sources below.

Add Data Source

Use 2-letter state codes or "ALL" for national data

All available data sources have been added to this collection.

Recent Jobs

IDStatusTargetStarted

Data sources define where to download geospatial reference data from government servers. Edit URLs here if a government server changes its address.

TypeNameCountryFormatRate LimitActiveActions

Import jobs download data from government sources and load it into the inactive database cluster. Each job runs multiple steps in parallel.

IDCollectionStatusTargetProgressStartedRuntimeActions

No import jobs yet. Start one from the Collections page.

Schedules automate import jobs. Individual collections can have their own cron schedule, or you can group multiple collections into a sequence with configurable delays between each.

at UTC
minute hour day month weekday
Cron:
minutes 0 = start immediately
minutes
Available
All collections added
Selected (run order)
Click collections on the left to add

Group Schedules

NameScheduleCollectionsDelayStatusLast RunActions

No group schedules yet. Click "+ New Schedule" above to create one.

Individual Collection Schedules

Set a cron expression on a collection to run it automatically. Leave blank to disable.

CollectionSchedule (cron)Last RunActions

GeoRef uses two database clusters (blue and green). Imports load data into the inactive cluster. When ready, swap to make the new data live. Rollback reverts to the previous cluster.

Active Cluster

Inactive Cluster

Import target
Warning: Swapping clusters changes which database all consumers (MapServer, Stratum, HighQ, FieldReveal) read from. Verify the inactive cluster has correct data before swapping.

Rotation History

FromToTypeByDate

Schema patches modify the database structure (tables, columns, indexes). Patches are only applied to the inactive cluster to avoid disrupting live consumers.

Important: Always apply patches before running an import. After rotation, the now-inactive cluster will need patches applied on the next cycle.

Active Cluster

Inactive Cluster

Patches apply here

Pending

Applied

Pending Patches

Patch FileStatusActions

Applied Patches

Patch FileStatusApplied

No patch files found. Patches are committed to Schema/patches/ by developers.

GeoRef Admin Help

What is GeoRef?

GeoRef is a centralized geospatial reference database that stores SSURGO soil data, PLSS land survey boundaries, US Census state/county boundaries, and TIGER transportation/hydrology data. It replaces duplicate copies of this data across multiple systems (HighQ, Stratum, FieldReveal) with a single shared source.

Architecture: Blue/Green Clusters

GeoRef maintains two Aurora PostgreSQL database clusters called blue and green. At any time, one is active (serving live queries from all consumers) and one is inactive (available for data imports).

  • All consumers (MapServer, Stratum, HighQ, FieldReveal) always read from the active cluster
  • Import jobs always write to the inactive cluster
  • When an import is validated, you swap to make the new data live
  • If something is wrong, you rollback to the previous cluster

Typical Workflow

  1. Check Dashboard - verify system is healthy and review current data counts
  2. Review Data Sources - ensure government download URLs are current (they change occasionally)
  3. Create or select a Collection - a collection groups the data sources and locations you want to import
  4. Apply any pending Patches - schema changes must be applied to the inactive cluster before importing
  5. Run the Import - click "Run Import" on your collection. The job downloads from government servers, transforms the data, and loads it into the inactive cluster
  6. Monitor the Job - watch progress on the Jobs page. Each step (data type + location) runs in parallel
  7. Validate - check the Dashboard for row counts on the inactive cluster. Compare against expected values
  8. Swap Clusters - go to Rotation and click "Swap Clusters" to make the new data live

Pages

Dashboard
System health overview. Shows active cluster, PostGIS version, database connectivity, and row counts for all reference tables. Zero counts indicate data that hasn't been imported yet.
Collections
Manage import collections. A collection is a named group of data sources and locations. For example, "Kansas Full Import" might include SSURGO, PLSS, roads, and water for Kansas. Click "Run Import" to start a job.
Data Sources
View and edit data source configurations. Each source has a download URL pattern, file format, and rate limit. Edit URLs here when government servers change their addresses. The rate limit prevents overloading government servers.
Jobs
Monitor import jobs. Each job has multiple steps (one per data type + location). Steps run in parallel. If a step fails, you can "Resume" to retry only the failed steps. You can also "Cancel" a running job.
Rotation
Swap the active database cluster. "Swap Clusters" makes the inactive cluster active. "Rollback" reverts to the previous cluster. Every rotation is logged with who did it and when.
Patches
Apply database schema changes to the inactive cluster. Patches are SQL files committed by developers. They are never applied to the active cluster to avoid disrupting live consumers.

Data Sources Reference

TypeSourceContentUpdate Frequency
census_statesUS Census TIGERState/territory boundaries with FIPS codesAnnual
census_countiesUS Census TIGERCounty boundaries with FIPS codesAnnual
tiger_roadsUS Census TIGERRoad centerlines (per county)Annual
tiger_areawaterUS Census TIGERLakes and ponds (per county)Annual
tiger_linearwaterUS Census TIGERStreams and rivers (per county)Annual
tiger_pointlmUS Census TIGERPoint landmarks (per state)Annual
plss_townshipBLM ArcGISTownship/Range boundariesOngoing
plss_firstdivisionBLM ArcGISSection boundariesOngoing
plss_seconddivisionBLM ArcGISQuarter section boundariesOngoing
ssurgoUSDA NRCSSoil survey polygons + propertiesAnnual
ca_provincesStatistics CanadaCanadian province/territory boundariesEvery 5 years
ca_census_divisionsStatistics CanadaCanadian census division boundariesEvery 5 years
ca_roadsNRCan NRNCanadian road network (per province)Ongoing
ca_hydroNRCan NHNCanadian hydrology networkOngoing
ca_soil_dssAAFCCanadian detailed soil surveyInfrequent

Troubleshooting

Dashboard shows "error" or "degraded"
The active cluster may be unreachable. Check Aurora status in the AWS console. If the cluster is at 0 ACU, it may need a moment to wake up.
Import job step shows "failed"
Click "Details" to see the error message. Common causes: government server changed URL (update in Data Sources), rate limiting (increase rate_limit_ms), or network timeout (retry with Resume).
SSURGO import says "not found in S3 cache"
SSURGO GeoPackage files must be manually downloaded from NRCS Box.com and uploaded to the S3 import cache bucket. The files are too large for automated download.
All table counts show 0
No data has been imported yet. Create a collection, add data sources, and run an import job.
After swapping, consumers show old data
Consumers cache the active cluster endpoint. MapServer Fargate tasks restart automatically. Lambda functions pick up the change on the next invocation. Allow up to 5 minutes for DNS propagation.

About

GeoRef v1.0 - Geospatial Reference Database
AgWorks, LLC
Repository