Atlas
is a way to efficiently represent OpenStreetMap data in memory. A subset of the data is in a "navigable network" form, meaning anything that is assumed to be navigable will be in a form of Node
s and Edge
s in a way a routing algorithm could traverse it. It also provides easy to use APIs to access geographical data. On top of it all, it is easy to shard and re-stitch, making it perfect for distributed processing!
Projects using Atlas:
- atlas-generator: A Spark job to distribute Atlas shards generation
- atlas-checks: A suite of tools to check OSM data integrity using Atlas, and Spark.
- josm-atlas: A JOSM plugin to visualize Atlas data.
For build instructions and to contribute, please see the contributing guidelines.
Start playing with Atlas directly with this sample project!
Language | Level |
---|---|
Java | Full feature |
Python | Basic |
- A uni-directional navigable network (
Edge
,Node
) - Non-navigable features (
Area
,Line
,Point
,Relation
) - All tags
As well as other handy tools:
- Create it from
.osm.pbf
- Sharding
- Shard Stitching
- Shard Exploration
- Tag Filtering
- Atlas Filtering
- PBF Ingest
- Country Slicing
- Way Sectioning
- Cutting
- Routing
- Higher-level entities
- Saving / Loading
- GeoJSON Parser
- Command Line Tools
- Atlas Query Language i.e. AQL
For more information, please contact our community projects lead Andrew Wiseman.