An Enterprise Street Addressing System Using Open Source Paul E. McCullough City and County of San Francisco gmail - p.e.mccullough slides - code -
mundane insert, update, delete (retire) useful Enterprise Addressing System
satisfy 80% of street address use cases be the system of record reduce the silo count We built it to...
We thought it should be... geospatial web centric based on open source
Agenda architecture web client demonstration extract - transform - load messaging
Architecture/Deploy Javascript Ext JS OpenLayers model view controller Web Client Httpd Python Django GeoDjango Web Server model view template map_db app_db RDBMS PostgreSQL/PostGIS json ajax Virtualized Linux on Applogic Java Tomcat Geoserver Map Server maps map cache
Web Client Demonstration search change request address review
Extract - Transform - Load ETL app_db map_db Public Works parcels streets Assessor ownership Enterprise GIS transform
Extract - Transform - Load Feature Manipulation Engine Python scripts dev, qa, prod two-phase commit ssh map cache reseed
Messaging Web Services Address System Web Server look up change notification Client System Web Server
Review architecture web client extract - transform - load messaging
Questions gmail: p.e.mccullough slides: todo – url repo: todo - url
Credits City and County of San Francisco Department of Technology Department of Building Inspection Assessors Office Department of Public Works Farallon Geographics Open Source Projects Ext JS / OpenLayers Mozilla / Firefox / Firebug EveryBlock Python / Django / GeoDjango GeoServer PostgreSQL / PostGIS Linux
the following slides are supplemental
Data Model
Feature: Simple, Adequate Data Model parcel to address (many to many) apartments timeshares multi-story condos tenants in common mailing address status (official, provisional...)
Feature: Address Lineage Main Street change request
Feature: Address Point Table street based geo-coding falls short Main Street Add Constraint: point must be within a polygon