Cd100 latest updates

55
Thomas Jung / SAP HANA Product Management Ron Silberstein / SAP HANA Product Management CD100 SAP HANA Extended Application Services

description

SAP HANA Extended Application Services Thomas Jung

Transcript of Cd100 latest updates

Page 1: Cd100 latest updates

Thomas Jung / SAP HANA Product Management Ron Silberstein / SAP HANA Product Management

CD100

SAP HANA Extended Application Services

Page 2: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 2

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.

Page 3: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 3

Agenda

Overview

Programming Model

The Repository

Built-In Services

Architecture

Demos

Road Map

Page 4: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 4

SAP HANA Extended Application Services

overview

Rationale: Enable application development and deployment – minimize

“layers”

with an http-based UI (browser, mobile apps)

to run directly on SAP HANA, without an additional external application server which

minimizes TCO

leveraging the built-in strengths of SAP HANA for the best possible performance

Scope

From lightweight environment for small web-based applications

To robust environment for complex high-speed business applications which utilize the

deep integration with the differentiating SAP HANA database features

Page 5: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 5

ABAP and SAP HANA Extended Application Services strategic

usages

ABAP

• Support HANA specific features plus a

variety of traditional Databases

• Available now (BW 7.30, Gateway 2.0

SP4, Accelerators)

• Continues innovation of current

applications

SAP HANA Extended Application

Services

• Applications built to run only on HANA

• Planned Availability in HANA 1.0 SP5

• New applications

Page 6: Cd100 latest updates

SAP HANA Extended Application

Services: Overview

Page 7: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 7

An application‘s foundation

Presentation logic

Control flow logic

Calculation logic

Data

Page 8: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 8

Performance gains with HANA

Presentation logic

Control flow logic

Calculation logic

Data

HANA

Page 9: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 9

Modern clients handle presentation logic

Presentation logic

Control flow logic

Calculation logic

Data

HANA

Client

Page 10: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 10

Push the control flow down!

Presentation logic

Control flow logic

Calculation logic

Data

Client

HANA

Page 11: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 11

Push the control flow down!

Presentation logic

Control flow logic

Calculation logic

Data

Client

HANA

Page 12: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 12

The essence of HANA Application Services (XS)!

Presentation logic

Control flow logic

Calculation logic

Data

Client

HANA

XS

Page 13: Cd100 latest updates

SAP HANA Extended

Application Services

Programming Model

Page 14: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 14

Programming model –

paradigm shift: responsibilities in runtime layers

SAP GUI

ABAP

Other RDBS

Proprietary Protocol

SQL

UI Rendering

Display pre-rendered UI

SQL (high retrieval load, no scripts)

Classic NW ABAP Layers

HANA

Browser

http(s); OData (pure data only)

HdbNet (minimal data volume)

XSEngine

Procedural Appl. Logic

Complete UI Rendering

HTML5: Javascript execution

IndexServer

Data-oriented Appl. Logic

(HDB-SQL, SQLScript)

XS Applications

Application Logic

DBI/DBSL, DB buffer

Page 15: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 15

Programming model

UI Rendering should be implemented completely in the Client

Server generically supports data exposure (via OData) and static UI content provisioning

Browser-based applications should use HTML5, especially SAP UI 5

Ability to leverage the Open Social component model

Additional UI features provided by the Portal Services: navigation, page building, mash-ups, personalization

Server-side procedural logic in JavaScript

Data-intensive logic to be pushed down to the index server processes via Native SAP HANA

View Types or SQLScript

Application artifacts are stored in the SAP HANA Repository

Page 16: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 16

Built-in services

Inbound channel

• HTTP

Odata

• Drastic code reduction

Configuration

• Easy language, built-in extensibility

Outbound connectivity

• HTTP, SMTP

UI services

• SAPUI5

• Portal Services

Page 17: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 17

Control and data artifacts in one repository

Presentation logic

Control flow logic

Calculation logic

Client

Data Data artifacts

Control flow artifacts

