Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Neo4j and Me

Glenn
July 08, 2015

Neo4j and Me

In this talk, Glenn explains how he got started using graph databases, in particular Neo4j, and how graph databases will be used in the Colleague Locator application at Bankwest. He will also give a brief introduction to Graphs and Graph Databases, a few demos, and some of the pros and cons of Neo4j.

Glenn

July 08, 2015
Tweet

More Decks by Glenn

Other Decks in Technology

Transcript

  1. Me • 14 years in Desktop Engineering and IT Navy,

    Government, Mining, Finance, Corporate • DevOps advocate • Not a database admin or java expert
  2. “In computing, a graph database is a database that uses

    graph structures for semantic queries with nodes, edges, and properties to represent and store data. A graph database is any storage system that provides index-free adjacency” -Wikipedia
  3. AllegroGraph Horton OpenLink Virtuoso SPARQLCity ArangoDB HyperGraphDB OQGRAPH Sqrrl Enterprise

    Bigdata IBM System G Native Store Oracle NoSQL Database Stardog Bitsy InfiniteGraph Oracle Spatial and Graph Teradata Aster BrightstarDB InfoGrid OrientDB Titan Cayley jCoreDB Graph Orly Trinity DEX/Sparksee MapGraph Profium Sense TripleBit Filament Neo4j R2DF VelocityGraph GraphBase OhmDB ROIS VertexDB Graphd Ontotext GraphDB sones GraphDB Weaver Lots to choose from…
  4. My Requirements • Had to run on Windows • Needed

    a C# client • Needed a REST API for querying
  5. My Requirements • Had to run on Windows • Needed

    different client languages • Needed a REST API for querying
  6. Neo4j Features • Cypher query language • Good community support

    • Community version is free • Easy to install • Schema-less not structure-less • Good training resources
  7. Neo4j Java bonus Features • Java is first class citizen

    • Embedded version as well as standalone
  8. MATCH (theirfav:Person) -[:FAVOURITE_OF*2..4]-> (me:Person {name:‘Glenn Sarti’}) WHERE (theirfav <> me)

    AND NOT ( (me)<-[:FAVOURITE_OF]-(theirfav) ) WITH theirfav,COUNT(theirfav) as Popularity RETURN theirfav,Popularity ORDER BY Popularity DESC LIMIT 5
  9. GPL v3 License could be restrictive Community version does not

    include clustering Commercial version can be expensive