Upload
twan-van-den-broek
View
1.693
Download
4
Tags:
Embed Size (px)
DESCRIPTION
SAP HANA Extended Application Services Thomas Jung
Citation preview
Thomas Jung / SAP HANA Product Management Ron Silberstein / SAP HANA Product Management
CD100
SAP HANA Extended Application Services
© 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.
© 2012 SAP AG. All rights reserved. 3
Agenda
Overview
Programming Model
The Repository
Built-In Services
Architecture
Demos
Road Map
© 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
© 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
SAP HANA Extended Application
Services: Overview
© 2012 SAP AG. All rights reserved. 7
An application‘s foundation
Presentation logic
Control flow logic
Calculation logic
Data
© 2012 SAP AG. All rights reserved. 8
Performance gains with HANA
Presentation logic
Control flow logic
Calculation logic
Data
HANA
© 2012 SAP AG. All rights reserved. 9
Modern clients handle presentation logic
Presentation logic
Control flow logic
Calculation logic
Data
HANA
Client
© 2012 SAP AG. All rights reserved. 10
Push the control flow down!
Presentation logic
Control flow logic
Calculation logic
Data
Client
HANA
© 2012 SAP AG. All rights reserved. 11
Push the control flow down!
Presentation logic
Control flow logic
Calculation logic
Data
Client
HANA
© 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
SAP HANA Extended
Application Services
Programming Model
© 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
© 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
© 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
© 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
© 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
© 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
© 2012 SAP AG. All rights reserved. 20
© 2012 SAP AG. All rights reserved. 21
SAP HANA Extended
Application Services
Architecture
© 2012 SAP AG. All rights reserved. 23
Lightweight architecture
© 2012 SAP AG. All rights reserved. 24
Lightweight architecture Architecture in more detail: SAP HANA XS Engine Process
© 2012 SAP AG. All rights reserved. 25
Architecture in more detail: SAP HANA XS Engine Process
© 2012 SAP AG. All rights reserved. 26
End to end architecture
© 2012 SAP AG. All rights reserved. 27
End to end architecture
© 2012 SAP AG. All rights reserved. 28
SAP HANA Extended
Application Services Demos
Demo Creating a Project
Demo OData Services
© 2012 SAP AG. All rights reserved. 32
Application Services – OData service implementation
Database Table/View Name
© 2012 SAP AG. All rights reserved. 33
Application Services – OData service implementation
Database Table/View Name
Demo Server Side JavaScript
© 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
© 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
Demo User Interface Development with The UI Development Toolkit for HTML5 (SAPUI5)
Demo HANA Portal Services
SAP HANA Extended
Application Services Roadmap
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 2012 SAP AG. All rights reserved. 50
A look ahead: SAP HANA XS wizards planned for SP5
© 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
© 2012 SAP AG. All rights reserved. 52
A look ahead: server side JavaScript debugger planned for SP5
© 2012 SAP AG. All rights reserved. 53
A look ahead: server side JavaScript debugger planned for SP5
© 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
Feedback Please complete your session evaluation for CD100.
Thanks for attending this SAP TechEd session.