graph studio in oracle autonomous database

33
Hans Viehmann, Product Manager at Oracle Hans.Viehmann@oracle,com @SpatialHannes https://www.linkedin.com/in/hansviehmann/ Jayant Sharma, Senior Director Product Management at Oracle [email protected] https://www.linkedin.com/in/jayant62/ 1 Graph Studio in Oracle Autonomous Database

Upload: others

Post on 15-Mar-2022

13 views

Category:

Documents


0 download

TRANSCRIPT

Hans Viehmann, Product Manager at OracleHans.Viehmann@oracle,com @SpatialHannes https://www.linkedin.com/in/hansviehmann/

Jayant Sharma, Senior Director Product Management at Oracle

[email protected] https://www.linkedin.com/in/jayant62/1

Graph Studio in Oracle Autonomous Database

Future and PastTechCasts:

Formerly called the BIWA Summit with the Spatial and Graph SummitSame great technical content…new name!

www.AnalyticsandDataSummit.org

Submit a topic to share at https://analyticsanddatasummit.org/techcasts/

Save the DateTechCast Days – Spring Session

May 11-13, 2021

Watch our website & social media channels for more detailsShare your knowledge,

expertise and ideas! Submit your presentation by going to our website

and clicking on “TechCasts”

Let’s ConnectJoin our ever-growing community

Slack: https://join.slack.com/t/andouc/shared_invite/zt-mfbk0un9-E7mgQweUfBnJ6BfRgcTeMQ

Newsletter: https://paper.li/e-1587156323#/

LinkedIn: https://www.linkedin.com/company/analytics-and-data-oracle-user-community

Twitter: @AnalyticandData

Facebook: https://www.facebook.com/AnDOracleUserCommunity/

4

Graph Studio in Autonomous DatabaseAnalytics and Data Oracle User Community – TechCast

Hans Viehmann & Jayant SharmaProduct Management – Spatial and GraphMarch 18, 2021

Safe Harbor Statement

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.

Copyright © 2021, Oracle and/or its affiliates.6

Typical example: Social Networks• People as vertices, connection as edges

Graph analysis can automatically identify important entities• People with many connections• People connected to people who in turn have many

connections• People who are indirectly connected to a given

person – "Six degrees of Kevin Bacon" problem• Communities of people which are more closely

connected• People connected to two or more communities• Outliers who are only connected to one person

Graphs help modeling relationships between entities

Copyright © 2021, Oracle and/or its affiliates.7

Graph databases explicitly store

relationships to enable fast traversal

8 Copyright © 2021, Oracle and/or its affiliates.

Smarter With Gartner, Gartner Top 10 Data and Analytics Trends for 2021, February 22, 2021

What is a graph?• Data model representing entities as vertices

and relationships as edges• Optionally including attributes

What are typical graphs?• Social networks• LinkedIn, Facebook, Twitter, ...

• Physical networks, supplier networks, ...• Dependency graphs• Part hierarchies, data lineage, org charts, ...

• Workflows• Knowledge graphs• Associating related entities, eg. in public safety

Graph data model

Copyright © 2021, Oracle and/or its affiliates.9

E

A D

C B

F

Easy data modeling• All you need is pen and paper

Flexible data model• No predefined schema, easily extensible• Particularly useful for sparse data

Insight from graphical representation• Intuitive visualization

Enable new kinds of analysis• Graphs store rather than compute relationships so

traversals (friend-of-a-friend, is there a path) are quick• Additional features for Machine Learning

Why are graphs so popular?

Copyright © 2021, Oracle and/or its affiliates.10

E

A D

C B

F

Enabling use of graph algorithms, eg. for• Influencer analysis

• Customer 360, targeted marketing, ...• Community detection• Product recommendation• Anomaly detection

• Fraud preventionSupporting graph pattern queries, eg.• Circular relationships

• Money laundering, fraud rings, ...• Dependency analysis

• Supplier relationships, workflows, ...

Extending Autonomous Database with Graph Analysis

Copyright © 2021, Oracle and/or its affiliates.11

Algorithm

Query

3

1

52

5

42

3

2

3

2

2

1

22

1

1

