34
© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential Graph BigData – Neo4J Spatial Graph BigData – Neo4J Spatial Frans Thamura Frans Thamura [email protected] [email protected]

Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Embed Size (px)

DESCRIPTION

Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Citation preview

Page 1: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential

Graph BigData – Neo4J SpatialGraph BigData – Neo4J Spatial

Frans ThamuraFrans [email protected]@meruvian.com

Page 2: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

• BlueOxygen Marketplace (www.blueoxygen.net)‏ - Founder

- Open Source Project on Java, since 2001.

• JUG Indonesia (http://www.jug.or.id) - Founder

• Meruvian Group (http://www.meruvian.org) - Founder

• jTechnopreneur (http://www.jtechnopreneur) - Founder

• JENI Advisory Board (http://www.jeni.or.id) -

• Oracle Ace Director

• Sun Java Champion

• CodeAndroid Indonesia Chapter (www.codeandroid.or.id)

• OpenStack Indonesia Chapter (www.openstack-id.org)

• OSGeo Indonesia (www.osgeo.or.id)

Who is Frans Thamura?Who is Frans Thamura?

Page 3: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

MeruvianMeruvian

• Meruvian is Development and Services Institute based on Java and Enterprise OpenSource.

• Found as a gap solution between education and industry

• Meruvian start operates at March 28, 2006

• Founder: Frans Thamura

• Knowledge Management Oriented

Industry

Education

Meruvian

Page 4: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

JENI 2.0JENI 2.0

Page 5: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Open Source Geospatial FoundationOpen Source Geospatial Foundation

http://www.osgeo.or.idhttp://www.osgeo.or.id

Page 6: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

OSGeo's MissionOSGeo's Mission

Support and promotethe highest quality

Open Source Geospatial Software

Page 7: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

OSGeo's StructureOSGeo's Structure

CommitteesCommittees

Committees

Board of 9 Directorsand President

LocalChaptersLocal

ChaptersLocalChapters

OfficersOfficers25 Officers

LocalChaptersLocal

ChaptersFoundationProjects

CommitteesCommittees

Committees

elected by Membership 147 Charter Members

Charter Members vote

represent

Sponsors

Page 8: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

OpenStreetMap

UMN MapServer

MapFish

web mapping

GRASS GIS

Quantum GIS OSSIM

desktop GIS

metadata

GEOS

GDAL/OGR

GeoTools

libraries

MetaCRS

PostGIS

GeoMajas

Quantum GIS MapServer

deegree

OpenLayers GeoServer

MapGuide OS

deegree GIS

MapNik

Viking

KOSMO

gvSIG

SpatialLite

uDig

Geopublisher

Mapbender

GeoNetwork

GeoKettle

GMT

ZOO Project

FDO

Page 9: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

The Open Geospatial Consortium (OGC)The Open Geospatial Consortium (OGC)

• The Open Geospatial Consortium (OGC) is an international industry consortium

• 481 members (as of March 2013), companies, government agencies and universities

• Operates under a consensus process to develop publicly available interface standards.

• OGC Standards support interoperable solutions that "geo-enable" the Web, wireless & location-based services and mainstream IT.

• The standards empower producers to make complex spatial information and services accessible

Slide by courtesyof Athina Trakas

Page 10: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

GeoServerGeoServer

• GeoSpatial enterprise gateway – Java Enterprise

– Management and Dissemination of raster and vector data

• Standards compliant – OGC WCS 1.0, 1.1.1 (RI), 2.0 in the pipeline

– OGC WFS 1.0, 1.1 (RI), 2.0

– OGC WMS 1.1.1, 1.3

– OGC WPS 1.0.0

• Google Earth/Maps support – KML, GeoSearch, etc..

Page 11: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

GeoServer: Format & ProtocolsGeoServer: Format & Protocols

Page 12: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

GeoServer ArchitectureGeoServer Architecture

Page 13: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

NoSQL NoSQL

Page 14: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Neo4j – Nodes, Relationships, PropertiesNeo4j – Nodes, Relationships, Properties

• Nodes have different properties– Matrix characters: People vs. Programs

• Build structure as you go– Who loves Neo?

Page 15: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Page 16: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Neo4j SpatialNeo4j Spatial

• Core– Storage

– Search

– Operations (GeoProcessing)

– I/O (Import / Export)

• Extensions– Geotools & GeoServer

– uDig

– OpenStreetMap

Page 17: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Page 17© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed. 17

diamond butterfly bullstar

franklin horton hall-jankorobertson

Graph PatternGraph Pattern

Page 18: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Page 18© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Trends in BigData & NOSQLTrends in BigData & NOSQL

18

• Increase data size (bigdata)– “Today we create as much information as we did up to 2003” - Eric

Schmidt

• Increasingly connected data (graph data)– for example, text documents to html

• Semi-structured data – individualization of data, with common sub-set1. increasing data size

(big data)

– “Every 2 d

• Architecture - a facade over multiple services– from monolithic to modular, distributed applications

Page 19: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Page 19© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Graph EverywhereGraph Everywhere

• Relationships in – Politics, Economics, History, Science, Transportation

• Biology, Chemistry, Physics, Sociology– Body, Ecosphere, Reaction, Interactions

• Internet– Hardware, Software, Interaction

• Social Networks– Family, Friends

– Work, Communities

– Neighbours, Cities, Society

Page 20: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Page 20© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Good RelationshipsGood Relationships

• The world is rich, messy and related data

• Relationships are as least as important as the things they connect

• Graphs = Whole > Σ parts

• Complex interactions

• Always changing, change of structures as well

• Graph: Relationships are part of the data

• RDBMS: Relationships part of the fixed schema

Page 21: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Page 21© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Page 22: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Page 22© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

A graph database...A graph database...

• NO: not for charts & diagrams, or vector artwork

• YES: for storing data that is structured as a graph– remember linked lists, trees?

– graphs are the general-purpose data structure

• “A relational database may tell you the average age of everyone in this session,

• but a graph database will tell you who is most likely to buy you a beer.”

Page 23: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Page 23© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed. 23

foo barfoo_bar

You know relationalYou know relational

now consider relationships...

Page 24: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Page 24© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

We're talking about a Property GraphWe're talking about a Property Graph

24

Properties (each a key+value)+ Indexes (for easy look-ups)

Page 25: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Page 25© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Looks different, fine. Who cares?Looks different, fine. Who cares?

• a sample social graph

• with ~1,000 persons

• average 50 friends per person

• pathExists(a,b) limited to depth 4

• caches warmed up to eliminate disk I/O

# persons query time

Relational database

1,000 2000ms

Neo4j 1,000 2ms

Neo4j 1,000,000 2ms

Page 26: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Page 26© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Neo4j is a Graph DatabaseNeo4j is a Graph Database

• A Graph Database:

• a schema-free Property Graph

• perfect for complex, highly connected data

• A Graph Database:

• reliable with real ACID Transactions

• scalable: 32 Billion Nodes, 32 Billion Relationships, 64 Billion Properties

• fast with more than 1M traversals / second

• Server with REST API, or Embeddable on the JVM

• higher-performance with High-Availability (read scaling)

26

Page 27: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Create Graph with CypherCreate Graph with Cypher

CREATE (steve {name: “Steve Vinoski”}) -[:PRESENTED_WITH {date:{day}}]-> (michael {name: “Michael Hunger”})

Page 28: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

Page 28© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

BindingsBindings

28

REST://

Page 29: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Connecting and SplittingConnecting and Splitting

• Routing

• OSM Dynamic Layers

Page 30: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

FutureFuture

• 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 31: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

OpenStreetMapOpenStreetMap

Page 32: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

OpenStreetMapOpenStreetMap

Page 33: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential - Not to be Copied or Distributed.

Snappr - OpenStreet /Neo4JSnappr - OpenStreet /Neo4J

https://github.com/peterneubauer/snappstr

Page 34: Overview of OSGeo + OGC + Neo4J Spatial + GeoServer

© 2004 – 2009 , Meruvian Foundation. All rights reserved. Proprietary and Confidential

Thank YouThank You

Frans ThamuraFrans [email protected]@meruvian.com

https://www.slideshare.net/flatburger/overview-of-osgeo-ogc-neo4j-spatial-geoserver