Presentation artifacts

HANA

Page 18: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 18

We manage all artifacts in one repository!

Presentation logic

Control flow logic

Calculation logic

Client

Data Data artifacts

Control flow artifacts

Presentation artifacts

HANA

Page 19: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 19

The SAP HANA repository

• Object management, versioning and transport

• Software component delivery and patching

• Built-in support for translatable texts

• Support for server based development

Page 20: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 20

Page 21: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 21

Page 22: Cd100 latest updates

SAP HANA Extended

Application Services

Architecture

Page 23: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 23

Lightweight architecture

Page 24: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 24

Lightweight architecture Architecture in more detail: SAP HANA XS Engine Process

Page 25: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 25

Architecture in more detail: SAP HANA XS Engine Process

Page 26: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 26

End to end architecture

Page 27: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 27

End to end architecture

Page 28: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 28

Page 29: Cd100 latest updates

SAP HANA Extended

Application Services Demos

Page 30: Cd100 latest updates

Demo Creating a Project

Page 31: Cd100 latest updates

Demo OData Services

Page 32: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 32

Application Services – OData service implementation

Database Table/View Name

Page 33: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 33

Application Services – OData service implementation

Database Table/View Name

Page 34: Cd100 latest updates

Demo Server Side JavaScript

Page 35: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 35

Application Services – service implementation in JavaScript

function createEntry( rs ) {

return {

"buyer_id" : rs.getInteger(1),

"company" : rs.getString(2),

"country" : rs.getString(3),

"contact_person" : rs.getString(4)}; }

function handleGet() {

var body = '';

$.response.setContentType('application/json');

var query = "SELECT BUYER_ID, COMPANY, COUNTRY, CONTACT_PERSON FROM \"REALREAL\".\"realreal.db/BUYER\" ORDER BY BUYER_ID DESC";

var conn = $.db.getConnection();

var pstmt = conn.prepareStatement(query);

var rs = pstmt.executeQuery();

var list = [];

while(rs.next()) {

list.push(createEntry(rs)); }

rs.close();

pstmt.close();

conn.close();

body = JSON.stringify( {"entries": list } );

$.response.addBody(body);

$.response.setReturnCode(200); }

switch ( $.request.getMethod() ) {

case 1:

handleGet();

break;

default:

$.response.setReturnCode(500); }

Request Dispatcher

JSON Formatter

Dynamic Database Query

Page 36: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 36

Application Services – service implementation in JavaScript

function createEntry( rs ) {

return {

"buyer_id" : rs.getInteger(1),

"company" : rs.getString(2),

"country" : rs.getString(3),

"contact_person" : rs.getString(4)}; }

function handleGet() {

var body = '';

$.response.setContentType('application/json');

var query = "SELECT BUYER_ID, COMPANY, COUNTRY, CONTACT_PERSON FROM \"REALREAL\".\"realreal.db/BUYER\" ORDER BY BUYER_ID DESC";

var conn = $.db.getConnection();

var pstmt = conn.prepareStatement(query);

var rs = pstmt.executeQuery();

var list = [];

while(rs.next()) {

list.push(createEntry(rs)); }

rs.close();

pstmt.close();

conn.close();

body = JSON.stringify( {"entries": list } );

$.response.addBody(body);

$.response.setReturnCode(200); }

switch ( $.request.getMethod() ) {

case 1:

handleGet();

break;

default:

$.response.setReturnCode(500); }

Request Dispatcher

JSON Formatter

Dynamic Database Query

Page 37: Cd100 latest updates

Demo User Interface Development with The UI Development Toolkit for HTML5 (SAPUI5)

Page 38: Cd100 latest updates

Demo HANA Portal Services

Page 39: Cd100 latest updates

SAP HANA Extended

Application Services Roadmap

Page 40: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 40

XS Functionality: Roadmap

Outbound Connectivity

• http – planned for SP6

• smtp – planned for SP6

• RFC - planned for SP6

• WebSocket – planned for 2013

