Dgraph: An Open Source, Distributed, Transactional Graph Database
Dgraph: An Open Source, Distributed, Transactional Graph Database
2
Hello!
I am Aman Mangal
Distributed Systems Engineer
Dgraph Labs
@mangalaman93
[email protected]
3
1.
Data in the Internet Era
“
Data is not just growing in size,
but also in its complexity and
connectedness.
5
Complex Dataset: Yelp (1)
6
Complex Dataset: Ecommerce (2)
7
Complex Dataset: GitHub (3)
8
“
Unearthing the complex
relationships in data could
reveal a lot of interesting facts.
9
Fraud Detection
10
2.
How does applications
deal with
such datasets?
11
SQL Database Customer ID Name Location
12
NoSQL Database
Key Value
Key Value
{“customer”: 201, “date”: 2019-10-15,
{“name”: “Aman”, 101 “new”: 1571144739,
201
“location”: “Bengaluru” “shipped”: 1571231139}
103
{“customer”: 201, “date”: 2019-10-17,
“new”: 1571313939}
13
Graph Database
Aman Karthik
1571144739 new
na
e
m
m
na
e
ed 101 ord
h i pp er
s
1571231139 order new
201 202 102 1571227539
er
ord
loc
on
new
ati
ati
1571313939 103
loc
on
Bengaluru Mumbai
14
“
But we need a Graph
Database that is scalable,
performant and resilient.
15
3.
Welcome to Dgraph
A State of the Art Graph Database
16
Dgraph (github.com/dgraph-io/dgraph)
17
18
Distributed & Horizontally Scalable
19
Data Sharding (1)
na
m
edge is stored together
e
ed 101 ord
pp er
shi
(i.e. order edges) 1571231139
201
er
ord
on
new
ati
1571313939 103
loc
Bengaluru
20
Data Sharding (2) 201
new
1571144739 101
name
◎ Allows efficient graph
new
traversal, single 1571313939 103 Aman
network call for one
hop traversal
201
order
101 201
shipped location
1571231139 101
order
103 201 Bengaluru
21
Client Side Transactions
22
Strong Consistency
◎ Dgraph supports
Linearizability
◎ Changes are immediately
reflected to majority of
replicas in the system
◎ Everyone sees consistent
view of the data
23
4.
Demo
Pray to Demo Gods!
24
25
Thanks!
Any questions?
You can find me at:
@mangalaman93
[email protected]
26