100
NoSql Graph Database The New Era of Interpreting Data

NoSQL Graph Databases - Why, When and Where

Embed Size (px)

DESCRIPTION

NoSQL Graph Databases - Why, When And Where should we use it. Graph DB - The new era of understanding data

Citation preview

Page 1: NoSQL Graph Databases - Why, When and Where

NoSql Graph DatabaseThe New Era of Interpreting Data

Page 2: NoSQL Graph Databases - Why, When and Where

name : Evgeny Hanikblum

contact : [email protected]

current : Owner @ HoneyFlower Systems

Founder @ True Contact

past : Architect & Consultant @ AlphaCSP

CTO @ GILS Transportation

CoFounder @ Otenti Systems

whoami

Page 3: NoSQL Graph Databases - Why, When and Where

NoSql Graph Databases

Contents:

NoSQL Graph Databases - the new age of Big Data Solutions

Why, when and where should you use NoSQL Graph DB

OrientDB - the best of two worlds. A document based NoSQL graph database.

Page 4: NoSQL Graph Databases - Why, When and Where

NoSql : main categories

Page 5: NoSQL Graph Databases - Why, When and Where
Page 6: NoSQL Graph Databases - Why, When and Where
Page 7: NoSQL Graph Databases - Why, When and Where
Page 8: NoSQL Graph Databases - Why, When and Where
Page 9: NoSQL Graph Databases - Why, When and Where
Page 10: NoSQL Graph Databases - Why, When and Where
Page 11: NoSQL Graph Databases - Why, When and Where
Page 12: NoSQL Graph Databases - Why, When and Where
Page 13: NoSQL Graph Databases - Why, When and Where
Page 14: NoSQL Graph Databases - Why, When and Where
Page 15: NoSQL Graph Databases - Why, When and Where
Page 16: NoSQL Graph Databases - Why, When and Where
Page 17: NoSQL Graph Databases - Why, When and Where
Page 18: NoSQL Graph Databases - Why, When and Where
Page 19: NoSQL Graph Databases - Why, When and Where
Page 20: NoSQL Graph Databases - Why, When and Where
Page 21: NoSQL Graph Databases - Why, When and Where
Page 22: NoSQL Graph Databases - Why, When and Where
Page 23: NoSQL Graph Databases - Why, When and Where
Page 24: NoSQL Graph Databases - Why, When and Where
Page 25: NoSQL Graph Databases - Why, When and Where
Page 26: NoSQL Graph Databases - Why, When and Where
Page 27: NoSQL Graph Databases - Why, When and Where
Page 28: NoSQL Graph Databases - Why, When and Where
Page 29: NoSQL Graph Databases - Why, When and Where
Page 30: NoSQL Graph Databases - Why, When and Where
Page 31: NoSQL Graph Databases - Why, When and Where
Page 32: NoSQL Graph Databases - Why, When and Where
Page 33: NoSQL Graph Databases - Why, When and Where
Page 34: NoSQL Graph Databases - Why, When and Where
Page 35: NoSQL Graph Databases - Why, When and Where

NoSql Graph Databases

* In computing, a graph database is a database that uses graph structures with nodes, edges, and properties to represent and store data. A graph database is any storage system that provides index-free adjacency.

This means that every element contains a direct pointer to its adjacent elements and no index lookups are necessary.

Page 36: NoSQL Graph Databases - Why, When and Where

Graph DB

Why, when and where should I use it

11/12/14

Page 37: NoSQL Graph Databases - Why, When and Where

If your data looks like this

Yes, you can do that with rdbms

Page 38: NoSQL Graph Databases - Why, When and Where

If your data start looking like this

You already into big data graph

Page 39: NoSQL Graph Databases - Why, When and Where

But, if your data looks like this one

This presentation is for you

Page 40: NoSQL Graph Databases - Why, When and Where

Why, Graph DB

Data is more connected:

• Text (content)• HyperText (added pointers)• RSS (joined those pointers)• Blogs (added pingbacks)• Tagging (grouped related data)• RDF (described connected data)• Social networks• GGG (content + pointers + relationships +

descriptions)

Page 41: NoSQL Graph Databases - Why, When and Where

Graph DB – use cases

network, recommendations, social, security, medicine, …

Page 42: NoSQL Graph Databases - Why, When and Where

Graph DB – use cases

How Baidu Recorded The Largest

Migration on Earth Using A Mapping

App

3.6 billion people travelled to visit family during this

Chinese New Year. And one smartphone mapping

app recorded the entire event

Page 43: NoSQL Graph Databases - Why, When and Where

Graph DB – Baidu

Page 44: NoSQL Graph Databases - Why, When and Where

Graph DB – Baidu

Page 45: NoSQL Graph Databases - Why, When and Where

Graph DB – use cases

Network and IT Operations Management

The interconnected physical, virtual, and application layers of a

network are perfectly modeled in a comprehensive graph.

Queries:

Quality-of-Service Mapping,

Impact Analysis,

Root Cause Analysis,

Asset Management

Page 46: NoSQL Graph Databases - Why, When and Where

Graph DB – use cases

Social

Family, friends and followers extend into a social graph which

reveals patterns of similar behavior, influence, and implicit

groups.

Queries:

Friend Recommendations,

Sharing & Collaboration,

Influencer Analysis