Page 41: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 41

XS Functionality: Roadmap

Distributed XS – for scale-out SAP HANA systems

• distribute across nodes for redundancy / fail-over – planned for SP6

• distribute across nodes for scalability / capacity – planned for SP6

Page 42: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 42

XS Functionality: Roadmap

Persistence Model (New DDL)

• Regular tables - planned for SP5

• Temporary tables - planned for SP5

• Structures - planned for SP5

Page 43: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 43

XS Functionality: Roadmap

OData Services

• Simple Design Time Format - planned for SP5

• Many-many Associations - planned for SP5

• $Expand (less roundtrips) - planned for SP5

• Solution for missing boolean in HDB type system - planned for SP6

• Translatable column headers - planned for SP6

• Create, Update, Delete – planned for SP6

Page 44: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 44

XS Functionality: Roadmap

Web-based UI

• HTML5 (which moves UI logic completely to the browser) - planned for SP5

• Native mobile clients – e.g., support for iOS apps (within context of SAPUI5) - planned

for SAPUI5 rel 1.8

• iOS, Android, and Blackberry

• Support of XS translation process for text-bundles - planned for SP5

• Portal-Like UI Services – planned for a later revision of SP5, but before SP6

Page 45: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 45

XS Functionality: Roadmap

Authentication

• DB users supported w/ simple Authentication (user/password) - currently available

• SSO via SAP logon tickets - planned for SP5

• SSO via SAML - planned for SP6

• SSO via Kerberos - planned for SP6

Application Configuration

• Accessible via API from xsjs - planned for SP6

• Extensibility support - planned for SP6

Page 46: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 46

XS Functionality: Roadmap

Transport of table content

• transport of table content – planned for SP5

Server-side JavaScript (XSJS)

• XSJS Runtime, with access to SQL, SqlScript, & other internal APIs - planned for SP5

• XSJS Debugging - planned for SP5

Page 47: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 47

XS Functionality: Roadmap

Development Workbench

• File-based standard tools (text editors) - planned for SP5

• HANA Studio and TeamProvider Integration - planned for SP5

• XSJS (JavaScript) Editor and Debugger - planned for SP5

• SqlScript Editor and Debugger - planned for SP5

Background Jobs

• Runtime - planned for SP6

• Scheduler - planned for SP6

• Event-driven – planned for SP7

Page 48: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 48

XS Functionality: Roadmap

Lifecycle Management

• Transport of delivery units - currently available

• Language Transports - currently available

• Product "assembly" and shipment - planned for SP5

• CTS+ support (loose coupling) - currently available (SolMan 7.1 SPS05 req'd)

• CTS+ support (close coupling) - planned for SP6

• New SAP HANA transport system – planned for SP6

Page 49: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 49

XS Functionality: Roadmap

Other

• RDL (River Development Language) – Additional development language option –

planned for SP6

• New XS-based technology components and applications

• Direct Extractor Connection – currently available

• SAP HANA portal services – planned for SP5, but some later revision in 2013

• XMLA query services - planned for SP5

Page 50: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 50

A look ahead: SAP HANA XS wizards planned for SP5

Page 51: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 51

A look ahead: server side JavaScript editor planned for SP5

• Linkage to XSJSLIB files

• Code completion for XSJS specific

APIs and imported library

functions

• Customizable JSLint based

checking as you type

Page 52: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 52

A look ahead: server side JavaScript debugger planned for SP5

Page 53: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 53

A look ahead: server side JavaScript debugger planned for SP5

Page 54: Cd100 latest updates

© 2012 SAP AG. All rights reserved. 54

Further Information

SAP Public Web

http://scn.sap.com/community/developer-center/hana

http://help.sap.com/hana_appliance/#section5

SAP Education and Certification Opportunities

www.sap.com/education

Watch SAP TechEd Online

www.sapteched.com/online

Page 55: Cd100 latest updates

Feedback Please complete your session evaluation for CD100.

Thanks for attending this SAP TechEd session.