Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Connecting the Dots: Graph Databases and Laravel
Search
Keith Damiani
July 23, 2019
Programming
2
3.6k
Connecting the Dots: Graph Databases and Laravel
Presented at Laracon US 2019
Keith Damiani
July 23, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
500
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
720
encoding/json/v2のUnmarshalはこう変わった:内部実装で見る設計改善
kurakura0916
0
390
エージェント開発初心者の僕がエージェントを作った話と今後やりたいこと
thasu0123
0
240
The Ralph Wiggum Loop: First Principles of Autonomous Development
sembayui
0
3.7k
技術検証結果の整理と解析をAIに任せよう!
keisukeikeda
0
110
ふつうのRubyist、ちいさなデバイス、大きな一年 / Ordinary Rubyists, Tiny Devices, Big Year
chobishiba
1
430
Codex の「自走力」を高める
yorifuji
0
1.2k
Unity6.3 AudioUpdate
cova8bitdots
0
120
CSC307 Lecture 14
javiergs
PRO
0
470
米国のサイバーセキュリティタイムラインと見る Goの暗号パッケージの進化
tomtwinkle
2
550
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
4
410
Featured
See All Featured
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
140
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.4k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
140
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
Mind Mapping
helmedeiros
PRO
1
110
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
120
Building Adaptive Systems
keathley
44
2.9k
Designing Experiences People Love
moore
143
24k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
380
My Coaching Mixtape
mlcsv
0
69
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Transcript
Graph Databases and Laravel DOTS the CONNECTING LARACON US 2019
KEITH DAMIANI
Graph Databases and Laravel KEITH DAMIANI DOTS the CONNECTING LARACON
US 2019
None
None
None
Graph Databases and Laravel KEITH DAMIANI DOTS the CONNECTING LARACON
US 2019
None
KEITH DAMIANI PRINCIPAL PROGRAMMER !
None
None
None
None
None
None
None
None
"
What is a graph database? CONNECTING THE DOTS
What is a graph database? CONNECTING THE DOTS
What is a graph database? CONNECTING THE DOTS
What is a graph database? CONNECTING THE DOTS
What is a graph database? CONNECTING THE DOTS Graph DBs
vs. relational DBs Use cases Writing queries Laravel graph DBs
What is a graph database? CONNECTING THE DOTS
What is a graph database? CONNECTING THE DOTS © JACK
MCDADE
© JACK MCDADE
None
None
Nodes "VERTICES"
Nodes "VERTICES" "EDGES" Relationships
Nodes "VERTICES" "EDGES" Relationships
Keith's Family Tree
Keith's Family Tree Keith
WAIT A MINUTE
WAIT A MINUTE RELATIONAL DATABASES
WAIT A MINUTE RELATIONAL DATABASES “ ”
L 14th St./8th Ave. Union Square 6th Ave. Washington Square
Houston St. 1st Ave. L L K B B K B B
stations id name 1 14th St./8th Ave. 2 6th Ave.
3 Union Square 4 1st Ave. 5 Washington Square 6 Houston St. lines id name 1 3 2 4 3 5 4 L 5 B 6 K line_station id station_id line_id connected_to 1 3 4 2 2 4 4 7 3 5 5 4 4 5 6 8 5 6 5 6 6 6 6 9
stations id name 1 14th St./8th Ave. 2 6th Ave.
3 Union Square 4 1st Ave. 5 Washington Square 6 Houston St. lines id name 1 3 2 4 3 5 4 L 5 B 6 K line_station id station_id line_id connected_to 1 3 4 2 2 4 4 7 3 5 5 4 4 5 6 8 5 6 5 6 6 6 6 9
L 14th St./8th Ave. Union Square 6th Ave. Washington Square
Houston St. 1st Ave. L L K B B K B B
1735 KALININGRAD
KÖNIGSBERG
© HISTORIC CITIES RESEARCH PROJECT / OZGUR TUFECKI
© HISTORIC CITIES RESEARCH PROJECT / OZGUR TUFECKI
© HISTORIC CITIES RESEARCH PROJECT / OZGUR TUFECKI No sweat,
I got this.
© HISTORIC CITIES RESEARCH PROJECT / OZGUR TUFECKI No sweat,
I got this. e 2.718281828459045
© HISTORIC CITIES RESEARCH PROJECT / OZGUR TUFECKI
None
None
JOINS
JOINS
L 14th St./8th Ave. Union Square 6th Ave. Washington Square
Houston St. 1st Ave. L L K B B K B B
None
What is a graph database? CONNECTING THE DOTS Graph DBs
vs. relational DBs Use cases
Highly-connected data THE NATURE OF YOUR DATA Hierarchical/tree-shaped
FRIEND-OF-A-FRIEND QUERY Depth Relational DB Neo4j Graph DB Records 2
0.02 0.01 2500 3 30 0.17 110,000 4 1,544 1.36 600,000 5 Unfinished 2.13 800,000 PERFORMANCE, IN SECONDS
Highly-connected data THE NATURE OF YOUR DATA Hierarchical/tree-shaped Many-to-many and/or
polymorphic Schema-less
Social networks COMMON USE CASES Real-time product recommendations Social +
Recommendation
Social networks COMMON USE CASES Real-time product recommendations Would you
like to Join my Professional Network? Social + Recommendation
Social networks COMMON USE CASES Real-time product recommendations Social +
Recommendation Geospatial Geospatial + Recommendation
Digital asset management COMMON USE CASES (MORE!) Textual analysis /
search PageRank search Financial / fraud detection Public policy / journalism
None
Disconnected data BAD FITS Bulk data scans Aggregating across nodes
When write speed is paramount BLOBs / large amounts of text
None
NEO4J.COM
OrientDB Apache TinkerPop Amazon Neptune JanusGraph ArangoDB
CYPHER
CYPHER ( )-[ ]->( )
CYPHER ( )-[ ]->( ) MATCH RETURN
CYPHER MATCH (me:User {name: 'Me'})
(DEMO TIME!)
What is a graph database? CONNECTING THE DOTS Graph DBs
vs. relational DBs Use cases Writing queries Laravel graph DBs
NeoEloquent THREE OPTIONS FOR LARAVEL
NeoEloquent THREE OPTIONS FOR LARAVEL
NeoEloquent THREE OPTIONS FOR LARAVEL GraphAware neo4j-php-client
NeoEloquent THREE OPTIONS FOR LARAVEL GraphAware neo4j-php-client
NeoEloquent THREE OPTIONS FOR LARAVEL GraphAware neo4j-php-client ¯\_(ツ)_/¯
Vapor Laravel
Neo4Laravel
Larapals.com
! @keithdamiani keithdamiani.com