Processing Open Street Map Data with Python and PostgreSQL
summary
OpenStreetMap is a >50GB global dataset and the Germany PBF is ~3.6GB, so the workflow uses PostgreSQL + PostGIS for storage, Python for orchestration, and command‑line tools like osmium and osm2pgsql to extract, filter and import data with Lua style scripts. A small CLI called osmproj performs prepare and report commands, writes Plotly HTML charts, and outputs counts and densities (example: Stuttgart ~11.93 wastebaskets/km², Berlin 7,489 total).
AI-written summary · about
chapters (19)
- 0:00Intro
- 3:11What is OpenStreetMap (OSM)?
- 3:59OSM data types
- 6:22Tagging features
- 7:53Example tags
- 8:46OSM mirrors
- 10:07What is geospatial PostgreSQL anyways?
- 11:55Geographic Data Types in PostgreSQL.
- 12:59Go checkout the Post GIS tutorial
- 13:37Importing OSM data into PostgreSQL
- 15:54Customizing imports with Lua scripts
- 20:26Project requirements
- 21:22Let's map this data pipeline
- 25:18Python project layout
- 27:38What should it look like? -- [Report]
- 29:22Report findings
- 30:11Utilize the terminal too!
- 32:37Why would you use this method?
- 35:21Resources
related talks
41mHow to GIS with Python
25mUsing Python to Unlock Insights from OpenStreetMap Data at Scale
40mGIS capability of PostgreSql using POSTGIS & OSM DATA
50m–Mom, can we have G**gle Maps? –We have G**gle Maps at home
24mActual trees, not b-trees...
21mActual trees, not b-trees: or how I found PostgreSQL through PostGIS
05mSpatial Mapping in Python with GeoPandas and OpenStreetMap
43mLocate all the things
