spatial and graph track overview · 2020. 3. 20. · spatial and graph track overview • 30+...
TRANSCRIPT
Spatial and Graph Track Overview
• 30+ Spatial and Graph related sessions
• Something for everyone! 101 tutorials, customer use cases, tech deep dives, HOLs
• See yellow track on agenda
• Bldg 23 Room 1740 for most sessions. Hands On Labs in room 2100 – Auditorium building
• Crossover sessions in Analytics & ML tracks
2
What’s Ahead – Spatial & Graph Track OverviewAll sessions in room 1740 unless noted
Morning
Lunch
Afternoon
WednesdayMorning
Lunch
Afternoon
Advanced Spatial GIS use cases
Birds of a Feather(Café, Spatial & Graph tables)
Maps + analytics use case (Outfront Media)
Graph use cases
Copyright © 2019 Oracle and/or its affiliates.
ThursdayMorning
Lunch
Afternoon
RDF Graph technical & use case sessions
HOL - Spatial Studio 10:55-12:30, room 2100
Feedback & drawings(Auditorium)
Developer sessions on Graph & Spatial
HOL - RDF Graph3:40-4:30, rm 2100
*Also, look for crossover sessions in Business Analytics & Machine Learning tracks
Graph technical sessions (introductory)
AnD Partner Lightning Round(Auditorium)
Spatial Technical Sessions (introductory)
Hands On Lab -Property Graph 3:35-5:10, room 2100
Tuesday
Peter Jeffcock
Product MarketingCloud Business Group
Demystifying Graph AnalyticsFor The Non-Expert
Copyright © 2019 Oracle and/or its affiliates.
The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, timing, and pricing of any features or functionality described for Oracle’s products may change and remains at the sole discretion of Oracle Corporation.
Safe harbor statement
Copyright © 2019 Oracle and/or its affiliates.
Copyright © 2019 Oracle and/or its affiliates.
Are there any graph experts?
Copyright © 2019 Oracle and/or its affiliates.
Have you ever used graph analytics?
Copyright © 2019 Oracle and/or its affiliates.
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. 8
Acted in
Acted in
Acted in
Acted in
TheRiverWild
LemonySnicket
MuppetTreasure
Island
Copyright © 2019 Oracle and/or its affiliates.
Node and Graph Properties
https://www.kenflerlage.com/2017/04/six-degrees-of-kevin-bacon-with-graph.html
Copyright © 2019 Oracle and/or its affiliates.
Closeness Centrality
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. 11
Degree Centrality
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. 12
PageRank
Betweenness Centrality
Graph Diameter
Copyright © 2019 Oracle and/or its affiliates.
Querying And Analyzing A Graph
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. 16
SQL Equivalent:
WITH temp(actor_id, actor_name) AS (—Anchor member:SELECT actor_id, nameFROM DevicesWHERE name = ‘Iron Man’UNION ALL—Recursive member:SELECT Actors.actor_id, Actors.nameFROM temp, Actors, Connections conn 1,
Connections conn2, MoviesWHERE temp.actor_id = conn1.to_actor_id
AND conn1.from_acted_in_id = Connectors.movies_idAND Connectors.movie_id = conn2.from_movie_idAND conn2.to_actor_id = Devices.actor_idAND temp.actor_id != Actors.actor_id)
CYCLE actor_id SET cycle TO 1 DEFAULT 0SELECT DISTINCT actor_nameFROM tempWHERE cycle = 0AND actor_name <> ‘Iron Man’
PGQL:
PATH shares_movie_with AS (from) <- (acted_in) -> (to)SELECT y.nameMATCH (x:Actor) -/:shares_movie*/->(y:Actor)WHERE x.name = ‘Iron Man’AND x <> y
Finding Connected Actors
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. 18
Finding the shortest path
Java:src = g.getVertex("WARR") // CHAKRA IISystem.out.println(src);dst = g.getVertex("MERREE") // JAKALSystem.out.println(dst);path = analyst.shortestPathDijkstra(g,src,dst,w)
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. 19
More complex queries
Copyright © 2019 Oracle and/or its affiliates.
The Graph Behind The Map
Copyright © 2019 Oracle and/or its affiliates.
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. 22
The Graph Behind The Map
Node (Vertex)Unique identifierCollection of properties- Name- Type (lights, stop signs…)- Latitude/longitude- …
Link (Edge)Outgoing vertexIncoming vertexLabel describing relationshipCollection of properties- Time to traverse- Type of road- Traffic level- …
a
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. 23
Link table
Source ID, Destination ID, label, key, propertya, b, “is connected to”, string, “regular street”a, b, “is connected to”, time, “75 seconds”…Node table
Unique ID, label, key, property1, “a”, latitude, 37.78431, “a”, longitude, -122.4007…
Storing Graphsbis connected to
Front St and Pine StBattery St and Pine St
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. 24
Actual Map Data
Name Type
Node_ID NUMBER
Geometry MDSYS.SDO_GEOMETRY
Partition_ID NUMBER
Name Type
Link_ID NUMBER
Start_Node_ID NUMBER
End_Node_ID NUMBER
Partition_ID NUMBER
Func_Class NUMBER
Length NUMBER
Speed_Limit NUMBER
Geometry MDSYS.SDO_GEOMETRY
Name VARCHAR2 (128)
Divider VARCHAR2 (1)
Node Table Link Table
SDO_GTYPE NUMBER
SDO_SRID NUMBER
SDO_POINT SDO_POINT_TYPE
SDO_ELEM_INFO SDO_ELEM_INFO_ARRAY
SDO_ORDINATES SDO_ORDINATE_ARRAY
Name Type Example
From_Edge_ID NUMBER Link containing the sign
To_Edge_ID NUMBER Link the sign points to
Ramp VARCHAR2 (64) Text (eg I5 North)
Exit VARCHAR2 (8) Exit number (297)
Toward VARCHAR2 (64) Terwiliger Boulevard
Language CHAR (3) Eng, Fre, Spa…
Signpost Table
+ Partition table+ Geocoding (9 tables)+ Turn restrictions (3 tables)+ Trucking data (4 tables)+ Timezone data (4 tables)+ Traffic table
https://docs.oracle.com/en/database/oracle/oracle-database/19/spatl/routing-engine-concepts.html#GUID-22403E02-1569-4D9E-8D04-02003D70C1B7
Copyright © 2019 Oracle and/or its affiliates.
Use Cases
Copyright © 2019, Oracle and/or its affiliates. All rights reserved. 26
Financial Services: Hiding A Transaction
Copyright © 2019 Oracle and/or its affiliates.
Financial Services: Circular Payments
Copyright © 2019 Oracle and/or its affiliates.
EU VAT Fraud Detection
Company in other EU member
country
BO
RD
ER
0%
VA
T B
OR
DE
R0
% V
AT
BO
RD
ER
0%
VA
T B
OR
DE
R
Importer„fake” company
BufferReseller
Tax authority
No
t p
ayin
g V
AT
Tax authority Tax authority
Pay
ing
VA
T
Exportercompany
Get
tin
g
VA
T r
efu
nd
BO
RD
ER
0%
VA
T B
OR
DE
R0
% V
AT
BO
RD
ER
0%
VA
T B
OR
DE
R
Company in other EU member
country
?