Mais conteúdo relacionado Semelhante a GraphDay Noble/Coolio (20) GraphDay Noble/Coolio2. Noble Group
• Commodity trading
• Supply chain management
• 70 locations
• $100 B revenue
3. The Vision
• Data consolidation strategy
• Polyglot persistence (time series, objects,
reference data)
• Selecting reference data master store
4. Requirements
• Diverse data/schemas
• Multi-source data flows
• Complex Hierarchy Trees
• Search
• All or nothing updates
• Versioning and time travel
6. Problem
• Being able to travel in time
• Two use cases to manage:
1. How entities change over time
2. How relationships change over time
7. 1. Entity Versioning
TAX
id: 1
name: VAT
rate: 20%
TAX
id: 1
name: VAT
rate: 15%
13/11/2014 00:00
8. Entity Versioning
id: 1
TAX
HAS_VERSION HAS_VERSION
13/11/2014 00:00
name:VAT
rate: 20%
versionSince:-1
versionClose:
1415836800000
name:VAT
rate: 15%
versionSince:
1415836800000
versionClose:
9223372036854775807
TAX_STATE
TAX_STATE
12. 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
13. Relationship Versioning
COUNTERPARTY
id: 1
name:
Money uLTD
IS_PARENT_OF
id: 2
name: ACME
COUNTERPARTY
COUNTERPARTY
13/11/2014 00:00
id: 3
name:
Pear Inc
IS_PARENT_OF
id: 2
name: ACME
COUNTERPARTY
14. Relationship Versioning
COUNTERPARTY
id: 1
name:
Money uLTD
id: 2
name: ACME
COUNTERPARTY
13/11/2014 00:00
id: 2
name:
Pear Inc
IS_PARENT_OF
IS_PARENT_OF
versionSince: -1
versionClose: 1415836800000
versionSince: 1415836800000
versionClose: 9223372036854775807
18. 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
21. Paul%Gilligan%
Coolio%Ltd%
• Overview%
• Descrip>on%of%problem%
• Solu>on%of%problem%using%Neo4j%
• Future%plans%
@brothergilligan%%%#graphday%
22. Paul%Gilligan%
Coolio%Ltd%
• Overview%
• Descrip>on%of%problem%
• Solu>on%of%problem%using%Neo4j%
• Future%plans%
@brothergilligan%%%#graphday%
26. Overview%
Highly%• Simple%social%buEon%press%and%to%highly%
place%a%Coolio%
personalised,%• En>rely%binary,%en>up%rely%to%subjec>the%minute%
ve%
ra>• Dispropor>ngs%and%onate%recommenda>power%of%the%nega>ons,%
ve%
with%no%pollu>on%from%the%
dispropor>onate%power%of%the%
nega>ve.%
• Algorithm%ascribes%a%value%to%each%Coolio%%%
• Coolios%drive%the%Coolth%of%Places%and%People%
• Each%Coolio%is%born,%degrades%then%dies%
• Everyone’s%‘Cool’%is%different%
@brothergilligan%%%#graphday%
27. The%Problem%
@brothergilligan%%%#graphday%
• Many%users%placing%many%
Coolios%could%get%too%big%
too%quickly.%
• Each%new%Coolio%needs%
many%Coolio%values%to%be%
retrieved%from%many%
users%and%many%places.%
• Degrading%Coolios%would%
need%to%use%update%queries%
• Ins>nc>vely%knew%that%this%
was%too%messy%and%too%
cumbersome%
32. The%Solu>on%
• 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%
@brothergilligan%%%#graphday%
Coolio
Coolio
Coolio
• Immediately%simpler%and%easier%
than%original%SQL%schema%
• Update%values%every%>me%we%hit%
a%Coolio%
Coolio
36. The%Future%
Mon Tue Wed Thu Fri Sat Sun
Coolio
13.00 14.00 15.00 16.00 17.00
@brothergilligan%%%#graphday%
May
Jun
Jul
Spr
Sum
Aut
37. The%Future%
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)
@brothergilligan%%%#graphday%