Course · ← 0009 Georeferencing · 0011 Topology → · engine layer

Lesson 0010 · ~14 minutes

Where Geometry Lives

Geodatabase and spatial extension are not two words for the same thing. One is a data model with behaviour on top of a database; the other is a type system inside one. Knowing which you are buying decides who owns your rules.

Two philosophies

Geodatabase (Esri)

The dividing question is where does a rule live. In a geodatabase, much of the behaviour is knowable only through the Esri stack. In PostGIS, a constraint is a constraint — QGIS, a Python script, a Java service and psql all hit the same wall.

The three geodatabases

ArcGIS Pro supports three types — file, mobile, and enterprise.1

TypeStorageConcurrency
FileA folder of files on diskDesigned for a single editor; no geodatabase versioning1
MobileOne SQLite file, .geodatabaseField capture and disconnected use; SQL access needs no licence because SQLite needs none1
EnterpriseInside a real DBMS (PostgreSQL, SQL Server, Oracle…)Multiuser, effectively unlimited size, supports version-based workflows1

Versioning is the enterprise geodatabase's headline feature and the reason people pay for it: it lets many editors work concurrently without locking datasets or overwriting each other's edits.1 Long transactions — a subdivision that takes three weeks and several approvals — are exactly the land-administration workflow it was designed for. Archiving is its temporal sibling, retaining the history of changes.

Where this meets lesson 0004

Enterprise geodatabase versioning is a system-time mechanism: who edited what, when, in which branch. It is not the bi-temporal, legally-meaningful lifespan LADM asks for. You still model begin_real_world yourself. Treating DBMS versioning as your legal history is a category error — it answers "when did the database change" and never "when did the right begin".

Inside a spatial extension

PostGIS puts geometry in a typed column and indexes it. The index is what makes spatial queries viable: PostGIS primarily uses GiST, implementing an R-tree, which groups nearby objects by their minimum bounding rectangle; SP-GiST offers quad-tree style spatial partitioning as an alternative.2

-- the SRID in the type is a constraint, not a comment (lesson 0008)
CREATE TABLE spatial_unit (
  id            bigserial PRIMARY KEY,
  label         text NOT NULL,
  geom          geometry(Polygon, 32637) NOT NULL,
  capture_method text NOT NULL,
  accuracy_class text NOT NULL
);
CREATE INDEX spatial_unit_geom_idx ON spatial_unit USING GIST (geom);

-- geometry  → planar, fast, metres in a projected CRS   ← cadastral work
-- geography → spheroidal, slower, correct over long distances

Two more choices worth knowing. geometry vs geography: use geometry in a projected national CRS for cadastral data — planar maths, full function coverage, and areas that mean something. geography earns its keep for continent-spanning distance work, not parcels. And portable single files: GeoPackage (an OGC standard, SQLite-based) is the neutral answer to Esri's file geodatabase and the sane default for handing data to someone else.

Choosing, in donor-project terms

If you need…Answer
Parcel fabric, geodatabase topology, utility networkEnterprise geodatabase — these are Esri behaviours (lessons 0011, 0013, 0014)
Any client to enforce the same rulesPostGIS constraints and triggers
Legally meaningful historyYour own bi-temporal model — neither product gives it
Offline field captureMobile geodatabase, or GeoPackage plus your own sync
Handover to district staff in year fourWhatever they can actually operate — lesson 0006

A note on the hybrid, because it is common and it confuses people: an enterprise geodatabase can sit inside PostgreSQL/PostGIS. You then have Esri's model and behaviour layered over open storage — and PostGIS spatial operators are available as an enterprise-geodatabase-specific feature.1 Useful, but do not mistake it for portability: the tables are there, and the meaning is still in Esri's schema.


Drill 1 — Where does this rule live?

Drill 2 — Recall


Your primary source

Esri, Types of geodatabases — the authoritative statement of what each type is and is not:
pro.arcgis.com — Types of geodatabases

For the other side, the PostGIS spatial index FAQ is short and unusually clear about when indexes help and why: postgis.net — How do I use spatial indexes?

Ask your teacher. Worth asking: "what does versioning cost in practice?", "how do I do long transactions in plain PostGIS?", "is GeoPackage safe as a delivery format for a donor?"