44
Public Frank Albrecht SAP SE (ASCOT) Kai-Christoph Mueller SAP Labs (ASCOT) DEV103   Mapping the world with SAP HANA Geospatial Engine

DEV103 - Mapping the World With SAP HANA Geospatial Engine

Embed Size (px)

DESCRIPTION

SAP HANA

Citation preview

  • Public

    Frank Albrecht SAP SE (ASCOT)

    Kai-Christoph Mueller SAP Labs (ASCOT)

    DEV103 Mapping the world with SAP HANA Geospatial Engine

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 2 Public

    Disclaimer

    This presentation outlines our general product direction and should not be relied on in making a

    purchase decision. This presentation is not subject to your license agreement or any other agreement

    with SAP. SAP has no obligation to pursue any course of business outlined in this presentation or to

    develop or release any functionality mentioned in this presentation. This presentation and SAP's

    strategy and possible future developments are subject to change and may be changed by SAP at any

    time for any reason without notice. This document 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. SAP assumes no responsibility for errors or omissions in this

    document, except if such damages were caused by SAP intentionally or grossly negligent.

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 3 Public

    Agenda

    The Project

    SAP HANA Cloud and Spatial engine

    Implementation

    From Real World to SAP HANA model

    Architecture

    Digitizing the real world

    Analyzing the real world

    Results

    Learnings

  • The Project

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 5 Public

    The Project

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 6 Public

    The Project

    Goal

    Help a golf player to improve his

    performance

    Motivation

    use SAP standard software

    provide running code showcase

    be able to become producible

    show patterns, which can be used in business related scenarios

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 7 Public

    capture store, analyze & visualize create value

    Real World meets Technology

    Sensors Cloud KPIs

    Trackman

    Stroke tracking

    Wind sensor

    SAP HANA cloud

    SAP HANA spatial engine

    Real time insights

    Predictions

    Intuitive visualization

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 8 Public

    Agenda

    The Project

    SAP HANA Cloud and Spatial engine

    Implementation

    From Real World to SAP HANA model

    Architecture

    Digitizing the real world

    Analyzing the real world

    Results

    Learnings

  • SAP HANA

    (Cloud && Spatial Engine)

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 10 Public

    Landscape: SAP HANA Cloud accessible via the Internet

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 11 Public

    SAP HANA Cloud Platform High level overview

    SAP HANA Cloud Platform

    SAP HANA AppServices

    Integration Analytics Mobile Collaboration Portal

    www

    Security

    Application

    Services

    Enablement

    Services Application Management Systems Management Administration & Monitoring

    Transactions Streaming Predictive Text Mining Analytics Spatial &

    Graphs

    SAP HANA DBServices

    Developer

    Experience HANA XS && OData Open (JAVA)

    Integrated

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 12 Public

    SAP HANA spatial engine

    SAP HANA Spatial Processing

    Business Data + Spatial Data + Real-time Data

    Geo Services

    { Geocoding ||

    Base maps }}

    Geo Content

    { Political

    Boundaries || POIs

    || Roads || }

    Columnar Spatial

    Processing

    Calc Model /

    Views

    { Joins || Views }

    Spatial Functions

    { Area || Distance

    || Within || }

    Spatial Data

    Types

    { Points || Lines ||

    Polygons }

    - SQL - JDBC - ODBC - XS -- xsjs -- OData -- geoJSON

    Interfaces

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 13 Public

    Development Tools: HANA Studio or Web Development Workbench

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 14 Public

    Agenda

    The Project

    SAP HANA Cloud and Spatial engine

    Implementation

    From Real World to SAP HANA model

    Architecture

    Digitizing the real world

    Analyzing the real world

    Results

    Learnings

  • Implementation

    From the real world to the SAP HANA model

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 16 Public

    Capabilities: Allows for visualization, interaction, and

    exploration of spatial data in SAP HANA via maps

    Supports HTML5 deployments for browser or iPad Consumes SAP HANA models

    Benefits: Quick development and deployment time Low TCO & TCD and fast response times with 2-

    tier architecture

    Interoperates with third-party mapping services

    SAP HANA Spatial Application Development

    Quickly develop and deploy SAP HANA based spatial applications

    via the native XS engine

    SAP HANA XS

    iPad/

    Browser

    SAP

    HANA

    HTML5

    Application

    Location

    Services Maps

    Geo-

    coding Services

    Spatial

    Engine

    Geo-

    content

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 17 Public

    The Process From the real world to the SAP HANA model

    createGolfCourseModelInHANA

    1) Acquire real world representation

    2) Create and export geoJSON / KML / ShapeFile /

    { Google Earth || OpenStreetMap || geojson.io || }

    3) Create SQL inserts using WKT format

    4) Import model to SAP HANA

    5) Check the model of golf course in SAP HANA

    // code..code..code

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 18 Public

    (1) Acquire real world representation Golf Course and Club St.Leon-Rot, Germany

    Images of Golf Club St.Leon-Rot from https://www.gc-slr.de/

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 19 Public

    GeoJSON (small excurse) or how to model real world objects

    GeoJSON is an open standard format for encoding collections of simple geographical features along with their non-spatial attributes using JavaScript Object Notation.

    ~ Wikipedia

    Point { "type": "Point", "coordinates": [30, 10] } LineString { "type": "LineString", "coordinates": [ [30, 10], [10, 30], [40, 40] ] } Polygon { "type": "Polygon", "coordinates": [ [[30, 10], [40, 40], [20, 40], [10, 20], [30, 10]]] } MultiPoint { "type": "MultiPoint", "coordinates": [ [10, 40], [40, 30], [20, 20], [30, 10] ] }

    \\ += { MultiLineString{}, MultiPolygon{} }

    geoJSON

    geometries

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 20 Public

    GeoJSON (still a small excurse) feature collections

    GeoJSON is an open standard format for encoding collections of simple geographical features along with their non-spatial attributes using JavaScript Object Notation.

    ~ Wikipedia

    { "type": "FeatureCollection", "features": [ { "type": "Feature", "geometry": { "type": "LineString", "coordinates": [ [102.0, 0.0], [103.0, 1.0], [104.0, 0.0], [105.0, 1.0] ] }, "properties": { "prop0": 0.0, "prop1": "value0" } }, { "type": "Feature", "geometry": { "type": "Polygon", "coordinates": [[[100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0]]]}, "properties": { "prop1": { "this": "that" }, "prop0": "value0" } } ] }

    geoJSON

    features

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 21 Public

    (2) Create and export geoJSON Tool interface and demo

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 22 Public

    (2) geoJSON for a golf course some examples

    Pin: Bunker:

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 23 Public

    (3) Create SQL inserts in WKT format

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 24 Public

    (2) Database Table with geo data

    Use ST.as_Text() to show geo information in human readable format

    LINESTRING (8.628876180747724 49.245461274649351,8.628857007750653

    POINT (8.624864494948630 49.247562010296519)

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 25 Public

    insert into "PAE"."gsm::holegeo"( "ID", "HOLEID", "NAME", "TYPE", "PROPERTIES", "GEO") values( "PAE".SEQ_HOLEGEO.NEXTVAL, 'd-code_hole17', 'd-code_Green', 'green', '{"golf":"green","natural":"grass","name":"Green","parent":"hole01"}', NEW ST_POLYGON ('POLYGON((8.62538605928421 49.247343895147054, 8.625455796718596 49.24721782786144, 8.625624775886536 49.24727735967533, // first and last entry are the same 8.625514805316925 49.247349147943645, // in order to close the polygon 8.62538605928421 49.247343895147054 ))') ) ;

    (4) Import model to SAP HANA

    Inserting a modeled

    green

    Create a table including ST_Geometry data type

    super type of all spatial geometry types

    { ST_LineString && ST_MultiLineString && ST_MultiPoint && ST_MultiPolygon && ST_Point && ST_Polygon }

    Expecting WKT(Well-Known-Text) format in each constructor

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 26 Public

    (5) Check the model of golf course in SAP HANA Hole 1 In real life and based on SAP HANA data

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 27 Public

    (5) Check the model of golf course in SAP HANA The complete course of St.Leon in real life and modeled in SAP HANA

  • Implementation

    Architecture

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 29 Public

    Architecture Information

    SAP HANA Cloud platform as the core

    Data capturing via sensors

    Geo information, analysis and prediction from platform

    services

  • Implementation

    Digitizing the real world

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 31 Public

    Digitizing the real world Provide Information during game

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 32 Public

    Digitizing the real world Recording Strokes

    NFC Tags for each club

    Phone with NFC support

    Records Club information

    and Geo Location

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 33 Public

    Storing the recorded strokes

    Phone reads NFC tag and creates OData Entity with Latitude,Longitude and ClubId

  • Implementation

    Analyzing the real world

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 35 Public

    Analysis - Questions

    The golf player wants to get answers for the following questions:

    Did the ball hit the green ?

    How long was the longest drive ?

    Did the ball hit the Fairway ? { hit || missed left || missed right }

    Green in regulation ? { hit || missed short || missed long || missed left || missed right }

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 36 Public

    KPI

    Fairway { hit || missed left || missed right }

    Angle as reference required

    Line between tee-off and centroid of freeway

    Depending on angle between

    reference line && tee-off to ball land line

    missed right || missed left

    "PAE"."gsm::Bearing"( SD."StartLat", SD."StartLng", SD."EndLat", SD."EndLng )

    > "PAE"."gsm::Bearing"( SD."StartLat", SD."StartLng", HG_FAIRWAY.GEO.ST_CENTROID().ST_Y(), HG_FAIRWAY.GEO.ST_CENTROID().ST_X() )

    \\ "PAE"."gsm::Bearing is a helper function

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 37 Public

    Fairway Special Case

    Unsymmetrically shaped freeways require helper lines

    Ball would falsely be labeled missed right here

    New line between tee-off && helper point (green)

    Depending on angle between

    helper line && tee-off to ball land line

    missed right || missed left

    "PAE"."gsm::Bearing"( FW_HLINE."Lat1", FW_HLINE."Lng1", SD."EndLat", SD."EndLng )

    > "PAE"."gsm::Bearing"( FW_HLINE."Lat1", FW_HLINE."Lng1", FW_HLINE."Lat2", FW_HLINE."Lng2 )

    \\ "PAE"."gsm::Bearing is a helper function

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 38 Public

    KPI Green in regulation (GIR)

    Green in regulation (GIR) := stroke ( PAR 2 ) on the green

    Possible values { Hit || Missed short || Missed long || Missed right || Missed left }

    Measured in stroke direction

    Unsymmetrical shape again

    Missed short || Missed right?

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 39 Public

    Agenda

    The Project

    SAP HANA Cloud and Spatial engine

    Implementation

    From Real World to SAP HANA model

    Architecture

    Digitizing the real world

    Analyzing the real world

    Results

    Learnings

  • Results

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 41 Public

    The Results

    Fan experience Leader board

    Player dashboard

    Analytics

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 42 Public

    Fan experience Leader board

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 43 Public

    The Player Dashboard

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 44 Public

    Analytics

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 45 Public

    Agenda

    The Project

    SAP HANA Cloud and Spatial engine

    Implementation

    From Real World to SAP HANA model

    Architecture

    Digitizing the real world

    Analyzing the real world

    Results

    Learnings

  • Learnings

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 47 Public

    Learnings

    You need to understand

    Longitude & Latitude versus Cartesian coordinates

    Radian versus Degrees

    Visualization needed for all Geospatial data during development and testing very helpful

    Clock-wise/Counter Clock-wise orientation

    for distances/areas on the earth

    influencing distance calculations as there are two distances on a closed surface

    Access via SAP HANA Cloud on every Golf Course in the world possible

    Current Limitations

    Geospatial cannot be used in SQL script, Analytical- and Calculation-views

  • 2014 SAP SE or an SAP affiliate company. All rights reserved.

    Thank you

    Contact information:

    Frank Albrecht SAP SE (ASCOT)

    Kai-Christoph Mueller SAP Labs (ASCOT)

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 49 Public

    SAP d-code Virtual Hands-on Workshops and SAP d-code Online Continue your SAP d-code education after the event!

    SAP d-code Online

    Access replays of keynotes, Demo Jam, SAP d-code live interviews, select lecture sessions, and more!

    Hands-on replays

    http://sapdcode.com/online

    SAP d-code Virtual Hands-on Workshops

    Access hands-on workshops post-event

    Starting January 2015

    Complementary with your SAP d-code registration

    http://sapdcodehandson.sap.com

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 50 Public

    Further Information

    SAP Education and Certification Opportunities

    www.sap.com/education

    Watch SAP d-code Online

    www.sapcode.com/online

    SAP Public Web

    scn.sap.com

    www.sap.com

  • 51 2014 SAP SE or an SAP affiliate company. All rights reserved.

    Feedback Please complete your session evaluation for

    DEV103

    Thanks for attending this d-code session.

    2014 SAP SE or an SAP affiliate company. All rights reserved. 51 Public

  • 2014 SAP SE or an SAP affiliate company. All rights reserved. 52 Public

    2014 SAP SE or an SAP affiliate company. All rights reserved.

    No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP SE or an

    SAP affiliate company.

    SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP SE

    (or an SAP affiliate company) in Germany and other countries. Please see http://global12.sap.com/corporate-en/legal/copyright/index.epx for additional trademark

    information and notices.

    Some software products marketed by SAP SE and its distributors contain proprietary software components of other software vendors.

    National product specifications may vary.

    These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or warranty of any kind, and SAP SE or its

    affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP SE or

    SAP affiliate company products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing

    herein should be construed as constituting an additional warranty.

    In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or any related presentation, or to develop or

    release any functionality mentioned therein. This document, or any related presentation, and SAP SEs or its affiliated companies strategy and possible future developments, products, and/or platform directions and functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for

    any reason without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or functionality. 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.