geoprocessing with neo4j-spatial and osm

23
Neo4j Spatial Craig Taverner Neo Technology / AmanziTel #neo4j @craigtaverner [email protected] Geoprocessing with Neo4j-Spatial and OSM

Upload: craig-taverner

Post on 01-Jun-2015

10.348 views

Category:

Technology


17 download

DESCRIPTION

FOSS4G 2011 Presentation What better way to perform geoprocessing than on a graph! And what better dataset to play with than Open Street Map! Since we presented Neo4j Spatial at FOSS4G last year, our support for geoprocessing functions and for modeling, editing and visualization of OSM data has improved considerably. We will discuss the advantages of using a graph database for geographic data and geoprocessing, and we will demonstrate this using the amazing Open Street Map data model.

TRANSCRIPT

Page 1: Geoprocessing with Neo4j-Spatial and OSM

Neo4jSpatial

Craig TavernerNeo Technology / AmanziTel

#neo4j@[email protected]

Geoprocessing with Neo4j-Spatial and OSM

Page 2: Geoprocessing with Neo4j-Spatial and OSM

Where are the Mushrooms?

Page 3: Geoprocessing with Neo4j-Spatial and OSM

Where are the Mushrooms?

Page 4: Geoprocessing with Neo4j-Spatial and OSM

Geoprocessing with Neo4j-Spatial

Intro to Neo4j and Neo4j Spatial

Recap on graph databases and 2010 work

Geoprocessing

LBS and SimplePointLayer

Routing OSM

GSoC 2011 – Geoprocessing functions

Data Mining OSM

What's next

Geoprocessing pipeline

Cool domains: artistic maps

Page 5: Geoprocessing with Neo4j-Spatial and OSM

NoSQL

Not Only SQLNot Only SQL

Page 6: Geoprocessing with Neo4j-Spatial and OSM

NOSQL data models

Bigtable clones

Key-value stores

Document databases

Graph databases

Data complexity

Data

siz

e

Page 7: Geoprocessing with Neo4j-Spatial and OSM

Neo4j – Nodes, Relationships, Properties

Nodes have different properties

Matrix characters: People vs. Programs

Build structure as you go

Who loves Neo?

Page 8: Geoprocessing with Neo4j-Spatial and OSM

Neo4j Spatial 2010

GSoC 2010

Core

Storage, GeometryEncoder

Search/RTree, Operations

I/O (Shapefile)

Extensions

Geotools Datastore

GeoServer & uDig

Ruby API

neo4j-spatial.rb (Rubygem)

OpenStreetMap

Import OSM, Dynamic Layers (JSON & CQL)

Export Shapefiles, and SLD styled PNG

Page 9: Geoprocessing with Neo4j-Spatial and OSM

OpenStreetMap

OSM

RTree

DynamicLayers

DynamicLayers

Page 10: Geoprocessing with Neo4j-Spatial and OSM

Neo4j-Spatial 2011

OSM

Performance

Changesets and Users

Geoprocessing

LBS and SimplePointLayer

Routing OSM

GSoC 2011 – Geoprocessing functions

Data Mining OSM

What's next

Geoprocessing pipeline

Cool domains: artistic maps

Page 11: Geoprocessing with Neo4j-Spatial and OSM

Finding things close to other thingshttp://blog.neo4j.org/2011/03/neo4j-spatial-part1-finding-things.html

Page 12: Geoprocessing with Neo4j-Spatial and OSM

Finding things close to other thingshttp://blog.neo4j.org/2011/03/neo4j-spatial-part1-finding-things.html

Page 13: Geoprocessing with Neo4j-Spatial and OSM

Routing with OSM

Page 14: Geoprocessing with Neo4j-Spatial and OSM

Data Mining OSM

timestamp > 1207014810000 and timestamp < 1208310810000 and ( user = 'Zenon' or user = 'tomasCY' or user = 'muffu' or user = 'dcp' or user = 'cartOMike' or user = 'djanda' or user = 'Peter14' or user = 'toaster' or user = 'user_7363' or user = 'lyx')

Page 15: Geoprocessing with Neo4j-Spatial and OSM

GSoC 2011 – Geoprocessing Functions

Page 16: Geoprocessing with Neo4j-Spatial and OSM

GSoC 2011 – Geoprocessing Functions

Page 17: Geoprocessing with Neo4j-Spatial and OSM

Geoprocessing Pipeline

Page 18: Geoprocessing with Neo4j-Spatial and OSM

Artistic Maps

Page 19: Geoprocessing with Neo4j-Spatial and OSM

Artistic Maps

Page 20: Geoprocessing with Neo4j-Spatial and OSM

Artistic Maps

Page 21: Geoprocessing with Neo4j-Spatial and OSM

Graph Indexes

Tree indexes in the graph

R-Tree

KD-Tree

Index is part of the data model

Index is part of the statistics

Page 22: Geoprocessing with Neo4j-Spatial and OSM

Future

Editing

Fine Grained Geotools Feature Editing

OSM Editor

OSM

Caching sub-graphs (desktop & mobile)

More Dynamic Layers & Shapefile export

Topology

Persist all topological results in graph

Benchmarking & Performance

Improved indexing

Composite index

Page 23: Geoprocessing with Neo4j-Spatial and OSM

API References

Wiki, Code, API references

http://wiki.neo4j.org/content/Neo4j_Spatial

http://github.com/neo4j/neo4j-spatial

http://components.neo4j.org/neo4j-spatial

Mailing list: [email protected]

http://neo4j.org/community/list/