Skip to content
View osm-data-processing's full-sized avatar

Block or report osm-data-processing

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse

OpenStreetMap Data Processing & QA Pipelines

OpenStreetMap Data Processing & QA Pipelines

A technical reference for engineers building and operating production OpenStreetMap data pipelines.
PBF/XML parsing · tag normalization · topology cleaning · routing-graph extraction · replication & diff sync · rule-driven validation · Python automation at continental scale.

Read it at www.osm-data-processing.org →


What this is

OpenStreetMap has grown from a volunteer mapping project into foundational geospatial infrastructure — the base layer under routing engines, navigation stacks, urban analytics, and machine-learning feature stores. Turning its raw, continuously-edited extracts into clean, reproducible datasets is a real engineering discipline, and this site is a deep, practical reference for that work.

Every page is written for mapping engineers, OSM contributors, GIS analysts, and Python ETL developers who need deterministic, reproducible workflows at continental scale. Expect byte-level format dives, memory-aware streaming patterns, runnable Python, and rule-driven quality assurance you can wire straight into Dask, Ray, or plain multiprocessing — not surface-level overviews.

What's inside

The material is organised into four tracks, each an in-depth reference with step-by-step guides, runnable code, hand-drawn diagrams, and error/remediation tables.

  • OSM Data Fundamentals & Architecture — the node/way/relation data model, PBF vs XML serialization, the binary block layout, coordinate reference systems, spatial indexing (R-tree, H3, Quadkey), tag taxonomy, and ODbL licensing.
  • Parsing & Tag Normalization Workflows — choosing a parser (pyosmium vs pyrosm vs osmium-tool), async PBF ingestion, memory-efficient chunk processing, batch attribute mapping, regex value cleaning, and routing-graph conversion with OSMnx.
  • OSM Replication & Diff Sync — keeping local extracts current with .osc.gz change files, replication sequence numbers and state tracking, full-history .osh.pbf processing, and building an automated minutely update pipeline.
  • OSM Data Quality & Validation — authoring validation rules across JOSM, Osmose, and Python; geometry validation and repair; routing-graph topology QA; and tag/attribute consistency checking.

Why read it

  • Spec-grounded, not hand-wavy. Size ceilings, encoding rules, sequence semantics, and winding-order invariants are cited to the OSM Wiki and protobuf spec, so the code matches the format.
  • Runnable, production-shaped code. Python 3.10+ with type hints, a consistent logging pattern, streaming-first memory discipline, and quarantine-over-abort error handling.
  • Failure modes up front. Every guide names the subtle bugs — unreset delta accumulators, varint misreads, orphaned references, out-of-order diffs, self-intersecting rings — before they cost you a pipeline run.
  • A tight reference graph. Concepts link to the pages that define them, so you can go as deep as a topic needs without losing the thread.

Built with

A static site generated with Eleventy, hand-authored inline SVG diagrams, KaTeX for coordinate math, and Prism for syntax highlighting — deployed on Cloudflare. The source in this repository is the complete content and templates behind www.osm-data-processing.org.

Explore

→ Start reading at www.osm-data-processing.org

More projects from the same author live under the osm-data-processing organization on GitHub.

Popular repositories Loading

  1. osm-data-processing osm-data-processing Public

    Technical reference for building and operating production OpenStreetMap (OSM) data pipelines — PBF/XML parsing, tag normalization, replication & diff sync, routing-graph extraction, and rule-driven…

    CSS 1