1

3

1

52

5

42

3

2

3

2

2

1

22

1

1

1

Query processing• Search for surrounding nodes• Traverse property paths• Pattern matching• Extract sub-graphs

Executing graph algorithms• Rank importance of nodes • Detect components and clusters• Evaluate structure of communities• Shortest paths

Two types of processing in graph analytics

Copyright © 2021, Oracle and/or its affiliates.12

3

1

52

5

42

3

2

3

2

2

1

22

1

1

1

Install and configure analytics environment• OCI marketplace image• Graph server and client kit on-premises

Create graph model• Map relational data to graph model• Load native graph file formats

Perform graph analysis• JShell client, Python client, or Notebook• Built-in graph visualization tool

Operate and maintain environment• Graph analytics engine• Notebook and interpreters

Our offering so far: Graph Server and Client

Copyright © 2021, Oracle and/or its affiliates.13

Self-service graph database and analytics environment• Feature of the autonomous database• Self-driving, self-securing,

self-repairing

Comes with comprehensive tooling• Graph modeling tool to map relational

data to graphs• Browser-based notebooks for interactive

analysis and collaboration• Integrated graph visualization

Uses the proven capabilities of the Graph Analytics Engine

Graph Studio in Autonomous Database (Limited Availability)

Copyright © 2021, Oracle and/or its affiliates.14

Graph Studio covers the entire workflowExtending the Autonomous Database with graph analytics

Copyright © 2021, Oracle and/or its affiliates.15

Build and model

Collect and prepare

See and detect

Learn and share

Deploy and scale

Most customers start with relational model• Prepare data using SQL

Graph modeler suggests mapping

• Entities become vertices• Primary key–foreign key relationships

become edges• N:m relationships turn into direct connections

Iteratively modify initial graph to fit needs

• Change properties to vertices or vice versa• Convert edges into vertices• Extend graph with additional data

Use UI or PGQL DDL source code for editing• Graphical representation of graph model

Build and model

Copyright © 2021, Oracle and/or its affiliates.16

Graph modeler in autonomous database

Copyright © 2021, Oracle and/or its affiliates.17

Graph model is persisted in tables in ADB• One table for vertices, one for edges• Modify data using regular SQL• Bulk load capability• Merge with additional data using SQL

Query Playground tool to inspect graph• Using PGQL on data in database tables

Load graph data into in-memory engine• Execute graph algorithms• Perform PGQL pattern matching queries

Collect and prepare

Copyright © 2021, Oracle and/or its affiliates.18

In-memory Graph Server

Edge table Vertex table1

2

Property graph schemaDatabase tables

Execute graph algorithms• Community detection, influencer analysis• Ranking and walking• Structure evaluation• Path finding• Link prediction

Perform query processing using PGQL• Search for surrounding nodes• Traverse property paths• Pattern matching• Extract sub-graphs

E.g., Personalized page rank:Natural relative distance (or closeness) with respect to the vertices from the starting set

See and detect

Starting set of vertices

Copyright © 2021, Oracle and/or its affiliates.19

PGQL MATCH clause describes graph pattern

Find common ancestors of Mario and Luigi

Pattern matching–PGQL queries

Copyright © 2021, Oracle and/or its affiliates.20

SELECT p.nameFROM MATCH (m:Person)-[:likes]->(p:Person)WHERE m.name = 'Mario'

PATH has_parent AS () -[:has_father|has_mother]-> (:Person)SELECT ancestor.nameFROM MATCH (p1:Person) -/:has_parent+/-> (ancestor)

, MATCH (p2:Person) -/:has_parent+/-> (ancestor)WHERE p1.name = 'Mario’AND p2.name = 'Luigi'

Graph analytics: 60+ parallelized, in-memory algorithms out-of-the-box

Detecting components and communitiesStrongly Connected Components,Weakly Connected Components,Label Propagation,Conductance Minimization,Infomap

Ranking and walkingPageRank, Personalized PageRank,Degree Centrality, Closeness Centrality,Vertex Betweenness Centrality,Eigenvector Centrality, HITS, SALSA,Random Walk with Restart

