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
3.7k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Connecting the Dots: Graph Databases and Laravel
Presented at Laracon US 2019
Keith Damiani
July 23, 2019
Other Decks in Programming
See All in Programming
in-process GraphQL のすすめ #ginzajs
izumin5210
4
1.4k
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.8k
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
170
運用ダッシュボードの設計を誰も教えてくれないのだけどみなさんどうしてるんですか? - チームに監視するという文化を根付かせるための第一歩を踏みたい -
satoshi256kbyte
1
140
Flow は今どうなっているか
mizdra
PRO
0
670
実装をデザインガイドラインに追従させるための取り組み / 260731-dip-mosh-design-system
dachi023
0
7k
MySQLとPostgreSQLって何が違うの?
akagami
0
120
自動化したのに回らない テスト運用の壁―AI時代の品質責任と生産性
mfunaki
0
360
FDEが実現するAI駆動経営の現在地
gonta
2
290
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
570
AI Engineeringは、AIプロダクトだけのものか? 〜AIがソフトウェアを作る時代の新しい当たり前〜 / No AI in your product. AI Engineering in your development.
rkaga
5
500
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.9k
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Paper Plane
katiecoart
PRO
2
53k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Six Lessons from altMBA
skipperchong
29
4.5k
Technical Leadership for Architectural Decision Making
baasie
3
520
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
500
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
340
Build your cross-platform service in a week with App Engine
jlugia
234
19k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
57k
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