PostGIS presentation
PostGIS: future developments
What is PostGIS GPL PostgreSQL extension for Geographic Objects Types Operators Functions Indexes Standard interfaces Extension API
Current features OpenGIS “Simple Features for SQL” standard Spatial analisys and predicates (GEOS/JTS) Up to 4 dimensions coordinates (Shapefile-like) 2d spatial indexing (rtree/GiST) SRS reprojections (PROJ4) About 200 spatial functions Lossless shapefile import / export
current features Points Lines Polygons MultiPoints MultiLines MultiPolygons Collections
OGC types
current features Union Intersection Difference Symmetric difference Convex Hull Buffer
Spatial analisys
current features Equals Disjoint Intersects Touches Crosses Within Contains Overlaps
Spatial predicates
current features 2D ( X, Y ) 2.5D ( X, Y, Z ) Measured ( X, Y, M ) Measured 2.5D ( X, Y, Z, M )
Coordinate dimensions
Lossless
Shapfile
import / export
Community MapServer GeoServer UDIG Qgis Jump OpenEV GRASS OGR GeoTypes GeoTools MezoGIS Thuban phpPgGis PrimaGIS OrbisCAD ...
Ongoing and future developments
Long transactions
Topology
Networks
Rasters
ISO SQL/MM
...
ongoing development Features locking Implemented in 1.1.3 OGC standard (WFS)
Long transactions
long transactions OGC Web Features Service Generic web-based architectures Data integrity Concurrent access
What for ?
long transactions Lock any database row (not only features) The lock is bound to an authentication token Add auth tokens to your session Do your things Unlock the row(s)
How does it work
ongoing development Space partitioning Drafted since 1.1.0 ISO standard (SQL/MM)
Topology
topology Topological integrity Reduced storage size Spatial analisys
Why ?
why topology ? Every intersection is a node
Topological integrity
why topology ? Every intersection is a node
Topological integrity
why topology ? Edges are shared ...
Topological integrity
why topology ? ... not separate entities.
Topological integrity
why topology ? Every edge is stored only once
Reduced storage size
why topology ? Spatial relationships are part of the model Predicates and overlays using standard SQL Do they touch ? YES ! (no starvation)
Spatial analisys
topology Draft included in PostGIS 1.1.0 Conceptual schema Phisical schema (ISO SQL/MM) Functions (ISO SQL/MM)
What do we have
topology Faces, Edges and Nodes
Conceptual model
topology Topo-geometries
Conceptual model
topology Layers
Conceptual model
topology
Conceptual model
topology PostgreSQL 7.3 or up required All routines, types and other management objects are stored in the "topology" schema Topologies are stored in schemas TopoGeometry type Layers metadata
Phisical model
topology topology.topology topology.layer
Metadata tables
topology <name>.edge <name>.face <name>.node <name>.relation (TopoGeometry comp.)
Topology schemas
topology Create/destroy topologies Edit topologies Validate topologies Define layers (simple and hierachical) Define TopoGeometries (simple and hierarchical) Cast TopoGeometries to Geometries
Functions
topology ISO SQL/MM topology editing functions are incomplete (can still use standard SQL) TIGER/Line loader dumper (possible at this stage) Geometry => TopoGeometry
Missing features
future developments Shortest path Cartoweb ISO standard (SQL/MM)
Network
network Communication networks modeling Standardized interface Common algorithms
Why ?
network A schema and a set of functions Like Topology model Nodes, Links (vs. edges), No faces
What would it be ?
network Unimplemented :)
Current status
future developments DBMS vs. filesystem Imagery or analisys ? Standards ?
Rasters
rasters Unified access SQL interface .... ....
Why ?
rasters File formats already indexed Easier disaster recovery
Why not ?
rasters The CHIP type PgCHIP gdal driver ... ...
What do we have
rasters GEORASTER-like ... ... ...
Possible design