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/


Top Related