Post on 22-Jan-2018
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 2Public
Speakers
Bangalore, October 5 - 7
B Raghavendra Rao
Las Vegas, Sept 19 - 23
May P. Chen
Barcelona, Nov 8 - 10
Markus Fath
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 3Public
Disclaimer
The information in this presentation is confidential and proprietary to SAP and may not be disclosed without the permission of SAP. Except for your obligation to protect confidential information, this presentation is not subject to your license agreement or any other service or subscription agreement with SAP. SAP has no obligation to pursue any course of business outlined in this presentation or any related document, or to develop or release any functionality mentioned therein.
This presentation, or any related document and SAP's strategy and possible future developments, products and or platforms directions and functionality are all subject to change and may be changed by SAP at any time for any reason without notice. The information in this presentation is not a commitment, promise or legal obligation to deliver any material, code or functionality. This presentation is provided without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement. This presentation is for informational purposes and may not be incorporated into a contract. SAP assumes no responsibility for errors or omissions in this presentation, except if such damages were caused by SAP’s intentional or gross negligence.
All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, which speak only as of their dates, and they should not be relied upon in making purchasing decisions.
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 4Public
Agenda
SAP HANA graph architecture overview Property graph data model
Graph processing in SAP HANA
Native HANA graph algorithms Neighborhood search (graph traversing)
Shortest path
Strongly connected components
Pattern matching
Graph tools and visualization Graph modeler
Graph viewer
Roadmap & use cases
Demo
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 6Public
To represent and query large sets of highly connected data
No rigid schema requirements and flexible to build graph data on-the-fly
Allows efficient execution of typical graph operations
Simplifies application design and lower development costs
Graph representation & processing
?
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 7Public
The Property graph model
The Property graph modelThe Property graph model provides directed, attributed (vertices and edges) multi-relational graphs as the central data structure. (BOM, social-, chemical-, biological-, and other networks.)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 8Public
Example: family tree
Vertex: MEMBERS
Edge : RELATIONSHIPS
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 9Public
SAP HANA graph is a core functionality
SAP HANA PlatformOn-premise | Cloud | Hybr idOn-premise | Cloud | Hybr id
Web server JavaScript
SAP Fiori UX
Graphic modeler
Data virtualization ELT and replication
Application services Integration services
Columnar OLTP+OLAP
Multicore/ parallelization
Advanced compression
Multi-tenancy
Multitier storage
Spatial Graph Predictive Search
Text analytics
DataQuality
Seriesdata
Functionlibraries
ALM
Processing services
Database services
Hadoop/Spark integration
Streaming (CEP)
Application lifecycle management
High availability/ disaster recovery
OpennessData modeling
Remote datasync
Admin/security
SAP HANA
DB ServerDB-oriented Logic
Text Mining
Predictive
SQL Scripts
R Integration
Business Rules
ExtendedApp Services(Web Server) Procedural App Logic
ODataJava Script
Unstructured Application Library
HTML
HANA core functionality In-Memory technology leveraging column store and hardware technologies Online querying with transactional support and query optimization (OLTP & OLAP) Out-of-box security
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 10Public
Transparent combination of graph processing with all HANA engines on business, unstructured and spatial data
Property graph model embedded in relational world (easy consumable with SQL)
Flexible graph workspace concept with metadata
Graph import / export support
Graphical analysis, visualization and interaction
Graph processing in SAP HANA
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 11Public
Interfaces & Capabilities
SQL and SQLScript as main graph interface
Modeler for native graph algorithms
Graph Viewer for graph algorithms and interaction
Graph Backend
Primary graph store (support for row / column tables, partitioning and more)
Secondary graph store (adjacency list for accelerated graph processing)
Graph Engine Runtime
Built-in graph algorithms
Pattern matching
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 12Public
Consuming graph
CREATE GRAPH WORKSPACE GREEK.FAMILY
EDGE TABLE GREEK.RELATIONSHIP
SOURCE COLUMN source
TARGET COLUMN target
KEY COLUMN key
VERTEX TABLE GREEK.MEMBERS
KEY COLUMN name;
Create Vertex and Edge Tables
With as many attributes as you want
CREATE COLUMN TABLE GREEK.MEMBERS (
name VARCHAR(100) PRIMARY KEY
type VARCHAR(100), residence VARCHAR(100),…);
CREATE COLUMN TABLE GREEK.RELATIONSHIP (
key INTEGER PRIMARY KEY,
source VARCHAR(100) NOT NULL
REFERENCES GREEK.MEMBERS (name)
ON UPDATE CASCADE ON DELETE CASCADE,
target VARCHAR(100) NOT NULL
REFERENCES GREEK.MEMBERS (name)
ON UPDATE CASCADE ON DELETE CASCADE
relationship VARCHAR(50), confidence REAL,…);
GREEK.FAMILY
RelationshipsMembers
Create Graph Workspace
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 13Public
SAP HANA graph security
Out-of-box security (role concept & privileges)
Graph workspace based on tables and / or views on native database tables
Required user group / role privileges on graph workspace objects
Master data can be updated online
Graph workspaces metadata – is the graph workspace valid or not / constraints and keys
Public
Native HANA graph algorithmsNeighborhood search
Shortest path
Strongly connected components
Pattern matching
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 15Public
Neigborhood search
Search for neighborhood
Input Parameters•Start vertices
•Min / max depth
•Start- / end-level (*)
•Vertex- / edge-filter (*)
Output•Primary vertex key of vertex table
•Search depth
* := optional parameter
Example:
SELECT * FROM GREEK.NEIGHBORHOODWITH PARAMETERS ( 'placeholder' = ('$startVertices$', [‘zeus‘]), 'placeholder' = ('$startLevel$',‘0') 'placeholder' = ('$endLevel$',‘2') 'placeholder' = ('$edgeFilter$',‘rel=parentOf'));
Reha Cronus
HeraZeusAtlas
Maia Danae ApolloHermes
Artemis Pleione
Leto
Name Depth
Atlas 1
Hemes 1
Danae 1
Apollo 1
Maia 2
Artemis 2
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 16Public
Shortest path
Single-Source Shortest Path • Provides shortest path from start
vertex to all reachable vertices in the graph
Input Parameters•Start vertex
•Edge weight column (*)
Output•Vertex key
•Calculated weight
•Shortest path start to end point
* := optional parameter
10.8
1
0.5 0.9
Example:
SELECT * FROM GREEK.SSSPWITH PARAMETERS ( 'placeholder' = ('$startVertex$', ‘zeus‘), 'placeholder' = ('$edgeWeightColumn$',‘confidence'));
Name Confidence Path
Athena 1 Zeus -> Athena
Hemes 1 Zeus -> Hermes
Atlas 0.8 Zeus -> Atlas
Maia 1.5 Zeus -> Maia
Athena
Hermes Atlas
Maia
Zeus
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 17Public
Strongly connected components
Search for strongly connected components
Input Parameters•Nothing required
Output•Primary key of vertex
•Component ID
* := optional parameter
Vertex Component
a 1
b 1
c 1
d 1
e 1
h 1
f 2
g 2
aa bb cc dd
ee f g hh
Example - Combine with SQL:
SELECT * FROM MY.SCC
WHERE component <= 2;
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 18Public
Pattern matching
Pattern Object
• Simple relational predicates on vertex and edge attributes
• ==,!=,<,>,<=,>=
• Logical connectives• AND
• Simple matching expressions • (a)-[b]->(c) with a and c of
type vertex and b edge
Projection on matched patterns
Returns projected attributes of matched subgraphs
Can be combined with SQL (filters, aggregation, union, …)
rel=parentof
name=Zeus
V1 V2
V1 V2
V3
rel=punish
Who has punished whom
Who has punished whom
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 20Public
Graph modeler
Create Graph Algorithm
Execute Graph Algorithm
SELECT * FROM NYC.GET_SHORTEST_PATHS ORDER BY “weight“ WITH PARAMETERS ( 'placeholder' = ('$startVertices$', [‘zeus‘]), 'placeholder' = ('$endLevel$',‘2'));
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 21Public
Graph viewer
• Native HANA Web application
• Visible graph workspace selection
• Graph explorer • Shows attributes of graph and value
distribution (pie chart)
• Vertex and edge filter
• Graph visualization with SAPUI5 and D3.js• Color mapping: colorizes all nodes that have
specific attributes
• Grouping: group nodes together on an edge
• Graph interaction & algorithms• Neighborhood search with filter conditions
• Shortest path: finds all shortest from a single source or between two nodes
• Strongly connected components
• Pattern matching: search for graph patterns
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 23Public
Property graph model with SQL and SQLScript interfaces
Graph node in calculation scenario
Graph algorithms:• Neighborhood search• Shortest path• Strongly connected components• Pattern matching
• Import / export graph workspace• Security based on roles and
privileges Graph tools & visualization
Custom graph algorithm support Standard graph language Demos, PoC’s & co-innovation
results
Integration with predictive, spatial & text
Graph partitioning & scalability Graph compression, indices Parallelization BFS (Breadth First
Search), DFS (Depth First Search) HANA Vora integration Additional interfaces and
components SQL optimizer & statistics
Today (Recent SPS12) Future DirectionPlanned Q4 2016
This is the current state of planning and may be changed by SAP at any time.
SAP HANA graph roadmap
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 24Public
SAP HANA real-time graph solutions
HANA Medical Insights builds up knowledge
graphs by extracting structured from unstructured
clinical data and combining it with additional
medical data sources. Doctors and researchers
can leverage this knowledge to derive information
specific to the situation they are in.An SAP cloud-based solution that provides
multi-tier visibility of supplier network. Buyers
and sellers can understand how organizations,
products, documents, sites, and events relate to
each other across the Ariba network, so that
they can mitigate risks of failure in their supplier
networks.
Partition independent graphs, calculate maximum distance from a node to the end of the
graph and loop detection.
End-to-end product traceability supports
tracing of all materials purchased, consumed,
manufactured, and distributed in the supply
and distribution network. SAP SuccessFactors LearnFit helps
employees stay competitive by connecting
them with other learners and personalized
learning beyond traditional course catalogs
to fit their learning goals and situation.
To consolidate from various systems
and associate them to enable “silo
searching” to “transverse searching”.
Associate person to person, person to
data.
Money laundering detection, stock trade,
national security, and armed conflict location and
event data project.
When use with a graph query that
includes some traversal operations, it is
possible to retrieve the full text search,
instead of only the results nodes.
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 26Public
Related SAP TechEd sessions
Other TechEd session:
Other information:
For more information on SAP HANA Graph in SAP Community Network at: http://scn.sap.com/docs/DOC-74495
i
SAP HANA Graph Processing: Information and Demonstrationi
DMM212 – SAP HANA Graph Processing: Information and Demonstration
Thursday, Sept 22, 8:00AM – 9:00AM
Friday, Sept 23, 9:15AM – 10:15AM
DMM117 – SAP HANA Processing Services: Text, Spatial, Graph, Series, and Predictive
Wednesday, Sept 21,10:30AM – 12:30PM
Thursday, Sept 22, 10:30AM – 12:30PM
DMM212(L1)
SAP HANA Processing Services: Text, Spatial, Graph, Series, and Predictive
iDMM117(L2)
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 27Public
SAP TechEd Online
Continue your SAP TechEd education after the event!
Access replays of Keynotes Demo Jam SAP TechEd live interviews Select lecture sessions Hands-on sessions …
http://sapteched.com/online
© 2016 SAP SE or an SAP affiliate company. All rights reserved. 28Public
Further informationSAP Public Web• scn.sap.com - What’s new in SAP HANA SPS12 – HANA Graph http://scn.sap.com/docs/DOC-74495
• SAP HANA Platform (Core): http://help.sap.com/hana_platform -> Graph
• SAP HANA Graph Reference Guide: http://help.sap.com/hana/SAP_HANA_Graph_Reference_en.pdf
• SAP HANA Graph Data Model: http://help.sap.com/saphelp_hanaplatform/helpdata/en/b7/bd8a7f157c4201910d40917f410237/frameset.htm
• Graph Modeling for XSA:• http://help.sap.com/hana/SAP_HANA_Modeling_Guide_for_SAP_HANA_XS_Advanced_Model_en.pdf• http://help.sap.com/saphelp_hanaplatform/helpdata/en/22/a479fcf53d4e60ad2cdafb6dcbb210/frameset.htm
SAP Education and Certification Opportunities• SAP HANA Academy video series on SAP HANA Graph processing:
https://www.youtube.com/playlist?list=PLkzo92owKnVwCuJeNPcC7J_v4eT5_s6-d
Watch SAP TechEd Online• www.sapteched.com/online