Evaluating structuresAdamic-Adar Index, Conductance,Cycle Detection, Degree Distribution, Eccentricity, K-Core, LCC, Modularity, Reachability Topological Ordering,Triangle Counting

Path-findingShortest Path (Bellman-Ford, Dijkstra, Bidirectional Dijkstra), Fattest Path,Compute Distance Index,Enumerate Simple Paths,Fast Path Finding, Hop Distance

Link prediction and othersWTF (Who to follow)Minimum Spanning-Tree,Matrix Factorization

Machine learningDeepWalk *Supervised GraphWise *

Pg2Vec *

*on-premises, not yet in Graph Studio

Copyright © 2021, Oracle and/or its affiliates.21

Multi-purpose notebook for collaboration• Documentation and visualization• Interactive analysis

Notebook interpreters• Markdown for documentation• Java for processing and graph algorithms• PGQL for pattern matching queries

Visualization• Interactive graph visualization• Tables, charts, ...

Learn and share

Copyright © 2021, Oracle and/or its affiliates.22

Fully automated environment• Native feature of autonomous database• Complete system deployed in minutes• Only need to enable graphs for users• Integrated tooling

In-memory analytics engine• Memory allocated automatically upon load• De-allocated when not used• Pre-allocation possible

Deploy and scale

Copyright © 2021, Oracle and/or its affiliates.23

“Oracle’s graph database easily achieved scalability while managing massive amounts of user entity information and their keys.”

Tatsuro KamoshidaCTO and Director, AMENIDY, Inc.

Copyright © 2021, Oracle and/or its affiliates.24

“With Graph Studio in Oracle Autonomous Database, you don't need to be a graph expert to explore the power of graphs.”

Gianni CeresaGianni Ceresa, Managing Director, DATAlysisOracle ACE Director

Copyright © 2021, Oracle and/or its affiliates.25

“Graph Studio’s point-and-click, low-code user interface enables us to cast traditional relational tables as a graph, allowing us to capitalize on Oracle's comprehensive set of graph algorithms.”

Dan VlamisPresident, Vlamis Software Solutions

Copyright © 2021, Oracle and/or its affiliates.26

Graph databases are powerful tools, complementing relational databases• Especially strong for analysis of graph topology and connectedness

Graph analytics offer new insight

• Especially relationships, dependencies and behavioral patterns• Providing additional feature(s) for machine learning

Graph Studio in Autonomous Database offers end-to-end tooling• Graph Studio to model, manage and query graphs• Notebook UI for interactive visualization and analysis

• Scalable, parallel in-memory processing with 60+ pre-built graph algorithms• PGQL as pattern matching query language

Built on the capabilities of the Autonomous Database• Secure and scalable graph storage • Self-driving, self-securing, self-repairing

Summary

Copyright © 2021, Oracle and/or its affiliates.27

TechCast Days – Spring Session• May 11 – 13• Interactive format

Planned workshops on May 12• Spatial Studio Hands-on• Graph Studio Hands-on• Running on Autonomous Database

Why join the workshops?• Test-drive the latest software• Learn from experts• Network with peers

Learn more

https://analyticsanddatasummit.org/techcastdays/

Copyright © 2021, Oracle and/or its affiliates.28

Oracle Graph technologies landing page on oracle.com• https://www.oracle.com/database/graphOracle LiveLabs• Search for "Graph“: https://bit.ly/golivelabsBlog: Examples, tips and tricks• http://bit.ly/OracleGraphBlogAskTOM Series• https://asktom.oracle.com/pls/apex/asktom.search?office=3084Social Media• Twitter: @SpatialHannes, @JeanIhm, @ryotaymnk, @AnnamalaiMelli• LinkedIn: Oracle Spatial and Graph Group• YouTube: youtube.com/c/OracleSpatialandGraph

Helpful links

Copyright © 2021, Oracle and/or its affiliates.29

Copyright © 2021, Oracle and/or its affiliates.30

Key takeaway for today ...

“Whenever you‘re analyzing relationships, think graphs!”

Copyright © 2021, Oracle and/or its affiliates.31

Q&A

Our mission is to help people see data in new ways, discover insights,unlock endless possibilities.