Page 47: NoSQL Graph Databases - Why, When and Where

Graph DB – use cases

Recommendations

Connect the dots of seemingly unrelated interests and

relationships to make recommendations that balance fresh with

familiar.

Queries :

Professional Recommendations

Product,

Social,

Service

Page 48: NoSQL Graph Databases - Why, When and Where

Graph DB – use cases

Identity and Access Management

Who you are, how you belong, and what you’re permitted

depends upon the relationships between you, an organization,

and a system.

Queries :

Interconnected Group Organization,

Access Management,

Provenance

Page 49: NoSQL Graph Databases - Why, When and Where

Graph DB - definition

“Graph Databases are a way of storing data in the form of nodes, edges and relationships

which provide index-free adjacency. “

Page 50: NoSQL Graph Databases - Why, When and Where
Page 51: NoSQL Graph Databases - Why, When and Where
Page 52: NoSQL Graph Databases - Why, When and Where
Page 53: NoSQL Graph Databases - Why, When and Where
Page 54: NoSQL Graph Databases - Why, When and Where

Graph Example

Page 55: NoSQL Graph Databases - Why, When and Where

GraphDB definition explained

• DATA = NODES• (NODES) are Fully Featured JSON Objects, Indexable to ensure uniqueness

• These are the population of your Graph Nation

• If it is an immutable thing, if you can anthropomorphize it, it should be a

(NODE)(Computer, Email, Hash, Service Ticket, IDS Rule, Domain, Threat Actor)

• JOINS = EDGES• Every (NODE) must connect to at least one more… as must we all, else why exist?

• Individual –EDGES-> are directional: (Chris)-->(You) or (You)-->(Chris)

• EDGES + CONTEXT = RELATIONSHIPS• -[:RELATIONSHIPS]-> are Fully Featured JSON Objects!

• -[:RELATIONSHIPS]-> give context to the connections between (NODES)

• If it is an action or you can’t imagine holding it, it should be a -[:RELATIONSHIP]->

• (Chris) -[:TALKS]->(You) , but are (You)-[:LISTEN]->(Chris) ?

RELATIONSHIPS + NODES =

Page 56: NoSQL Graph Databases - Why, When and Where

Graph DB vendors

Page 57: NoSQL Graph Databases - Why, When and Where

OrientDB is an open source NoSQL database written in Java. It is a document-based database, but the

relationships are managed as in graph databases with direct connections between records

Page 58: NoSQL Graph Databases - Why, When and Where

OrientDB

Page 59: NoSQL Graph Databases - Why, When and Where

Let’s see how OrientDB manages

relationships

Page 60: NoSQL Graph Databases - Why, When and Where
Page 61: NoSQL Graph Databases - Why, When and Where
Page 62: NoSQL Graph Databases - Why, When and Where
Page 63: NoSQL Graph Databases - Why, When and Where
Page 64: NoSQL Graph Databases - Why, When and Where
Page 65: NoSQL Graph Databases - Why, When and Where
Page 66: NoSQL Graph Databases - Why, When and Where
Page 67: NoSQL Graph Databases - Why, When and Where
Page 68: NoSQL Graph Databases - Why, When and Where
Page 69: NoSQL Graph Databases - Why, When and Where
Page 70: NoSQL Graph Databases - Why, When and Where
Page 71: NoSQL Graph Databases - Why, When and Where
Page 72: NoSQL Graph Databases - Why, When and Where
Page 73: NoSQL Graph Databases - Why, When and Where
Page 74: NoSQL Graph Databases - Why, When and Where
Page 75: NoSQL Graph Databases - Why, When and Where
Page 76: NoSQL Graph Databases - Why, When and Where
Page 77: NoSQL Graph Databases - Why, When and Where
Page 78: NoSQL Graph Databases - Why, When and Where
Page 79: NoSQL Graph Databases - Why, When and Where
Page 80: NoSQL Graph Databases - Why, When and Where
Page 81: NoSQL Graph Databases - Why, When and Where
Page 82: NoSQL Graph Databases - Why, When and Where
Page 83: NoSQL Graph Databases - Why, When and Where
Page 84: NoSQL Graph Databases - Why, When and Where
Page 85: NoSQL Graph Databases - Why, When and Where
Page 86: NoSQL Graph Databases - Why, When and Where
Page 87: NoSQL Graph Databases - Why, When and Where

OrientDBSummary

Page 88: NoSQL Graph Databases - Why, When and Where
Page 89: NoSQL Graph Databases - Why, When and Where
Page 90: NoSQL Graph Databases - Why, When and Where
Page 91: NoSQL Graph Databases - Why, When and Where
Page 92: NoSQL Graph Databases - Why, When and Where
Page 93: NoSQL Graph Databases - Why, When and Where
Page 94: NoSQL Graph Databases - Why, When and Where
Page 95: NoSQL Graph Databases - Why, When and Where

OrientDB - features

Page 96: NoSQL Graph Databases - Why, When and Where
Page 97: NoSQL Graph Databases - Why, When and Where
Page 98: NoSQL Graph Databases - Why, When and Where
Page 99: NoSQL Graph Databases - Why, When and Where

HoneyFlower SystemsConsultancy

Architecture

Java & BigData solutions

[email protected]

Page 100: NoSQL Graph Databases - Why, When and Where