GraphDay Noble/Coolio
-
Upload
neo4j-the-fastest-and-most-scalable-native-graph-database -
Category
Technology
-
view
624 -
download
1
description
Transcript of GraphDay Noble/Coolio
![Page 1: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/1.jpg)
Time Travel with Neo4jAleksa Vukotic Noble Group
![Page 2: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/2.jpg)
Noble Group
• Commodity trading
• Supply chain management
• 70 locations
• $100 B revenue
![Page 3: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/3.jpg)
The Vision
• Data consolidation strategy
• Polyglot persistence (time series, objects, reference data)
• Selecting reference data master store
![Page 4: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/4.jpg)
Requirements• Diverse data/schemas
• Multi-source data flows
• Complex Hierarchy Trees
• Search
• All or nothing updates
• Versioning and time travel
![Page 5: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/5.jpg)
Other Options
• Relational DB
• Index Store (Elastic Search/Lucene)
![Page 6: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/6.jpg)
Problem
• Being able to travel in time
• Two use cases to manage:
1. How entities change over time
2. How relationships change over time
![Page 7: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/7.jpg)
1. Entity Versioning
id: 1name: VATrate: 20%
TAX
id: 1name: VATrate: 15%
TAX
13/11/2014 00:00
![Page 8: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/8.jpg)
Entity Versioningid: 1
TAX
13/11/2014 00:00
name:VATrate: 20%
versionSince:-1versionClose:
1415836800000
name:VATrate: 15%
versionSince: 1415836800000versionClose:
9223372036854775807
HAS_VERSION HAS_VERSION
TAX_STATE
TAX_STATE
![Page 9: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/9.jpg)
![Page 10: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/10.jpg)
![Page 11: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/11.jpg)
![Page 12: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/12.jpg)
2. Relationship Versioning
• Credit risk & counter-party tree
• Who owns who affects the credit risk
• Legal entities change ownership
• Need to keep history of all changes
![Page 13: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/13.jpg)
Relationship Versioningid: 1
name: Money uLTD
id: 2name: ACME
IS_PARENT_OF
COUNTERPARTY
COUNTERPARTY
13/11/2014 00:00
id: 3name:
Pear Inc
IS_PARENT_OF
id: 2name: ACME
COUNTERPARTY
COUNTERPARTY
![Page 14: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/14.jpg)
Relationship Versioning
id: 1name:
Money uLTD
COUNTERPARTY
id: 2name: ACME
COUNTERPARTY
13/11/2014 00:00
id: 2name:
Pear Inc
IS_PARENT_OF IS_PARENT_OFversionSince: -1
versionClose: 1415836800000
versionSince: 1415836800000versionClose: 9223372036854775807
![Page 15: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/15.jpg)
![Page 16: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/16.jpg)
![Page 17: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/17.jpg)
![Page 18: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/18.jpg)
Results
• Ref Data Platform launched recently
• 3 nodes (1 per region)
• >5 M nodes, >100 M relationships and growing
• Query times <300ms
• Data Clarity and Agility
![Page 19: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/19.jpg)
Thank you
![Page 20: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/20.jpg)
![Page 21: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/21.jpg)
Paul%Gilligan%Coolio%Ltd%
@brothergilligan%%%#graphday%
• Overview%
• Future%plans%
• Descrip>on%of%problem%
• Solu>on%of%problem%using%Neo4j%
![Page 22: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/22.jpg)
Paul%Gilligan%Coolio%Ltd%
@brothergilligan%%%#graphday%
• Overview%
• Future%plans%
• Descrip>on%of%problem%
• Solu>on%of%problem%using%Neo4j%
![Page 23: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/23.jpg)
Overview%
@brothergilligan%%%#graphday%
![Page 24: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/24.jpg)
Overview%
@brothergilligan%%%#graphday%
![Page 25: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/25.jpg)
Overview%
@brothergilligan%%%#graphday%
![Page 26: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/26.jpg)
Overview%
@brothergilligan%%%#graphday%
• Simple%buEon%press%to%place%a%Coolio%
• En>rely%binary,%en>rely%subjec>ve%
• Algorithm%ascribes%a%value%to%each%Coolio%%%
• Coolios%drive%the%Coolth%of%Places%and%People%
• Each%Coolio%is%born,%degrades%then%dies%
• Dispropor>onate%power%of%the%nega>ve%
• Everyone’s%‘Cool’%is%different%
Highly%social%and%highly%
personalised,%up%to%the%minute%
ra>ngs%and%recommenda>ons,%
with%no%pollu>on%from%the%
dispropor>onate%power%of%the%
nega>ve.%
![Page 27: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/27.jpg)
The%Problem%
@brothergilligan%%%#graphday%
• Many%users%placing%many%Coolios%could%get%too%big%too%quickly.%
• Degrading%Coolios%would%need%to%use%update%queries%
• Each%new%Coolio%needs%many%Coolio%values%to%be%retrieved%from%many%users%and%many%places.%
• Ins>nc>vely%knew%that%this%was%too%messy%and%too%cumbersome%
![Page 28: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/28.jpg)
The%Problem%
@brothergilligan%%%#graphday%
![Page 29: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/29.jpg)
The%Problem%
@brothergilligan%%%#graphday%
![Page 30: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/30.jpg)
The%Problem%
@brothergilligan%%%#graphday%
![Page 31: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/31.jpg)
The%Solu>on%
@brothergilligan%%%#graphday%
![Page 32: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/32.jpg)
The%Solu>on%
@brothergilligan%%%#graphday%
Coolio • Hit%index%once%and%find%user%• Retrieve%all%User’s%Coolio’s%
values%by%going%straight%to%them%• Don’t%have%to%search%every%
record%of%a%single%table%
CoolioCoolio
• Immediately%simpler%and%easier%than%original%SQL%schema%
• Update%values%every%>me%we%hit%a%Coolio%
Coolio
Coolio
Coolio
![Page 33: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/33.jpg)
The%Solu>on%
@brothergilligan%%%#graphday%
Coolio
Coolio
User yCoolio
gcpvj6bPlace c
gcpvj6c
gcpvj6f
Place d
Place e
gcpvj4zPlace f gcpvj4
![Page 34: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/34.jpg)
The%Solu>on%
@brothergilligan%%%#graphday%
GeoTree%
The%Friend%Zone%
The%EcoYSystem%
![Page 35: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/35.jpg)
The%Solu>on%
@brothergilligan%%%#graphday%
![Page 36: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/36.jpg)
The%Future%
@brothergilligan%%%#graphday%
Coolio
Mon Tue Wed Thu Fri Sat Sun
17.0016.0015.0014.0013.00
May
Jun
Jul
Spr
Sum
Aut
![Page 37: GraphDay Noble/Coolio](https://reader035.fdocuments.in/reader035/viewer/2022062406/5591bb591a28abdb088b46dc/html5/thumbnails/37.jpg)
The%Future%
@brothergilligan%%%#graphday%
Technical) Cypher)–)quick,)easy,)powerful,)expressive)Flexibility)–)server)instance)or)embedded)in)Java)applica?on)Languages)–)Python,)NodeJS,)PHP,)Java,)Ruby))API)–)own)powerful)RESTful)API)
Support) Provide)training)and)facilitate)a)growing)developer)community)Generate)opportuni?es)for)discussion)and)access)to)their)developer)with)conferences,)meetups)and)events)like)this)
Commercial) Suppor?ve)and)understand)commercial)pressures)My)success)equals)their)success)