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.5k
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
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
610
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
220
NPOでのDevinの活用
codeforeveryone
0
870
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
2
150
レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動
kesoji
0
260
テスト駆動Kaggle
isax1015
1
480
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
2
11k
RailsGirls IZUMO スポンサーLT
16bitidol
0
190
PHPでWebSocketサーバーを実装しよう2025
kubotak
0
300
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
190
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
260
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
830
Featured
See All Featured
Site-Speed That Sticks
csswizardry
10
690
Rails Girls Zürich Keynote
gr2m
95
14k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
830
Code Reviewing Like a Champion
maltzj
524
40k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
YesSQL, Process and Tooling at Scale
rocio
173
14k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
A better future with KSS
kneath
238
17k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
740
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