|
|
|
|
|
by wcedmisten
709 days ago
|
|
I recently discovered DuckDB's Read_OSM() function [1], which lets you query OSM PBF files directly. For example, it's simple to count the cafes in North America in under 30s: SELECT COUNT(*) FROM st_readOSM('/home/wcedmisten/Downloads/north-america-latest.osm.pbf') WHERE tags['amenity'] = ['cafe'];
┌──────────────┐
│ count_star() │
│ int64 │
├──────────────┤
│ 57150 │
└──────────────┘
Run Time (s): real 24.643 user 379.067204 sys 3.696217
Unfortunately, I discovered there are still some bugs [2] that need to be ironed out, but it seems very promising for doing high performance queries with minimal effort.[1]: https://duckdb.org/docs/extensions/spatial.html#st_readosm--... [2]: https://github.com/duckdb/duckdb_spatial/issues/349 |
|
Can I ask where you get official OSM PBF data from? (I found these two links, but not sure what data these contain)
https://planet.openstreetmap.org/pbf/
http://download.geofabrik.de/