SlideShare a Scribd company logo
SAP HANA Implementationp
and Modeling
TZH300 Implementation and Modelingp g
Collection 096 Rev 14 V1
Agendag
SAP HANA Implementation and Modeling
• Unit 1: Data Provisioning using SLT
• Unit 2: Approaching SAP HANA ModelingUnit 2: Approaching SAP HANA Modeling
• Unit 3: Connecting Tables
• Unit 4: Advanced Modeling
• Unit 5: Processing Information Models
• Unit 6: Managing Modeling Content
• Unit 7: Security and Authorizations• Unit 7: Security and Authorizations
© 2012 SAP AG. All rights reserved. 2
Positioning and Key Concepts
Unit 1: Data Provisioning using SLT
Data Replication at a Glance
Overview on Configuration Aspects
SLT based transformation concepts
Transformation of Data
SLT based transformation concepts
Selective Data Replication
Extension of (target) table structure
Specific Considerations
Objectives
Positioning and Key ConceptsPositioning and Key Concepts
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
• Explain the positioning of SAP LT Replication
ServerServer
• Describe the key concepts and features
• List the prerequisites and how to set up the
SAP LT Replication Server
• Name the benefits of the trigger-based replication
approach
© 2012 SAP AG. All rights reserved. 4
Overview
Positioning and Key ConceptsPositioning and Key Concepts
This module covers the following topics:This module covers the following topics:
• Product name, positioning and key benefits
C i l t d ft hi t• Commercial aspects and software shipment
• Overview on key concepts, features and user interfaces
• Overview on key installation and configuration stepsy g p
© 2012 SAP AG. All rights reserved. 5
Product Name
SAP LandscapeSAP Landscape
TransformationTransformation
Replication Serverp
for SAP HANA
© 2012 SAP AG. All rights reserved. 6
SAP LT Replication Server for SAP HANA Leverages
Proven SLO TechnologiesProven SLO Technologies
Application Lifecycle ManagementSLO* t h l i h b d Application Lifecycle Management SLO* technologies have been used
since more than 10 years in
hundred of projects per year
K ff i f t SAP‘ Key offerings foster SAP‘s
Application Lifecycle Management
concept
SAP LT R li ti S SAP LT Replication Server - as a
new use case - leverages several
SLO technologies
© 2012 SAP AG. All rights reserved. 7
*) System Landscape Optimization
Positioning and Key Benefits of SAP LT Replication Server
for SAP HANAfor SAP HANA
Key Benefits of the Trigger-Based Approach:
• Allows real-time (and scheduled) data replication, replicating only
relevant data into HANA
• Ability to migrate data into HANA format while replicating data in real-
time
• „Unlimited“ release coverage (from SAP R/3 4.6C onwards) sourcing
data from SAP ERP (and other ABAP based SAP applications)
• Leverages proven SLO technology (Near Zero Downtime, TDMS, SAP
LT)
• Simple and fast set-up of LT replicator (initial installation and
fi ti i l th 1d ) d f ll i t t d ith HANA d lconfiguration in less than 1day) and fully integrated with HANA modeler
UI
SAP LT Replication Server is the ideal solution for all HANA
customers who need real-time or scheduled data replication
© 2012 SAP AG. All rights reserved. 8
sourcing from SAP and NON-SAP sources
Commercial Aspects and Software Shipmentp p
Commercial Aspects
SAP LT Replication Server for SAP HANA will be
part of SAP HANA software license modelpart of SAP HANA software license model
Software ShipmentSoftware Shipment
SAP LT Replication Server for SAP HANA will be
part of SAP HANA software shipment and fully
integrated into the SAP HANA modeler UIintegrated into the SAP HANA modeler UI
© 2012 SAP AG. All rights reserved. 9
Overview - Trigger-Based Approach
Positioning and Key ConceptsPositioning and Key Concepts
SAP LT Replication Server does not have to be a separate 
SAP system and can run on any SAP system with SAPSAP system and can run on any SAP system with SAP 
NetWeaver 7.02 ABAP stack (Kernel 7.20EXT)  
HANA Studio
Application Table
Trigger Based
Delta Recording
Replication
Engine
RFC
Connection
DB
Connection
Replication Configuration
SAP HANA systemSAP source system SAP LT Replication Server
Application Table
yy p
Connection(s) between source system and SAP HANA system are
defined as “Configuration” on the SAP LT Replication Server
Data load and replication are
triggered via SAP HANA Studio
© 2012 SAP AG. All rights reserved. 10
Architecture and Key Building Blocks
Positioning and Key ConceptsPositioning and Key Concepts
Read module Structure mapping &
Transformation
RFC
Connection
Application table Logging table
DB trigger
Application table
Write module
DB
Connection
SAP HANA systemSAP LT Replication ServerSAP source system
Efficient initialization of data
replication based on DB trigger
Flexible and reliable replication
process, incl. data migration
Fast data replication via DB connect
LT replication functionality is fully
© 2012 SAP AG. All rights reserved. 11
and delta logging concept
(as with NearZero downtime approach)
process, incl. data migration
(as used for TDMS and SAP LT)
LT replication functionality is fully
integrated with HANA Modeler UI
Architecture for Non-SAP Source Replication
Positioning and Key ConceptsPositioning and Key Concepts
Read module
Structure mapping &
T f ti
DB
Connection
Application table Logging table
DB trigger
Transformation
Application table
Write module
DB
Connection
SAP HANA systemSAP LT Replication ServerNon SAP source system
In a first step, SAP LT Replication Server transfers all metadata table definitions from the non-SAP
source system to the HANA system. From the HANA Studio perspective, non-SAP source replication
works as for SAP sources. When a table replication is started, SAP LT Replication Server creates
logging tables within the source system. As a difference, the read modules are created in the SAP LT
© 2012 SAP AG. All rights reserved. 12
logging tables within the source system. As a difference, the read modules are created in the SAP LT
Replication Server. The connection the non-SAP source system is established as a database connection.
Multi System Support
Positioning and Key ConceptsPositioning and Key Concepts
System A
System B
Schema 1
Schema 2
Source systems are
connected to separate
HANA schema on the
same HANA System
SAP HANA systemSource systems
y
Source systems are
SAP HANA tS t
System A
System B
Schema 1
Schema 1
Source systems are
connected to separate
HANA systems.
Schema name can be
equal or differentSAP HANA systemSource systems equal or different
Source systems are
SAP HANA systemSource systems
System A
System B
Schema 1
Source systems are
connected to same
HANA system and
also the same
schema
© 2012 SAP AG. All rights reserved. 13
SAP HANA systemSource systems schema
Set-up of LT Replication Server
Positioning and Key ConceptsPositioning and Key Concepts
Installation aspects
Source system(s): use respective DMIS add-on
LT replication server: use add-on DMIS_2010_1_700 with SP05;
other system requirements (NW 7.02; SAP Kernel 7.20EXT) apply
Apply SPS03 for SAP HANA 1 0
Configuration steps for SAP LT Replication Server
Apply SPS03 for SAP HANA 1.0
Define a schema for each source system
Define connection to source system
Define DB connection into SAP HANA
Define replication frequency (real-time; frequency for scheduled replication)
Define maximum number of background jobs for data replication
Set-up of data replication in SAP HANA
Select relevant source system
Start (initial load only and / or continuous replication)
© 2012 SAP AG. All rights reserved. 14
Key Configuration Steps
Positioning and Key ConceptsPositioning and Key Concepts
Call SAP LT Replication Server
Configuration (Transaction: LTR)
Define configuration data
© 2012 SAP AG. All rights reserved. 15
Starting the Data Replication
Positioning and Key ConceptsPositioning and Key Concepts
Choose data provisioning to
launch SAP HANA Modeler UI
1. 1. Select source system as defined in SAP1. 1. Select source system as defined in SAP
LT Replication Server; related system
information and schema will be displayed
2. 2. Use button Load and / or Replicate to set
th d t li tiup the data replication
3. 3. Use button Stop Replication to finish
replication
4 U b tt S d t li ti4. 4. Use button Suspend to pause replication
5. 5. Use button Resume to continue replication
© 2012 SAP AG. All rights reserved. 16
Database - Supportability Matrix
SAP LT Replication Server for SAP HANASAP LT Replication Server for SAP HANA
D t b
Technical availability
Database
SAP Sources Non SAP Sources (*)
MSFT SQL Server Enterprise Edition OK OK
Oracle Enterprise Edition OK OK
IBM DB2 LUW/ UDB (DB6) OK OK
IBM DB/2 zSeries OK OK
IBM DB2 iSeries (former AS/400) OK Not yet supported
IBM Informix Planned for HANA SPS4 Not supportedo pp
SAP MaxDB OK OK
Sybase ASE Available until End of January 2012 Planned for HANA SPS4
For non-SAP source systems, the customer database license needs to cover a
permanent database connection with 3rd party products like SAP LT Replication
Server.
© 2012 SAP AG. All rights reserved. 17
(*) Since a DB connection from SAP LT replication server to a non-SAP system is required, the OS/DB restrictions of SAP
NetWeaver 7.02 apply (see at http://service.sap.com/pam)
Roadmap at a Glance
SAP LT Replication ServerSAP LT Replication Server
• Several conceptual enhancements in
alignment with SAP HANA development
• Replication of tables into multiple HANA
systems
• User experience and usability
• More integrated monitoring capabilities, e.g.
status and replication logs in SAP HANA andstatus and replication logs in SAP HANA and
SAP Solution Manager
• Improved operations aspects
R li ti it• Replication repository
• Transactional integrity
© 2012 SAP AG. All rights reserved. 18
Summary
Positioning and Key ConceptsPositioning and Key Concepts
You should now be able to:You should now be able to:
• Explain the positioning of SAP LT Replication
ServerServer
• Describe the key concepts and features
• List the prerequisites and how to set up the
SAP LT Replication Server
• Name the benefits of the trigger-based replication
approach
© 2012 SAP AG. All rights reserved. 19
Positioning and Key Concepts
Unit 1: Data Provisioning using SLT
Data Replication at a Glance
Overview on Configuration Aspects
SLT based transformation concepts
Transformation of Data
SLT based transformation concepts
Selective Data Replication
Extension of (target) table structure
Specific Considerations
Objectives
Overview on configuration aspectsOverview on configuration aspects
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
• Describe the set-up of a configuration on the
SAP LT Replication ServerSAP LT Replication Server
• Explain the impact of the configuration set-up on the
data replication
© 2012 SAP AG. All rights reserved. 21
Concept: Define Configuration / Schema
Overview on configuration aspectsOverview on configuration aspects
Schema 1
Trigger-based
delta recording
Replication
engine
RFC
Connection
Replication Configuration
DB
Connection
SAP HANA systemSAP source system SAP LT Replication Server yy p
A new configuration can be created in the LT Configuration and Monitoring Dashboard. In that step, the connection
between the source and the HANA system is established and the target schema will be created (if it doesn’t exist already).
Also replication control tables are created and table lists are replicated from the source system. In addition, the required
l d GRANT / REVOKE d d
© 2012 SAP AG. All rights reserved. 22
roles and GRANT / REVOKE procedures are generated.
Creating a New Configuration for SAP Sources
Overview on configuration aspectsOverview on configuration aspects
General Data
D fi th li ti t t S h N i th HANADefine the replication target Schema Name in the HANA
system (if schema does not exist, it will be created
automatically)
Define the Number of Replay Jobs used for data load
and replicationand replication
Connection to the source system
SAP Source System: Use previously defined RFC
destination to source systemy
Non SAP Source System: Select the source database
system and set the required fields (see also next slides)
Connection to HANA systemy
•Define the User Name and Password which can be used to connect to the HANA system (see also next slide)
•Define the Host Name and Instance Number of the target HANA system
Table space assignmentp g
Optional: define table space for logging tables. If no table space is defined, logging table will be created in the same table space
as the original table. Own table space is recommended for easier monitoring of the table sizes of the logging tables
Replication Mode
© 2012 SAP AG. All rights reserved. 23
p
Replication can be executed in Real-time mode or in Scheduled mode
Creating a New Configuration for Non-SAP
Sources
Overview on configuration aspects
To replicate from non-SAP source
system select Legacy and the
affected database systemaffected database system.
Depending on the database system,
dditi l i d i f ti dadditional required information needs
to be specified (e.g. for DB2 specify
the DB connection and the table
space name).
© 2012 SAP AG. All rights reserved. 24
space name).
Start with transaction LTR
Results of Creating a New Configuration
Overview on configuration aspectsOverview on configuration aspects
When the popup to create a new configuration is closed by
pressing the OK button the following actions are performedpressing the OK button, the following actions are performed
automatically:
 Configuration settings are saved on the LT Replication Server
 New user and schema are created on the HANA system with the defined
t t h ( t f d if i ti h i d)target schema name (not performed if an existing schema is reused)
 Replication control tables (RS_* tables) are created in target schema
 User roles for the target schema are created:
 <target_schema>_DATA_PROV -> Role to manage data provisioning
 <target_schema>_POWER_USER -> Contains all SQL privileges of the target
schema
 <target_schema>_USER_ADMIN -> Role to execute authority procedures (see
below)
 A procedure to grant (RS GRANT ACCESS) or revoke A procedure to grant (RS_GRANT_ACCESS) or revoke
(RS_REVOKE_ACCESS) are created in the target schema
 Replication of tables DD02L (stores the table list) and DD02T (stores the
table short descriptions) is started automatically. Once those tables are
replicated , the HANA studio knows which tables are available in the sourcep ,
system
 SYS_REPL and table RS_REPLICATION_COMPONENTS are created
(if they don’t exist already based on a previous configuration)
 Replication is registered in table RS REPLICATION COMPONENTS
© 2012 SAP AG. All rights reserved. 25
 Replication is registered in table RS_REPLICATION_COMPONENTS
Summary
Overview on configuration aspectsOverview on configuration aspects
You should now be able to:You should now be able to:
• Describe the set-up of a configuration on the
SAP LT Replication ServerSAP LT Replication Server
• Explain the impact of the configuration set-up on the data
replication
© 2012 SAP AG. All rights reserved. 26
Positioning and Key Concepts
Unit 1: Data Provisioning using SLT
Data Replication at a Glance
Overview on Configuration Aspects
SLT based transformation concepts
Transformation of Data
SLT based transformation concepts
Selective Data Replication
Extension of (target) table structure
Specific Considerations
Objectives
Data Replication at a GlanceData Replication at a Glance
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
• Explain the different option for data replication and the
related implicationsrelated implications
© 2012 SAP AG. All rights reserved. 28
Overview
Data provisioning at a glanceData provisioning at a glance
This module covers the following topics:This module covers the following topics:
• Load and replicate data
• Suspend and resume data replication
• Status monitoring in HANA Studio
© 2012 SAP AG. All rights reserved. 29
Launch Data Provisioning UI
Data provisioning at a glanceData provisioning at a glance
All further data provisioning steps
t d f th HANAare executed from the HANA
Studio. Therefore, switch to the
HANA Studio, choose the
perspective Information Modelerp p
and start the quick launch.
Select your system and start the
Data Provisioning via the link ing
section DATA.
If you cannot enter this screen or
do not see any data, verify if a data
provisioning role was assigned to
© 2012 SAP AG. All rights reserved. 30
your user.
Start Load / Replication
Data provisioning at a glanceData provisioning at a glance
Press the respective button to Replication includes load
and delta replication
Load the current data of a table from the source system
Replicate a table includes the load of the current data and the replication of all changes
in the source system
and delta replication
Choose a table from
the list or enter a
search string to
search for a specific
table.
Use the button AddUse the button Add
to select the table.
Once all relevant
tables are selected,
load / replication is
triggered when popup
is closed via button
Finish.
© 2012 SAP AG. All rights reserved. 31
Start Load/Replication - Executed Activities
Data provisioning at a glanceData provisioning at a glance
Read module Structure mapping &
transformation
RFC
Connection
HANA Studio
Application Table Logging Table
DB Trigger
Application Table
Write module
DB
Connection
SAP HANA systemSAP LT Replication ServerSAP source system
Data provisioning can be managed via the HANA Studio modeler view using the data provisioning. If a
table is started for load or replication, the LT runtime objects (reader, mapping and transformation and
writer modules) are generated in the respective systems. If tables are selected for replication, also the
© 2012 SAP AG. All rights reserved. 32
delta recording (logging table and DB trigger) is activated on the source system.
Stop / Suspend Replication
Data provisioning at a glanceData provisioning at a glance
Press the respective button to
Stop the replication and also to stop delta recording for that table (deletes DB trigger!)
Suspend data replication but keep delta recording active
Resume a previously suspended data replicationp y p p
The table selection popup will look similar as for Load and Replication. In case of Stop Replication or
Suspend, only those tables can be selected which are already in replication mode. In case of Resume only
those tables can be selected which are in suspend mode.
Please be aware that in case a replication is stopped and started again, the
corresponding table will be dropped. The initial load must be repeated as delta
recording was deactivated for a certain time and changes might not be recorded.
So in case you only want to pause the delta replication use the mode Suspend andSo in case you only want to pause the delta replication, use the mode Suspend and
Resume as delta recording is not deactivated and the replication can be continued
without a need of a new initial data load.
© 2012 SAP AG. All rights reserved. 33
Stop/Suspend Replication - Executed Activities
Data provisioning at a glanceData provisioning at a glance
Stop data replication
Delete trigger & Log. tab.
Application Table Logging Table
DB Trigger Application table
Stop replication
SAP HANA systemSAP LT Replication ServerSAP source system
Stop data replication
Application table Logging table
DB Trigger
Application table
Suspend replication
SAP HANA systemSAP LT Replication ServerSAP source system
SAP HANA systemSAP LT Replication ServerSAP source system
Continue data replication
Application table Logging table
DB Trigger
Application table
© 2012 SAP AG. All rights reserved. 34
Resume replication
SAP HANA systemSAP LT Replication ServerSAP source system
Status Monitoring in HANA Studio
Data provisioning at a glanceData provisioning at a glance
The load / replication status can be monitored in the Data Load Management
ithi th d t i i i t l I thi ti th t t t f llscreen within the data provisioning tool. In this section, the current status of all
relevant tables of the selected source system / target schema is displayed.
© 2012 SAP AG. All rights reserved. 35
Summary
Data provisioning at a glanceData provisioning at a glance
You should now be able to:You should now be able to:
• Explain the different option for data
replication and the related implicationsreplication and the related implications
© 2012 SAP AG. All rights reserved. 36
Positioning and Key Concepts
Unit 1: Data Provisioning using SLT
Data Replication at a Glance
Overview on Configuration Aspects
SLT based transformation concepts
Transformation of Data
SLT based transformation concepts
Selective Data Replication
Extension of (target) table structure
Specific Considerations
Objectives
SLT based transformation conceptsSLT based transformation concepts
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
• Explain the basics of the SLT based transformation
conceptsconcepts
• Leverage the data processing and transformation process
• Explain which tables and fields has to be specify for a
transformation rule
© 2012 SAP AG. All rights reserved. 38
Overview
SLT based transformation conceptsSLT based transformation concepts
This module covers the following topics:This module covers the following topics:
• Details on the basic concept of SLT based transformation
O f f f• Overview on key tables and field to be specified for a
transformation
• Naming conventions to be used for a transformation rule
• Trigger conditions in detail
© 2012 SAP AG. All rights reserved. 39
Concept
SLT based transformation conceptsSLT based transformation concepts
The main purpose of SAP HANA is reporting data of particular ERP content.
Generally this will be done with an one-to-one replication of ERP table into the
new database.
Depending on the customer-specific requirement, it’s sometimes necessary to
filter, to change, or to extend the original data within the load process into HANA.
Key Use Cases:y
• Conversion
 Change data and/or table-structure within datag
replication/loading
• Filtering
 Reduce number of records to be replicated
© 2012 SAP AG. All rights reserved. 40
Concept
SLT based transformation conceptsSLT based transformation concepts
Currently, transformation & filtering topics
are only provided by project base.
(Only for SAP lead projects)
© 2012 SAP AG. All rights reserved. 41
Concept - Data Processing
SLT based transformation conceptsSLT based transformation concepts
Start of Replication Cycle
Get next portion from source
1
2
RFC
Connection
…
Loop through portion
4
3
Map fields of a record to
sender structure
DB
Connection
…
S t SAP LT R li ti S
Data Portions
5 Add record to sender portion
SAP HANA t
Data Portions
Source system SAP LT Replication Server SAP HANA system
 The data for transformation will be split into portions (default: load: 10,000 lines, replication: 5,000 lines)
 The portions will be processed successively, mapped, and transferred to sender
 Extension of functionality (for example data conversion) is possible at several points of the process using
ABAP includes  Transformation rules
© 2012 SAP AG. All rights reserved. 42
 Implementation of these rules by maintaining table IUUC_ASS_RUL_MAP of the LT Replication Server
Implementation of Rules within Transformation
Process SLT based transformation conceptsProcess SLT based transformation concepts
Steps of implementation:p p
1. Create ABAP include containing the coding to change fields
 Usage of naming convention for parameter and table fields to
h d t t b li t dchange data to be replicated
2. Maintain table IUUC_ASS_RUL_MAP to use the defined rule
 Generally there are two types of transformations rules Generally, there are two types of transformations rules
Event-based rules
More flexible than parameter-based rules
Knowledge of data processing within the SAP LT Replication Server needed to
select the right event for the specific business scenario
Parameter-based rules
Less flexible than event-based rules
Easy to create by using parameters
© 2012 SAP AG. All rights reserved. 43
Fields of IUUC_ASS_RUL_MAP
SLT based transformation conceptsSLT based transformation concepts
Fields of table IUUC_ASS_RUL_MAP (residing on SAP LT Replication Server)
MT_ID The scheme name has a corresponding mass transfer ID. Enter “SAP” if you want to create a
template for all mass transfer IDs created in future or enter an existing mass transfer ID if you
want to restrict the settings to a specific mass transfer.
To get the MT_ID for your schema name (=”Mass transfer XXX”), use Transaction: LTR
TABNAME Name of the table of sender system
BASISVERSION Enter the Basis Release of Source System (for example: 620, 700, … ). You can obtain it from:
S t  St t  Cli k ‘C t I f ti ’  SAP BASIS l )System  Status  Click on ‘Component Information’  SAP_BASIS release).
For non-Sap sources, use the SAP_BASIS release of the SLT system.
EVENT (not used for parameter rules)
Enter event (BOP, BOT etc.) for event-based rule.
FIELDNAME (not used for event-based rules)
Enter the name of the receiver field the mapping rule should be assigned to
IMP_PARAM_1..3 (not used for event-based rules)
Use those columns to define the import parameters you need. You can either set a sender fieldp p y
name into this column or a literal (use quotes for literals, for example, ‘1000’)
If no parameter has to be used within the rule, IMP_PARAM_1 has to be set to ‘DUMMY’!
INCLUDE Name of the include containing the mapping rule. Name can be defined individually.
Recommended naming convention: ZIUUC_<tab_name>_<fieldname> (that is,
© 2012 SAP AG. All rights reserved. 44
ZIUUC_DD03L_AS4LOL)
Event-Based Rules
SLT based transformation conceptsSLT based transformation concepts
Start Load / Replication
BOP – Begin of Processing
BOP (Begin of Processing):
 Processed only once, before the data transfer really starts.BOP – Begin of Processing
DO
Get next portion from source system
BOT – Begin of Block
y , y
 Can be used to initialize certain global fields that might be used in subsequent
events (for example, fill internal mapping tables)
EOP (End of Processing):
 Processed only once after the data transfer is completedBOT Begin of Block
LOOP AT source
BOL – Begin of Loop
MOVE-CORRESPONDING
 Processed only once, after the data transfer is completed.
BOT (Begin of Block):
 Access to all data records of a portion read from the sender system
EOT (End of Block):
source TO target
BOR – Begin of Record
individual field mapping
 Access to all data records immediately before they are passed to the receiver
system
BOL (Begin of Loop):
 Like BOT if only one table is included in the conversion object; in case of objects
f
EOR – End of Record
EOL – End of Loop
ENDLOOP
with multiple tables, it can be applied to each specific table
EOL (End of Loop):
 Like EOT if only one table is included in the conversion object; in case of objects
with multiple tables, it can be applied to each specific table
Write to target system
EOT – End of Block
ENDDO
BOR (Begin of Record):
 This event is processed before the field mapping of the individual fields is started.
EOR (End of Record):
 This event is processed after the field mapping of the individual fields of a certain
© 2012 SAP AG. All rights reserved. 45
EOP – End of processing
p pp g
data record has finished.
Parameters and Field Variables within Includes
SLT based transformation conceptsSLT based transformation concepts
Parameter Rules:
Sender (source) field:Sender (source) field:
Defined as import parameters in table IUUC_ASS_RUL_MAP fields IMP_PARAM_1/2/3
Addressed in the include using the following name:
IMP_PARAM_1: i_<fieldname>_1 (for example, i_mandt_1)
IMP PARAM 2: i <fieldname> 2IMP_PARAM_2: i_<fieldname>_2
IMP_PARAM_3: i_<fieldname>_3
If you have defined a literal the technical name will be:
IMP_PARAM_1: i_p1
IMP PARAM 2 i 2IMP_PARAM_2: i_p2
IMP_PARAM_3: i_p3
Receiver (target) field:
Defined in table IUUC_ASS_RUL_MAP field FIELDNAME
Add d i h i l d i h f ll i
SKIP_RECORD
can be used in the code
Addressed in the include using the following name:
e_<fieldname> (for example, e_mandt).
Event based Rules and Parameter Rules
Fields can be directly addressed using field symbols (event BOL and EOL only)
Sender (source) field of the table:
<wa_s_(tab_name)>-<field> (for example, <wa_s_mara>-mandt)
Receiver (target) field of the table:
© 2012 SAP AG. All rights reserved. 46
( g )
<wa_r_(tab_name)>-<field> (for example, <wa_r_mara>-mandt)
Define the Trigger Condition
SLT based transformation conceptsSLT based transformation concepts
Trigger condition has to be defined in the table IUUC_SPC_PROCOPT.
Based on the database of the source system, different syntaxes are
adapted.
Field ActionField Action
MT_ID If you want to create a template for all mass transfer IDs created in future, enter
“SAP” or enter an existing mass transfer ID if you want to restrict the settings to a
specific mass transfer.
TABNAME Enter the name of the table in the sender system here.y
DBSYS Enter the database type of the source system.
LINE_NO You can specify multiple lines if the condition is too complex to be filled in only one
line.
LINE Enter the trigger condition here. Only when the data change fulfills the condition , itgg y g
will be recorded into the logging table for the SLT replication.
DBSYS Syntax Sample
ADABAS D fi ld1 ' l 0' AND fi ld2 IN ( ' l 1' ' l 2' ) AS4LOCAL 'N'ADABAS D field1 = 'value0' AND field2 IN ( 'value1', 'value2' ) AS4LOCAL = 'N'
DB2 ___."field1" = 'value0' AND ___."field2" IN ( 'value1', 'value2' ) ___."AS4LOCAL" = 'N'
DB6 ___.field1 = 'value0' AND ___.field2 IN ( 'value1', 'value2' ) ___.AS4LOCAL = 'N'
MSSQL field1 = 'value0' AND field2 IN ( 'value1', 'value2' ) AS4LOCAL = 'N'
© 2012 SAP AG. All rights reserved. 47
ORACLE :___.field1 = 'value0' AND :___.field2 IN ( 'value1', 'value2' ) :___. AS4LOCAL = 'N'
Define the Trigger Condition
SLT based transformation conceptsSLT based transformation concepts
In this example, we want to customize
the trigger directly in the source
system in a way that only changes to
the data with AS4LOCAL = ‘N’ will be
d drecorded.
© 2012 SAP AG. All rights reserved. 48
Define the Trigger Condition
SLT based transformation conceptsSLT based transformation concepts
Another example, filtering will be done
based on Company Code (BUKRS
field). Only company codes with the
value ‘1000’ will be replicated to the
HANA tHANA system
Please note: trigger filtering will only
work for replication phase. If it is
required to filter the table during the
initial load phase, an additional event
(or parameter) filter is also necessary!
© 2012 SAP AG. All rights reserved. 49
Summary
SLT based transformation conceptsSLT based transformation concepts
You should now be able to:You should now be able to:
• Explain the basics of the SLT based transformation concepts
• Leverage the data processing and transformation process
• Explain which tables and fields has to be specify for a
transformation ruletransformation rule
© 2012 SAP AG. All rights reserved. 50
Positioning and Key Concepts
Unit 1: Data Provisioning using SLT
Data Replication at a Glance
Overview on Configuration Aspects
SLT based transformation concepts
Transformation of Data
SLT based transformation concepts
Selective Data Replication
Extension of (target) table structure
Specific Considerations
Objectives
Selective data replicationSelective data replication
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
• Explain the benefit of filtering
• Explain the concept of filtering within SLT
• Specify your own filtering rule
© 2012 SAP AG. All rights reserved. 52
Business Example
Selective data replication / filteringSelective data replication / filtering
Reduce Number of Records to Be Replicated by Filter
DBRFC
Reduce Number of Records to Be Replicated by Filter
ConnectionConnection
SAP HANA systemSAP LT Replication ServerSource system SAP HANA systemSAP LT Replication ServerSource system
ImplementationScenarios Implementation
• Either by trigger adjustment in source system or by
rules (event-based or parameter-based)
Scenarios
 Replicating certain data only
 Only data of specific years should be used in HANA,
for instance
© 2012 SAP AG. All rights reserved. 53
for instance
Replication of data active tables as they are in DDIC
tables DD02l, DD03l etc.
Overview
Selective data replicationSelective data replication
This module covers the following topics:This module covers the following topics:
• The concept of filtering data for replication
D il d l f diff fil i• Detailed examples of different filtering use cases
• Examples for parameter and event-based rules
© 2012 SAP AG. All rights reserved. 54
Concept - Filtering
Selective data replicationSelective data replication
Conditional filter (in SLT) by parameter-based or event-based rules
 To skip a record from load and replication macro SKIP_RECORD can be
used in the code of the include.
In fact, all data (means not filtered data) will be transferred from the source system to SAP LT
Replication Server but not forwarded to HANAReplication Server, but not forwarded to HANA
 means SLT system will read all data from the source and write only relevant data into HANA.
No database-specific knowledge needed
Valid for both initial load and replicationp
Selected delta replication (“Trigger Adjustments”)
Done by trigger adjustment directly of data base of the source system
 Will be implemented using table IUUC_SPC_PROCOPT.
For experts only
Database specificDatabase-specific
Will be implemented in source system
Decreases the total amount of data to be extracted from source system
Performance advantages because of reduction of triggered and transferred data
© 2012 SAP AG. All rights reserved. 55
Only valid for replication data; it is not working for initial load.
Example: Filtering by Company Code Selective
data replicationdata replication
Realized with a
event-based rule
RESULT: Only records where
MJAHR(Fi lY ) 1998‘MJAHR(FiscalYear ) = ‚1998‘ were
transferred to HANA:
© 2012 SAP AG. All rights reserved. 56
Example: Filtering by Fiscal Year Selective data
replicationreplication
Realized with a
t lparameter rule
RESULT: Only records where
MANDT = ‚800‘ and BUKRS = ‚3000‘
were transferred to HANA:
© 2012 SAP AG. All rights reserved. 57
Example: Filter by Event-Based Rule (1) Selective data
replicationreplication
Task: Filter and only load/replicate data with AS4LOCAL = ‘N’.
© 2012 SAP AG. All rights reserved. 58
Example: Filter by Event-Based Rule (2) Selective data
replicationreplication
For an event-based rule, “FIELDNAME” in table IUUC_ASS_RUL_MAP must be left
blank In addition you do not need to specify the import parametersblank. In addition, you do not need to specify the import parameters.
© 2012 SAP AG. All rights reserved. 59
Summary
Selective data replication / filteringSelective data replication / filtering
You should now be able to:You should now be able to:
• Explain the benefit of filtering
• Explain the concept of filtering within SLT
• Specify your own filtering rule
© 2012 SAP AG. All rights reserved. 60
Positioning and Key Concepts
Unit 1: Data Provisioning using SLT
Data Replication at a Glance
Overview on Configuration Aspects
SLT based transformation concepts
Transformation of Data
SLT based transformation concepts
Selective Data Replication
Extension of (target) table structure
Specific Considerations
Objectives
Transformation of dataTransformation of data
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
• Describe the benefit of the transformation of fields
• Explain the concept of transforming data within SLT
• Specify your own transformation rule
© 2012 SAP AG. All rights reserved. 62
Business Example
Transformation dataTransformation data
Reduce Number of Records to Be Replicated by Filterp y
DB
Connection
RFC
Connection ConnectionConnection
SAP HANA SystemLT Replication ServerSource System
Transformation
of Data
Scenarios Implementation
1. Create ABAP includes to define transformation rules
2. Maintain table IUUC_ASS_RUL_MAP
Scenarios
 To make certain fields anonymous  HR reporting
 To fill initial fields
To con ert nits or c rrenc and recalc late amo nts
© 2012 SAP AG. All rights reserved. 63
3. Start data load / replication from HANA Studio To convert units or currency and recalculate amounts
and values
Overview
Transformation of dataTransformation of data
This module covers the following topics:This module covers the following topics:
• The concept of transforming data for replication
D il d l f diff i h f i• Detailed examples of different use cases with transformation
needs
• Examples for parameter and event-based rulesp p
© 2012 SAP AG. All rights reserved. 64
Example: Make Certain Fields Anonymous (1)
Transformation of dataTransformation of data
Scenario:
 Within the example, the field ‘name’ of a table should be filled by ‘xxxx’. This could be
done by parameter rules or event-based rules.
 Since each table of a sender system can only be replicated into one target table of
HANA, two identical tables in the source system were created to show the usage of both
kind of rules
Include of parameter rules: Z_Ex_1_PAR
Incl de of e ent based r les Z E 1 EVENTInclude of event-based rules Z_Ex_1_EVENT
1.
PARTNR MATNR NAME AMOUNT CURRENCY DATE
0000000001 1000Mr. ABC 100USD 20100201
0000000001 2000Mr. ABC 200USD 20110201
0000000002 1000Mr. XYZ 100USD 20110201
PARTNR MATNR NAME AMOUNT CURRENCY DATE
0000000001 1000XXXX 100USD 20100201
0000000001 2000XXXX 200USD 20110201
0000000002 1000XXXX 100USD 20110201
SAP HANA SystemSource System
0000000002 2000Mr. XYZ 200USD 20110301
0000000002 3000Mr. XYZ 300EUR 20100301
0000000002 1000XXXX 100USD 20110201
0000000002 2000XXXX 200USD 20110301
0000000002 3000XXXX 300EUR 20100301
© 2012 SAP AG. All rights reserved. 65
SAP HANA SystemSource System
Example: Make Certain Fields Anonymous (2)
Transformation of dataTransformation of data
Define Include for Event-Based Rule
Create include by T-Code SE38
Enter program name and press Create
Popup:
Enter title
Choose type INCLUDE Program
Choose status Test Program
© 2012 SAP AG. All rights reserved. 66
Example: Make Certain Fields Anonymous (3)
Transformation dataTransformation data
Event-based rule:
© 2012 SAP AG. All rights reserved. 67
Example: Make Certain Fields Anonymous (4)
Transformation without changing table structure
(scrambling of data)
The according Parameter rule would be:
© 2012 SAP AG. All rights reserved. 68
Example: Make Certain Fields Anonymous (5)
Transformation dataTransformation data
Resulting data in HANA:
Parameter rule:
Event-based rule:
© 2012 SAP AG. All rights reserved. 69
Summary
Transformation dataTransformation data
You should now be able to:You should now be able to:
• Describe the benefit of the transformation of fields
• Explain the concept of transforming data within SLT
• Specify your own transformation rule
© 2012 SAP AG. All rights reserved. 70
Positioning and Key Concepts
Unit 1: Data Provisioning using SLT
Data Replication at a Glance
Overview on Configuration Aspects
SLT based transformation concepts
Transformation of Data
SLT based transformation concepts
Selective Data Replication
Extension of (target) table structure
Specific Considerations
Objectives
Extension of (target) table structureExtension of (target) table structure
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
• Describe the benefit of extending target table structures
• Explain the concept of extending a table
• Specify your own extended structures
© 2012 SAP AG. All rights reserved. 72
Business Example
Extension of (target) table structureExtension of (target) table structure
Extension of Table Structures within Transformation
DB
Connection
RFC
Connection
SAP HANA systemSAP LT Replication ServerSource system
Scenarios
T k t i fi ld  HR ti
Implementation
D fi t bl f t t t t To make certain fields anonymous  HR reporting
 To fill initial fields or new fields of target table
 To convert units or currency and recalculate amounts
and values
1. Define tables of target structure
2. Maintain table IUUC_REPL_TABSTG
3. Create ABAP includes to define transformation rules
4 Maintain table IUUC ASS RUL MAP
© 2012 SAP AG. All rights reserved. 73
4. Maintain table IUUC_ASS_RUL_MAP
5. Start data load / replication from HANA Studio
Overview
Extension of (target) table structureExtension of (target) table structure
This module covers the following topics:This module covers the following topics:
• The concept of extending target table structures
D il d l f diff i h i d• Detailed examples of different use cases with extension needs
• Examples for parameter and event-based rules
© 2012 SAP AG. All rights reserved. 74
Concept
Extension of (target) table structureExtension of (target) table structure
Use case:
Due to the fact that the main purpose of HANA is reporting, it could be required
that the data in HANA has to be enriched (that is, unified reporting currency)
within the transformation from sender system to HANAwithin the transformation from sender system to HANA.
Prerequisites
• Definition of table strucure to be used in HANA
 by maintaining table IUUC_REPL_TABSTG
• Definition of rules to fill up the new tables fields
 done by event-based rules or parameter rules
© 2012 SAP AG. All rights reserved. 75
Concept
Extension of (target) table structureExtension of (target) table structure
Steps to extend the table structure:
1. Create table of required structure either in sender system or in SLT system
acting as a template for HANA
M i t i t bl IUUC REPL TABSTG f th SAP LT R li ti S2. Maintain table IUUC_REPL_TABSTG of the SAP LT Replication Server:
MT_ID  same MT_ID like in IUUC_ASS_RUL_MAP
TABNAME  name of table in sender system to be replicated
TARGET TYPE  name of table with structure to be used as template for tableTARGET_TYPE  name of table with structure to be used as template for table
to be created in HANA
TARGET_TYPE_LCL  ‘X’: table of target type was created in LT-Replication Server
 ‚ ‚ : table of target type was created in sender system
TARGET NAME  name of table to be created and used for replication in HANATARGET_NAME  name of table to be created and used for replication in HANA
NO_DROP  data in HANA will not be deleted before the replication
ROW_STORE  target table in HANA will be created as row table instead of column table
RD_PORTION_SIZE  no of records per portion; empty means default value_ _ p p p y
© 2012 SAP AG. All rights reserved. 76
Example: Calculate Field of Extended Structure (1)
Extension of (target) table structure and
calculation of values
Scenario:
Within the example the field ‘AMOUNT_IN_EUR’ of the extended table should be
calculated by a fixed exchange rate from field amount
The name of table, which reflects the target type is ZIUUC_EX_2_TRGT
Both rules can be used to calculate the new amount
Include of parameter rules: Z_Ex_2_AMOUNT_IN_EUR_PAR
Include of event-based rules Z_Ex_1_AMOUNT_IN_EUR_EVENT
PARTNR MATNR NAME AMOUNT CURRENCY DATE NAME AMOUNT CURRENCY Amount_in_EUR1.PARTNR MATNR NAME AMOUNT CURRENCY DATE
0000000001 1000Mr. ABC 100USD 20100201
0000000001 2000Mr. ABC 200USD 20110201
0000000002 1000Mr. XYZ 100USD 20110201
0000000002 2000Mr. XYZ 200USD 20110301
Mr. ABC 100USD 150
Mr. ABC 200USD 300
Mr. XYZ 100USD 150
Mr. XYZ 200USD 300
SAP HANA SystemSource System
0000000002 3000Mr. XYZ 300EUR 20100301 Mr. XYZ 300EUR 300
© 2012 SAP AG. All rights reserved. 77
Example: Calculate Field of Extended Structure (2)
Extension of (target) table structureExtension of (target) table structure
Create table of target structure
Maintained table IUUC_REPL_TABSTG of LT Replication Server
© 2012 SAP AG. All rights reserved. 78
Example: Calculate Field of Extended Structure (3)
Extension of (target) table structureExtension of (target) table structure
Event-based rule:
© 2012 SAP AG. All rights reserved. 79
Example: Calculate Field of Extended Structure (4)
Extension of (target) table structureExtension of (target) table structure
Parameter rule
© 2012 SAP AG. All rights reserved. 80
Example: Calculate Field of Extended Structure (5)
Extension of (target) table structureExtension of (target) table structure
Resulting data in HANA:
Parameter rule:
Table ZIUUC_EX_2_PMOD
Event-based rule:
T bl ZIUUC EX 2 EMODTable ZIUUC_EX_2_EMOD
© 2012 SAP AG. All rights reserved. 81
Summary
Extension of (target) table structureExtension of (target) table structure
You should now be able to:You should now be able to:
• Describe the benefit of extending target table structures
• Explain the concept of extending a table
• Specify your own extended structures
© 2012 SAP AG. All rights reserved. 82
Positioning and Key Concepts
Unit 1: Data Provisioning using SLT
Data Replication at a Glance
Overview on Configuration Aspects
SLT based transformation concepts
Transformation of Data
SLT based transformation concepts
Selective Data Replication
Extension of (target) table structure
Specific Considerations
Transformation Rules for Cluster Tables
Specific considerationsSpecific considerations
Apply SAP note 1662438 at first.
After implementing the note, you should follow the steps
(table BSEG as an example):( p )
1. For initial load, you should create one entry in IUUC_ASS_RUL_MAP for
BSEG and include program for BSEG table
2. For replication, you should create an addition entry in IUUC_ASS_RUL_MAP
for RFBLG and include program for RFBLG table
© 2012 SAP AG. All rights reserved. 84
Date Field Format - Changes
Specific considerationsSpecific considerations
Table Setting : IUUC_ASS_RUL_MAP
Include : ZIUUC_ZGRPA_THOC
Records in source table Replicated records in HANA table
© 2012 SAP AG. All rights reserved. 85
A di
– Client Specific vs. Cross Client Load / Replication
Appendix
– Type mapping from source system to HANA system
– Mapping multiple sources into one target HANA DB schemapp g p g
Cli t S ifiClient Specific vs.
Cross Client Load / ReplicationCross Client Load / Replication
Objectives
Client Specific vs Cross Client Load / ReplicationClient Specific vs. Cross Client Load / Replication
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
• Specify client specific or cross client load or replication for
your business modelyour business model
© 2012 SAP AG. All rights reserved. 88
Overview
Client Specific vs Cross Client Load / ReplicationClient Specific vs. Cross Client Load / Replication
This module covers the following topics:This module covers the following topics:
• The client specific load / replication procedure
Th li t l d / li ti d• The cross client load / replication procedure
• The advantage of client specific load
© 2012 SAP AG. All rights reserved. 89
Concept
Client Specific vs Cross Client Load / Replication
Per default, the SAP LT Replication Server loads
and replicates all data of the defined tables
Client Specific vs. Cross Client Load / Replication
and replicates all data of the defined tables.
Client specific tables are also loaded and replicated
completely and not restricted to a certain client.
Data load can be restricted by define some filter
rules (described in the following slides) or by
activating the client specific load and replication.
Advantages of client specific load
• Trigger is restricted automatically to the relevant
client
• Data load can be restricted to a smaller amount of
data without manual defining filter rules
• If the first key field after the client field is selective
enough to be used in an access plan calculationenough to be used in an access plan calculation,
reading type 1 can be used without adding an
additional index.
© 2012 SAP AG. All rights reserved. 90
U it 2Unit 2:
Approaching SAP HANA ModelingApproaching SAP HANA Modeling
Objectives
Approaching SAP HANA ModelingApproaching SAP HANA Modeling
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
 Take into account Persistency Considerations
 Explain the different engine types in thep g yp
SAP HANA Architecture
 To choose the best views for the Information Model
 To discuss some General Recommendations
© 2012 SAP AG. All rights reserved. 92
Overview
Approaching SAP HANA ModelingApproaching SAP HANA Modeling
This module covers the following topics:This module covers the following topics:
 Persistency Considerations
 SAP HANA Engine Overviewg
 Choosing Views for the Information Model
© 2012 SAP AG. All rights reserved. 93
Persistency Considerations I
Approaching SAP HANA ModelingApproaching SAP HANA Modeling
Before start creating tables on HANA database you should take a little time toBefore start creating tables on HANA database, you should take a little time to
think about your scenarios. Different scenarios have different requirements and
for that also different persistency models. Here is a small checklist you should
take into consideration:
© 2012 SAP AG. All rights reserved. 94
take into consideration:
Persistency Considerations II
Approaching SAP HANA ModelingApproaching SAP HANA Modeling
1: Column Table 2: Analytical View 3: Calculation
View (SQL)
4: Calculation View
(CE Functions)View (SQL) (CE Functions)
U
Good for quick
start with HANA.
Shall be used for
i l li ti
Most recommended
for analytical
purpose, where read
ti
Good for quick
build of scenarios
with complex
l l ti Th
Recommended for
analytical purpose using
complex calculation,
hi h t bUsage simple applications
and showcases.
operations on mass
data is required.
calculations. The
model is usually
simple and
contains only a few
fields.
which can not be
expressed in an analytic
view.
Pros
No additional
modeling required.
For most clients
easy to consume.
Very high performance
on SELECT.
Supported by
modeling. Well
optimized
Building calculation
views via SQL
syntax is easy.
Client queries can be well
optimized and parallelized.
Usually better performance
results than SQL.
optimized.
No support for
analytical privileges,
multi language and
Limitations in regards
to functions.
Client queries can
be less optimized
and could
Syntax is different
compared to well-known
SQL Language
Cons
multi language and
client handling.
Complex calculation
and logic shifted to
client side. In
general low
and could
significantly be
slower compared to
other models.
SQL Language.
© 2012 SAP AG. All rights reserved. 95
general low
performance.
SAP HANA Engine Overview I
Approaching SAP HANA ModelingApproaching SAP HANA Modeling
SQL OptimizerSQL Optimizer
Calculation EngineCalculation Engine
OLAP
Engine
OLAP
Engine
Join
Engine
Join
Engine Row Store EngineRow Store Engine
Column StoreColumn Store Row StoreRow Store
© 2012 SAP AG. All rights reserved. 96
SAP HANA Engine Overview II
Approaching SAP HANA ModelingApproaching SAP HANA Modeling
Calculation
ViewsViews
OLAPOLAP J iJ i
Calculation EngineCalculation Engine
A l ti Att ib tOLAP
Engine
OLAP
Engine
Join
Engine
Join
Engine
Analytic
Views
Attribute
Views
© 2012 SAP AG. All rights reserved. 97
General Recommendations
Approaching SAP HANA ModelingApproaching SAP HANA Modeling
1. Avoid transfer of large result sets
Client ApplicationClient Application A G Y Z
between the SAP HANA DB and
client (e.g. by HAVING, TOP,
LIMIT, …)
2 Do calculation after aggregation
1
2
3
Calculation EngineCalculation Engine
A G Y
2. Do calculation after aggregation
3. Avoid complex expressions
(IF, CASES…)
4 Reduce data transfer between the
4
5
OLAP
E i
OLAP
E i
Join
E i
Join
E i
A B C D G Y
4. Reduce data transfer between the
engines
5. Do aggregate data records
(e.g. using GROUP BY, reducing
5
6 7EngineEngine EngineEnginecolumns)
6. Join on Key Columns
7. Avoid calculation before
6 7
Column
Store
Column
Store
Row
Store
Row
Store
A B C D D Gaggregation on line item level
8. Filter data amounts as early as
possible in the lower layers
(CONSTRAINTS
8
8
© 2012 SAP AG. All rights reserved. 98
(CONSTRAINTS,
WHERE clause…)
8
Choosing Views for the Information Model
Approaching SAP HANA ModelingApproaching SAP HANA Modeling
Analyze Data inAnalyze Data in
HANA DB
Use Star-Use Sta
schema or
Aggregation?
Use
Only Joins and
Calculated
Yes
No
NoAnalytic View Expressions?
Try Graphical
Calculation
View
Use
Attribute View
Yes
No
OK
Not enough
View
Use
CalcScenario or
Scripted
CalcView with
CE F ti
Use
Graphical
Calculation View
OK
OK
Not enough
CE-Functions
Use
CalcScenario or
using CE-Functions
Use
Scripted
Calculation View or
Procedures
© 2012 SAP AG. All rights reserved. 99
Procedures
Summary
Approaching SAP HANA ModelingApproaching SAP HANA Modeling
You should now be able to:You should now be able to:
 Take into account Persistency Considerations
 Explain the different engine types in thep g yp
SAP HANA Architecture
 To choose the best views for the Information Model
 To discuss some General Recommendations
© 2012 SAP AG. All rights reserved. 100
U it 3Unit 3:
Connecting TablesConnecting Tables
Objectives
Connecting TablesConnecting Tables
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
• Explain differences between Inner Join, Left Outer Join,
Right Outer Join, Full Outer Join, Text Join and
referential Join when connecting tables.
• Explain how using Standard Union and Union with
constant values.constant values.
© 2012 SAP AG. All rights reserved. 102
Business Example
Connecting TablesConnecting Tables
Sales Order Customer
State
We want to connect the Sales Order
table to the Customer table linked to
the State table.the State table.
© 2012 SAP AG. All rights reserved. 103
Overview
Connecting TablesConnecting Tables
This module covers the following topics:This module covers the following topics:
How to connect tables using
• Inner Join• Inner Join
• Left Outer Join
• Right Outer Joing
• Full Outer Join
• Text Join
• Referential Join
• Union
© 2012 SAP AG. All rights reserved. 104
Inner Join – Attribute View
Connecting Tables
Inner Join returns rows when there is at least one match in both sides of the join.
Connecting Tables
Inner is used even if it’s not added.
STATE SNAME
AL ALABAMA
1 WERNER 10 MI MI MICHIGAN
2 MARK 11 MI
3 TOM 12 TX
4 BOB 13 TX
C_ID CNAME AGE STATE
Attribute View
Customer (3 & 4) is not
returned due to no
corresponding entry (TX) in the
t t t bl

state table.
© 2012 SAP AG. All rights reserved. 105
Inner Join – Analytical View
Connecting TablesConnecting Tables
Analytical ViewAnalytical View
AMOUNT ORDER_ID C_ID
100 4 4
100 8 77 STATE SNAME
100 1 1 AL ALABAMA
Be aware that Inner Joins
lose facts with fragmented

100 1 1 AL ALABAMA
100 2 1 1 WERNER 10 MI MI MICHIGAN
100 3 2 2 MARK 11 MI
3 TOM 12 TX
4 BOB 13 TX
dimensions.
Order (4 & 77) lost due to no
corresponding customer and
state record
© 2012 SAP AG. All rights reserved. 106
4 BOB 13 TX
C_ID CNAME AGE STATE
state record
Inner Join and Design Time Filters
Connecting TablesConnecting Tables
Design time filter applied (AGE < 13)
of left/central table
Design time filter applied to (STATE = MI)
on right table
Both design time filters are applied first
before the join is executedbefore the join is executed
© 2012 SAP AG. All rights reserved. 107
Left Outer Join – Attribute View
Connecting Tables
Attribute View
Connecting Tables
• Left Outer Join returns all rows from the left
table even if there are no matches in the right Attribute Viewtable even if there are no matches in the right
table.
• This join is popular in Analytical Views whereby
h A ib i i j i d h f blthe Attribute view is joined to the fact table.
STATE SNAME
AL ALABAMA
1 WERNER 10 MI MI MICHIGAN
2 MARK 11 MI2 MARK 11 MI
3 TOM 12 TX
4 BOB 13 TX
C_ID CNAME AGE STATE


© 2012 SAP AG. All rights reserved. 108
No matches for TX in the right table.
Left Outer Join – Analytical View
Connecting TablesConnecting Tables
Analytical ViewAnalytical View
AMOUNT ORDER_ID C_ID STATE SNAME
100 1 1 C ID CNAME AGE STATE AL ALABAMA
Customer (TOM) is
100 1 1 C_ID CNAME AGE STATE AL ALABAMA
100 2 1 1 WERNER 10 MI MI MICHIGAN
100 3 2 2 MARK 11 MI
3 TOM 12 TX
100 4 4 4 BOB 13 TX
not returned due to no
corresponding sale item
record in sales order
table

© 2012 SAP AG. All rights reserved. 109
100 4 4 4 BOB 13 TX
100 8 77
table.
Left Outer Join and Design Time Filters
Connecting TablesConnecting Tables
Design time filter applied (AGE < 13)
of left/central table
Design time filter applied to (STATE = MI)
on right table
Filters are applied to both tables and thenFilters are applied to both tables and then
afterwards the join is executed.
Due to the left outer join TOM will be included in
the result set even though he resides in TX
© 2012 SAP AG. All rights reserved. 110
g
Right Outer Join – Attribute View
Connecting TablesConnecting Tables
• Right Outer Join returns all the rows from the
right table even if there are no matches in the Attribute Viewright table, even if there are no matches in the
left table.
Attribute View

STATE SNAME
AL ALABAMA
1 WERNER 10 MI MI MICHIGAN
Alabama is included in the result set,
though there is no match in the left table.

2 MARK 11 MI
3 TOM 12 TX
4 BOB 13 TX
C_ID CNAME AGE STATE
© 2012 SAP AG. All rights reserved. 111
Right Outer Join – Analytical View
Connecting TablesConnecting Tables
Analytical ViewAnalytical View
AMOUNT ORDER_ID C_ID
100 4 4
100 8 77 STATE SNAME
? ? ? ? ? ? AL ALABAMA
Right Outer Join
results in NULL measure.

? ? ? ? ? ? AL ALABAMA
100 1 1
100 2 1 1 WERNER 10 MI MI MICHIGAN
100 3 2 2 MARK 11 MI
3 TOM 12 TX

© 2012 SAP AG. All rights reserved. 112
3 TOM 12 TX
4 BOB 13 TX
C_ID CNAME AGE STATE
Full Outer Join
Connecting TablesConnecting Tables
• Full Outer Join is neither left nor right
it's both It includes all the rows- it's both. It includes all the rows
from both of the tables or result sets
participating in the Join.
• When no matching rows exist for
rows on the left side or right side of
the Join, you see NULL values.
• Full Outer Join is supported only in
Attribute Views and NOT within
Analytical Views.
STATE SNAME
? ? ? ? AL ALABAMA? ? ? ? AL ALABAMA
1 WERNER 10 MI MI MICHIGAN
2 MARK 11 MI MI MICHIGAN
3 TOM 12 TX ? ?
4 BOB 13 TX ? ?
© 2012 SAP AG. All rights reserved. 113
4 BOB 13 TX ? ?
C_ID CNAME AGE STATE
Text Join
Connecting Tables
• Text Join are used to join a text
table to a master data table
Connecting Tables
table to a master data table.
• Text Joins acts as a Left Outer join
and can be used with SAP tables
where the language column
(SPRAS) is present.
• For each attribute it is possible toFor each attribute it is possible to
define a description mapping that
will be specific to the end users
language.
© 2012 SAP AG. All rights reserved. 114
Referential Join
Connecting TablesConnecting Tables
Relies on Referential Integrity Each entry in the left table MUST have
di t i th i ht t bla corresponding entry in the right table
Optimized for performance Join is only performed if at least one
field from the right table is requested.
Like an Inner Join when join is
executed
When field from both tables are
requested an inner Join is performed.
Only available in OLAP engine Referential join is a feature available
only in OLAP engine, when testing
Attribute Views outside the context of a
Analytical view then the Join EngineAnalytical view then the Join Engine
will perform a Inner Join.
© 2012 SAP AG. All rights reserved. 115
Referential Join – Attribute View
Connecting TablesConnecting Tables
*** Referential join is a feature available only in OLAP engine, when testing Attribute Views
outside the context of a Analytical view then the Join Engine will perform a Inner Join. As a
result TOM and BOM will not be returned.
© 2012 SAP AG. All rights reserved. 116
Referential Join – Analytical View
Connecting TablesConnecting Tables
*** Customer 77, TOM and BOB are not returned since C_ID is a Joined key field
resulting in an Inner Join. BOB has no corresponding Texas description and TOM has no
corresponding facts.
*** TOM is not returned due to no
corresponding facts in the sales tablecorresponding facts in the sales table
*** The Amount includes all facts including Customer 77 and BOBs
order even through master records do not exist reason is when
only non-key fields are selected from the left table, all joins to other
tables will be omitted
© 2012 SAP AG. All rights reserved. 117
tables will be omitted
Referential Join – Using MDX
Connecting TablesConnecting Tables
Like Inner Join
No referential integrity
of data in both tables
No Join processed
© 2012 SAP AG. All rights reserved. 118
p
Calculation View- Join vs. Union
Connecting TablesConnecting Tables
Caution!! Do not JOIN Analytical Views, this could lead to performance
i li ti I t d U i ith t t l h ki ithimplications. Instead use Union with constant values when working with
multiple fact tables
© 2012 SAP AG. All rights reserved. 119
Unions
Connecting TablesConnecting Tables
• Unions are used to combine the result-set of two or more SELECT statements.
• The Union operation is popular for combining plan and actual values in CO-PA.
• Note that Unions are not supported in modeled artifacts (Attribute Views or Analytical Views)
d l b li d i C l l ti Viand can only be realized in Calculation Views.
• Refrain from Joining Analytical views; rather use Unions with Constant values.
• Unions with Constant values are supported within Graphical Calculation Views and the
UNION operator can accept 1..N input sources.
• Whereas a Script Based calculation view’s comparable CE UNION ALL function can onlyWhereas a Script Based calculation view s comparable CE_UNION_ALL function can only
accept 2 input sources at a given time.
© 2012 SAP AG. All rights reserved. 120
Standard Union
Connecting TablesConnecting Tables
© 2012 SAP AG. All rights reserved. 121
Union with Constant Values
Connecting TablesConnecting Tables
© 2012 SAP AG. All rights reserved. 122
Summary
Connecting TablesConnecting Tables
You should now be able to:You should now be able to:
• Explain differences between Inner Join, Left Outer Join,
Right Outer Join, Full Outer Join, Text Join and referential
Join when connecting tables.
• Explain how using Standard Union and Union with
constant valuesconstant values.
© 2012 SAP AG. All rights reserved. 123
Creating Attribute Views
Unit 4: Advanced Modeling
Creating Restricted & Calculated Measures
Using Hierarchies
Using Filter Operations
SAP HANA SQL - Introduction
Using Filter Operations
Using Variables
SQLScript and Procedures
Using Currency Conversion
Objectives
Creating Attribute ViewsCreating Attribute Views
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
 Explain how to create derived attribute views,
 Explain how to create shared attribute views,p ,
 Explain how to create calculated attributes,
 Explain how to create time characteristics based attribute views,
 Explain how to create stand alone text tables.Explain how to create stand alone text tables.
© 2012 SAP AG. All rights reserved. 125125
Overview
Creating Attribute ViewsCreating Attribute Views
This module covers the following topics:This module covers the following topics:
 Derived Attribute Views,
 Shared Attribute Views
 Calculated Attributes
 Time Characteristics Based Attribute Views
 Stand Alone Text TablesStand Alone Text Tables
© 2012 SAP AG. All rights reserved. 126126
Concept Attribute views
Creating Attribute ViewsCreating Attribute Views
Calculation
Views
Calculation EngineCalculation Engine
OLAPOLAP JoinJoin
Calculation EngineCalculation Engine
Analytic Attribute
EngineEngine EngineEngine
a y c
Views
Attribute
Views
© 2012 SAP AG. All rights reserved. 127127
Derived Attribute Views
Creating Attribute ViewsCreating Attribute Views
© 2012 SAP AG. All rights reserved. 128© 2012 SAP AG. All rights reserved. 128
Shared Attribute Views
Creating Attribute ViewsCreating Attribute Views
© 2012 SAP AG. All rights reserved. 129© 2012 SAP AG. All rights reserved. 129
Calculated Attributes
Creating Attribute ViewsCreating Attribute Views
© 2012 SAP AG. All rights reserved. 130© 2012 SAP AG. All rights reserved. 130
Time Characteristics Attribute View
Creating Attribute ViewsCreating Attribute Views
© 2012 SAP AG. All rights reserved. 131© 2012 SAP AG. All rights reserved. 131
Creating Stand Alone Text Tables
Creating Attribute ViewsCreating Attribute Views
© 2012 SAP AG. All rights reserved. 132© 2012 SAP AG. All rights reserved. 132
Summary
Creating Attribute ViewsCreating Attribute Views
You should now be able to:You should now be able to:
 Explain how to create derived attribute views,
 Explain how to create shared attribute views,p ,
 Explain how to create calculated attributes,
 Explain how to create time characteristics based attribute views,
 Explain how to create stand alone text tables.Explain how to create stand alone text tables.
© 2012 SAP AG. All rights reserved. 133133
Creating Attribute Views
Unit 4: Advanced Modeling
Creating Restricted & Calculated Measures
Using Hierarchies
Using Filter Operations
SAP HANA SQL - Introduction
Using Filter Operations
Using Variables
SQLScript and Procedures
Using Currency Conversion
Objectives
Using HierarchiesUsing Hierarchies
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
 Explain how to implement leveled hierarchies,
 Explain how to leverage parent / child hierarchies,Explain how to leverage parent / child hierarchies,
 Explain how to create attribute based hierarchies.
© 2012 SAP AG. All rights reserved. 135135
Overview
Using HierarchiesUsing Hierarchies
This module covers the following topics:This module covers the following topics:
 Implement Leveled Hierarchies
 Leverage Parent Child HierarchiesLeverage Parent Child Hierarchies
 Create Attribute Based Hierarchies
© 2012 SAP AG. All rights reserved. 136136
Concept Using Hierarchies
Using HierarchiesUsing Hierarchies
For example, consider the TIME attribute view with YEAR, QUARTER, and
Hierarchies in HANA could only
p , , ,
MONTH attributes. You can use these YEAR, QUARTER, and MONTH attributes
to define a hierarchy for the TIME attribute view as follows:
Hierarchies in HANA could only
be used by reporting tools using
MDX connectivity
© 2012 SAP AG. All rights reserved. 137137
Using Hierarchies
Using HierarchiesUsing Hierarchies
Let's have a look at the following hierarchy, a minimal example :
Hierarchies in HANA could only
g y p
Hierarchies in HANA could only
be used by reporting tools using
MDX connectivity
© 2012 SAP AG. All rights reserved. 138138
Implement Leveled Hierarchies
Using HierarchiesUsing Hierarchies
Level Hierarchies are hierarchies that are rigid in nature, where the root and theg ,
child nodes can be accessed only in the defined order. For example,
organizational structures, and so on.
This page describes step-by-step
how to create a SAP HANA
Database hierarchy view byDatabase hierarchy view by
means of the SAP Hana Modeler.
Create a table providing somep g
hierarchy source data :
© 2012 SAP AG. All rights reserved. 139© 2012 SAP AG. All rights reserved. 139
Implement Leveled Hierarchies
Using HierarchiesUsing Hierarchies
If necessary, create ay,
package in the Modeler.
Create an attribute view
in the Modeler :
© 2012 SAP AG. All rights reserved. 140© 2012 SAP AG. All rights reserved. 140
Implement Leveled Hierarchies
Using HierarchiesUsing Hierarchies
Select the source table
as basis for the view :
© 2012 SAP AG. All rights reserved. 141© 2012 SAP AG. All rights reserved. 141
Implement Leveled Hierarchies
Using HierarchiesUsing Hierarchies
Select the attributes
that should be part of
the source view :
© 2012 SAP AG. All rights reserved. 142© 2012 SAP AG. All rights reserved. 142
Implement Leveled Hierarchies
Using HierarchiesUsing Hierarchies
Switch to the
Hierarchies tab, press
the Create button and
define hierarchy name
and structure type,
currently leveled :
© 2012 SAP AG. All rights reserved. 143© 2012 SAP AG. All rights reserved. 143
Implement Leveled Hierarchies
Using HierarchiesUsing Hierarchies
Add the source
attributes to the
hierarchy. For a leveled
hierarchy, add the
attributes to the
hierarchy in the correct
level order from top to
bottom :
© 2012 SAP AG. All rights reserved. 144© 2012 SAP AG. All rights reserved. 144
Implement Leveled Hierarchies
Using HierarchiesUsing Hierarchies
Validate the hierarchy,y,
close, and save. And
then activate the
attribute view :
© 2012 SAP AG. All rights reserved. 145© 2012 SAP AG. All rights reserved. 145
Leverage Parent Child Hierarchies
Using HierarchiesUsing Hierarchies
Value hierarchies are hierarchies
that are very similar to BOM
(parent and child) and Employee
Master(Employee and Manager).
The hierarchy can be explored
based on a selected parent, and
there are cases where the child
can be a parent. This hierarchy is
derived based on the value.
If you want to create a parent-
child hierarchy, set the
child/successor attribute's
property "Principal Key" to True :
© 2012 SAP AG. All rights reserved. 146© 2012 SAP AG. All rights reserved. 146
Leverage Parent Child Hierarchies
Using HierarchiesUsing Hierarchies
Switch to the
Hierarchies tab, press
the Create button and
define hierarchy name
and structure type,
currently parent-child :
© 2012 SAP AG. All rights reserved. 147© 2012 SAP AG. All rights reserved. 147
Leverage Parent Child Hierarchies
Using HierarchiesUsing Hierarchies
For a parent-childp
hierarchy, select the
child/successor
attribute as Key
Attribute and the
parent/predecessor
attribute as Parent
attribute :
Then, validate, close,
d ti t thsave and activate the
attribute view.
© 2012 SAP AG. All rights reserved. 148© 2012 SAP AG. All rights reserved. 148
Create Attribute Based Hierarchies
Using HierarchiesUsing Hierarchies
© 2012 SAP AG. All rights reserved. 149© 2012 SAP AG. All rights reserved. 149
Create Attribute Based Hierarchies
Using HierarchiesUsing Hierarchies
© 2012 SAP AG. All rights reserved. 150© 2012 SAP AG. All rights reserved. 150
Summary
Using HierarchiesUsing Hierarchies
You should now be able to:You should now be able to:
 Explain how to implement leveled hierarchies,
 Explain how to leverage parent / child hierarchies,Explain how to leverage parent / child hierarchies,
 Explain how to create attribute based hierarchies.
© 2012 SAP AG. All rights reserved. 151151
Creating Attribute Views
Unit 4: Advanced Modeling
Creating Restricted & Calculated Measures
Using Hierarchies
Using Filter Operations
SAP HANA SQL - Introduction
Using Filter Operations
Using Variables
SQLScript and Procedures
Using Currency Conversion
Objectives
Creating Restricted & Calculated MeasuresCreating Restricted & Calculated Measures
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
 Understand the benefits of Restricted Measures
 Use Restricted Measures
 Understand when to use Calculated Measures
 Create Calculated Measures
© 2012 SAP AG. All rights reserved. 153153
Overview
Using Filter OperationsUsing Filter Operations
This module covers the following topics:This module covers the following topics:
 Concepts for Restricted & Calculated Measures
 Using Restricted MeasuresUsing Restricted Measures
 Creating Calculated Measures
© 2012 SAP AG. All rights reserved. 154154
The benefits of Restricted Measures
Creating Restricted & Calculated Measures
What is a Restricted Measure?
Creating Restricted & Calculated Measures
C t M th A t
• As the name implies it is a
measure that does not give the
complete picture of a measure, it
Country Month Amount
DE 2010‐01 12.345,00   
DE 2010‐02 15.678,00   
DE 2010‐03 25.814,00   
DE 2010‐04 21.586,00   
DE 2010‐05 21 861 00
Restricted by Country:
p p ,
is restricted to a subset of the
original measure.
• The benefit of a Restricted
DE 2010 05 21.861,00   
DE 2010‐06 11.258,00   
DE 2010‐07 12.387,00   
DE 2010‐08 13.589,00   
DE 2010‐09 12.345,00   
DE 2010‐10 15.678,00   
DE US Difference
209.941,00    205.838,00    4.103,00   
• The benefit of a Restricted
Measure is, that it expands the
modeling options in a view, giving
the modeler the possibilities of
DE 2010‐11 25.814,00   
DE 2010‐12 21.586,00   
US 2010‐01 21.861,00   
US 2010‐02 11.258,00   
US 2010‐03 12.387,00   
Country Q1 Q2
DE 53.837,00    54.705,00   
US 45.506,00 41.612,00
Restricted by Months:
creating objects that can be easily
reported on or reused.
US 2010‐04 13.589,00   
US 2010‐05 12.345,00   
US 2010‐06 15.678,00   
US 2010‐07 25.814,00   
US 2010‐08 21.586,00   
US 2010 09 21 861 00
US 45.506,00    41.612,00   
US 2010‐09 21.861,00   
US 2010‐10 11.258,00   
US 2010‐11 12.387,00   
US 2010‐12 25.814,00   
© 2012 SAP AG. All rights reserved. 155155
Using Restricted Measures
Creating Restricted & Calculated Measures
Picture the example in the right table.
Creating Restricted & Calculated Measures
Cost Type Amountp g
You have a transactional table with
cost data items, with each cost type
split on a different line.
Cost Type Amount
Purchasing Price € 1 200
If you want to find out the shipping
cost you could create an Analytic View
Shipping Cost € 80
VAT € 346
with Cost Type as an Attribute, and
Amount as a Measure.
Y ld th t i t t b
Processing Cost € 150
You could then restrict your report by
reporting on Cost Type, setting the
Attribute filtered on Cost Type =
“Shipping Cost”
Margin € 300
“Shipping Cost”.
© 2012 SAP AG. All rights reserved. 156© 2012 SAP AG. All rights reserved. 156156
Using Restricted Measures
Creating Restricted & Calculated Measures
In order to utilize a Restricted Measure, you can instead create one which
Creating Restricted & Calculated Measures
, y
already limits the results to Shipping Costs only within the measure itself.
© 2012 SAP AG. All rights reserved. 157© 2012 SAP AG. All rights reserved. 157
Using Restricted Measures
Creating Restricted & Calculated Measures
The Attribute you filter the Restricted
Creating Restricted & Calculated Measures
y
Measure does not have be limited to
one single Attribute.
You can set it restricted to multiple
attributes depending on your reporting
requirements.
There are also multiple operators to
choose from.
© 2012 SAP AG. All rights reserved. 158© 2012 SAP AG. All rights reserved. 158
Using Restricted Measures
Creating Restricted & Calculated Measures
Further, the Restricted Measure does not
Creating Restricted & Calculated Measures
have to be a straight sum of the Measure
that it is based on.
The Aggregation Types that you have
available are:
 SUM SUM
 MIN
 MAX
© 2012 SAP AG. All rights reserved. 159© 2012 SAP AG. All rights reserved. 159
When to use Calculated Measures
Creating Restricted & Calculated MeasuresCreating Restricted & Calculated Measures
 In a data model sometimes not all
Measures available in the base data will
give your users sufficient information for
reporting if you just provide the basereporting if you just provide the base
Measures in your views.
 SAP HANA has a type of Measure
available called Calculation Measures
where the modeler is able to include
calculations already within the view in
order to help reporting or furtherorder to help reporting or further
modeling.
© 2012 SAP AG. All rights reserved. 160160
When to use Calculated Measures
Creating Restricted & Calculated Measures
Cli t A li tiCli t A li ti
Creating Restricted & Calculated Measures
 When you include calculations in
Client ApplicationClient Application A G Y Z
your views using Calculated
Measures you take advantage of
the speed of SAP HANA letting the
database engine perform the
Calculation EngineCalculation Engine
Do calculation
after aggregation
database engine perform the
calculations, instead of doing
these calculations in your end
client reporting tool.
OLAP
Engine
OLAP
Engine
Join
Engine
Join
Engine
A B C D G Y
 Having ready defined calculations
in views can also help simplifying
reporting by unifying calculations EngineEngine EngineEnginep g y y g
having them calculated in the
same way for all users instead of
having users or developers create
their own versions of the Avoid calculation
Column
Store
Column
Store
Row
Store
Row
Store
their own versions of the
calculations.
Avoid calculation
before aggregation
on line item level
© 2012 SAP AG. All rights reserved. 161161
Creating Calculated Measures
Creating Restricted & Calculated MeasuresCreating Restricted & Calculated Measures
A Calculated Measure is defined in the view and when you create one you can
use the calculations, mathematical functions etc. available in the editor.
© 2012 SAP AG. All rights reserved. 162© 2012 SAP AG. All rights reserved. 162
,
Creating Calculated Measures
Creating Restricted & Calculated MeasuresCreating Restricted & Calculated Measures
Product Units Price
Total Sales
(Units * Price)
Keyboards 100 € 40 € 4 000Keyboards 100 € 40 € 4 000
LCD Screens 50 € 300 € 15 000
Network Switches 75 € 90 € 6 750
VOIP Telephones 200 € 65 € 13 000
Servers 30 € 2 000 € 60 000
SUM: 455 € 2 495 € 1 135 225
For certain measure it is not possible to perform the calculations when the
measures are already aggregated. The aggregated granularity of for example
Price does not mean anything
© 2012 SAP AG. All rights reserved. 163© 2012 SAP AG. All rights reserved. 163
Price does not mean anything.
Creating Calculated Measures
Creating Restricted & Calculated MeasuresCreating Restricted & Calculated Measures
For these types of
Measures you can
predefine the
Calculated Measure
to calculate each
individual item before
aggregating.
This is done by
l ti th tiselecting the option
“Calculate Before
Aggregation”.
© 2012 SAP AG. All rights reserved. 164© 2012 SAP AG. All rights reserved. 164
Creating Calculated Measures
Creating Restricted & Calculated MeasuresCreating Restricted & Calculated Measures
This way you can be sure
Product Units Price
Total Sales
(Units * Price)
This way you can be sure
that you end up with a
correct sum as the
calculation are performed
Keyboards 100 € 40 € 4 000
LCD S 50 € 300 € 15 000 calculation are performed
on the correct granular
level.
LCD Screens 50 € 300 € 15 000
Network Switches 75 € 90 € 6 750
VOIP Telephones 200 € 65 € 13 000
Servers 30 € 2 000 € 60 000
SUM: € 98 750
© 2012 SAP AG. All rights reserved. 165© 2012 SAP AG. All rights reserved. 165
Objectives
Using currency ConversionUsing currency Conversion
You should now be able to:You should now be able to:
 Understand the benefits of Restricted Measures
 Use Restricted Measures
 Understand when to use Calculated Measures
 Create Calculated Measures
© 2012 SAP AG. All rights reserved. 166166
Creating Attribute Views
Unit 4: Advanced Modeling
Creating Restricted & Calculated Measures
Using Hierarchies
Using Filter Operations
SAP HANA SQL - Introduction
Using Filter Operations
Using Variables
SQLScript and Procedures
Using Currency Conversion
Objectives
Using Filter OperationsUsing Filter Operations
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
 Explain how to compare constraint filter and WHERE clause,
 Explain how to create client dependant views,p p ,
 Explain how to model domain fix values.
© 2012 SAP AG. All rights reserved. 168
Overview
Using Filter OperationsUsing Filter Operations
This module covers the following topics:This module covers the following topics:
 Compare constraint filter and WHERE clause,
 Create client dependant views,p ,
 Model domain fix values.
© 2012 SAP AG. All rights reserved. 169169
Filter Operations
Using Filter OperationsUsing Filter Operations
Client ApplicationClient Application
Calculation EngineCalculation Engine
Reduce data transfer between
the engines by using Filter
O ti lik
OLAP
E i
OLAP
E i
Join
E i
Join
E i
Operations like :
 Using a Constraint or WHERE
clause
C ti Cli t D d t ViEngineEngine EngineEngine  Creating Client Dependant Views
 Using Model Domain Fix Values
Column
Store
Column
Store
Row
Store
Row
Store
© 2012 SAP AG. All rights reserved. 170170
Compare Constraint Filter & WHERE Clause
Using Filter OperationsUsing Filter Operations
Constraint filter :
• Is defined on design time on a
tabletable,
• The filter applies on the table
before the query starts to
WHERE clause :
• Is defined on runtime in the
execute,
• Normally faster than WHERE
clause as the results set is
• Is defined on runtime in the
SQL query,
• The filters applies on the
f
Vs
clause, as the results set is
reduced before proceeding
with the query execution plan,
e.g. constraints applied before
results set of a query.
e.g. constraints applied before
a table join is executed.
© 2012 SAP AG. All rights reserved. 171171
Create Client Dependant Views
Using Filter OperationsUsing Filter Operations
Define « Default Client » as
« dynamic » in properties of your
views (Attribute Views and Analytic
Views)
Define the value of the « Session
Client » in the definition of the UserClient » in the definition of the User
ID. The variable constraint is
substituted at runtime by the client
that is set for the current user
© 2012 SAP AG. All rights reserved. 172© 2012 SAP AG. All rights reserved.
running a query on the model:
172
Model Fix Values
Using Filter OperationsUsing Filter Operations
© 2012 SAP AG. All rights reserved. 173© 2012 SAP AG. All rights reserved. 173
Model Fix Values
Using Filter OperationsUsing Filter Operations
© 2012 SAP AG. All rights reserved. 174© 2012 SAP AG. All rights reserved. 174
Summary
Using Filter OperationsUsing Filter Operations
You should now be able to:You should now be able to:
 Explain how to compare constraint filter and WHERE clause,
 Explain how to create client dependant views,p p ,
 Explain how to model domain fix values.
© 2012 SAP AG. All rights reserved. 175175
Creating Attribute Views
Unit 4: Advanced Modeling
Creating Restricted & Calculated Measures
Using Hierarchies
Using Filter Operations
SAP HANA SQL - Introduction
Using Filter Operations
Using Variables
SQLScript and Procedures
Using Currency Conversion
Objectives
Creating VariablesCreating Variables
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
• Explain SAP HANA Variables
• Create Variables• Create Variables
© 2012 SAP AG. All rights reserved. 177
Overview
Creating VariablesCreating Variables
This module covers the following topics:This module covers the following topics:
• Creating Attribute Value Variables
• Creating Static Value Lists• Creating Static Value Lists
• Creating Variables with Formulas
• Creating Date Variables
© 2012 SAP AG. All rights reserved. 178178
SAP HANA Variables Concepts
Creating VariablesCreating Variables
 You use variables to filter data atClient ApplicationClient Application You use variables to filter data at
runtime. You assign values to
these variables by entering the
value manually, or by selecting it
f th d d li t
Client ApplicationClient Application
from the drop-down list.
 Using variables means that you
do not need to decide the
Calculation EngineCalculation Engine
restriction on the value of
attributes at the design time.
 You can apply variables in the
OLAP
Engine
OLAP
Engine
Join
Engine
Join
Engine You can apply variables in the
analytic and calculation views.
 If a calculation view is created
i l ti i ith
EngineEngine EngineEngine
using an analytic view with
variables, those variables are
also available in the calculation
view but cannot be edited.
Column
Store
Column
Store
Row
Store
Row
Store
© 2012 SAP AG. All rights reserved. 179179
Variables Types
Creating VariablesCreating Variables
The following types of variables are supported:
Type Description
AttributeValue Use this to apply a filter when the value of the filter comes from
an attribute.
Currency Use this during currency conversion to specify the targetCurrency Use this during currency conversion to specify the target
currency.
Date Use this to apply a filter when the value of the filter is in date
format, for example, to specify the date during currency, p , p y g y
conversion.
Static List Use this to a apply filter when the value of the filter comes from a
user-defined list of values.
© 2012 SAP AG. All rights reserved. 180180
Creating Attribute Value Variables
Creating VariablesCreating Variables
The Variable type called ”AttributeValue”The Variable type called AttributeValue
restricts the results in the view for the
selected Attribute.
You select the Attribute in the view that
you want to filter on, and you also
define the:
Selection Type: Whether selections
should be based on intervals, ranges or
single valuessingle values.
Multiple Entries: Whether mutliple
values of the selection types should beyp
allowed.
© 2012 SAP AG. All rights reserved. 181© 2012 SAP AG. All rights reserved. 181
Creating Attribute Value Variables
Creating VariablesCreating Variables
When displaying the values of a View with an Attribute Value Variable includedWhen displaying the values of a View with an Attribute Value Variable included,
you will be asked to enter the values for the Attribute Values defined. The Value
Help Dialog you can help you find the selections you are looking for.
© 2012 SAP AG. All rights reserved. 182© 2012 SAP AG. All rights reserved. 182
Creating Attribute Value Variables
Creating VariablesCreating Variables
The Variable Values selectedThe Variable Values selected
will restrict the results as
required when you click the
”OK” button.OK button.
Should the user however need
to display all values, bypassing
the selection criteria completely,
it is possible to do so by
selecting the “Cancel” button in
th “V i bl V l ” di lthe “Variable Values” dialog.
© 2012 SAP AG. All rights reserved. 183© 2012 SAP AG. All rights reserved. 183
Creating Static Value Lists
Creating VariablesCreating Variables
When you want to limit theWhen you want to limit the
possible values to select for a
varaible it can be useful to
define the Variable as adefine the Variable as a
”StaticList” type.
When defining this type of
variable you can enter the list
of values at design-time.
© 2012 SAP AG. All rights reserved. 184184
Creating Static Value Lists
Creating VariablesCreating Variables
During refresh of a ”StaticList” type of Variable when the user clicks on ”Find” theDuring refresh of a StaticList type of Variable, when the user clicks on Find , the
Value Help Dialog will display the list of values defined during variable creation.
© 2012 SAP AG. All rights reserved. 185185
Creating Variables with formulas
Creating VariablesCreating Variables
A variable does not necessarily need toA variable does not necessarily need to
restrict the data of a view.
It can also take input from the user and
process it, returning dynamic data
based on the user selection.
We now want to see how we can createWe now want to see how we can create
a function in a Calculated Measure
based on the value of a Variable.
© 2012 SAP AG. All rights reserved. 186186
Creating Variables with formulas
Creating VariablesCreating Variables
What we first need to doWhat we first need to do
is to create a variable to
be used in a calculation.
The variable can be of
any type, for example a
StaticList type.
In this example to the
right the user can
choose either ”Gross” orchoose either Gross or
”Net” as the selection.
© 2012 SAP AG. All rights reserved. 187© 2012 SAP AG. All rights reserved. 187
Creating Variables with formulas
Creating VariablesCreating Variables
We also need somewhere toWe also need somewhere to
call the variable from.
In for example a Calculated
Measure, we can reference
the result of the user selected
variable.
This is done by calling it
within double dollar signs,
see example:see example:
if('$$VAR_GROSS_OR_NET$$'='Gross',"GROSS_AMOUNT","NET_AMOUNT")
© 2012 SAP AG. All rights reserved. 188© 2012 SAP AG. All rights reserved. 188
Creating Date Variables
Creating VariablesCreating Variables
The Variable type”Date” can be usefulThe Variable type Date can be useful
when you for example want an input
date from the reporting user in order to
create further calculations on.create further calculations on.
Whatever input is selected in the
variable can be used as a basis for
extended calculations.
© 2012 SAP AG. All rights reserved. 189© 2012 SAP AG. All rights reserved. 189
Creating Date Variables
Creating VariablesCreating Variables
Selecting the Variable Type as: ”Date” will make it easier for the endSelecting the Variable Type as: Date will make it easier for the end
user to select a date by utilizing a calendar dialog for selecting the
appropriate date.
© 2012 SAP AG. All rights reserved. 190© 2012 SAP AG. All rights reserved. 190
Creating Date Variables
Creating VariablesCreating Variables
Calculated AttributeVariable
The date variable selected can then beThe date variable selected can then be
used in for example a Calculated
Attribute so as to give dynamic values.
© 2012 SAP AG. All rights reserved. 191© 2012 SAP AG. All rights reserved. 191
Objectives
Creating VariablesCreating Variables
You should now be able to:You should now be able to:
• Explain SAP HANA Variables
• Create Variables• Create Variables
© 2012 SAP AG. All rights reserved. 192192
Creating Attribute Views
Unit 4: Advanced Modeling
Creating Restricted & Calculated Measures
Using Hierarchies
Using Filter Operations
SAP HANA SQL - Introduction
Using Filter Operations
Using Variables
SQLScript and Procedures
Using Currency Conversion
Objectives
SAP HANA SQLSAP HANA SQL
At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:
 Explain the language elements used in SAP
HANA SQL statements.Q
© 2012 SAP AG. All rights reserved. 194
Overview
SAP HANA SQLSAP HANA SQL
This module covers the following topics:This module covers the following topics:
• Overview SQL Language Elements
• Identifiers• Identifiers
• SQL Data Types
• Predicates and Operators
• Functions and Expressions
• SQL Statements - Examples
© 2012 SAP AG. All rights reserved. 195195
SQL - Definition
SAP HANA SQLSAP HANA SQL
• Standardized Class Description Example
language for
communication with a
relational database.
p p
DDL
Data Definition
Language
CREATE, ALTER,
DROP TABLE
• Used to retrieve,
store or manipulate
information in the
DML
Data Manipulation
Language
SELECT, DELETE,
INSERT, UPDATE
information in the
database.
DCL
Data Control
Language
GRANT, REVOKE
© 2012 SAP AG. All rights reserved. 196196
SQL language elements
SAP HANA SQLSAP HANA SQL
Identifiers • Used to represent names used in SQL statementIdentifiers • Used to represent names used in SQL statement
Data types • Specify the characteristics of a data value
Expressions • Clause that can be evaluated to return values
Operators • Used for calculation, value comparison or to assign values
Predicates
• Specified by combining one or more expressions or logical
operators and returns one of the following logical or truth
values: TRUE, FALSE, or UNKNOWNvalues: TRUE, FALSE, or UNKNOWN
Functions • Used in expressions to return information from the database
© 2012 SAP AG. All rights reserved. 197197
Comment and Code page
SAP HANA SQLSAP HANA SQL
C tComments
 --
double hyphensdouble hyphens
 /*/
<……>
*/
Codepage
 The SAP HANA database supports Unicode to allow use of all The SAP HANA database supports Unicode to allow use of all
languages in the Unicode Standard and 7 Bit ASCII code page without
restriction.
© 2012 SAP AG. All rights reserved. 198198
Identifiers
SAP HANA SQLSAP HANA SQL
TRAINING
Undelimited
Identifiers
• must start with a letter
• cannot contain any symbols other
than digits or an underscore "
TRAINING
Training
(treated with upper case!)
1TRAININGg _
TRAINING%
• enclosed in the delimiter
d bl t
"TRAINING"
" i i (
Delimited
Identifiers
double quotes
"<identifier>"
• can contain any character including
special characters.
"Training" (case
sensitive)
"1Training"
"Training%"p g
• "_SYS_" is reserved exclusively
for database engine
Limitations
for database engine
• Role name and user name must be
specified as undelimited identifiers.
• Maximum length for the identifiers
i 127 h t
© 2012 SAP AG. All rights reserved. 199
is 127 characters.
199
SQL Data types
SAP HANA SQLSAP HANA SQL
Classification Data Type
Datetime types DATE, TIME, SECONDTIME, TIMESTAMP
Numeric types TINYINT, SMALLINT, INTEGER, BIGINT,
SMALLDECIMAL, DECIMAL, REAL, DOUBLE, FLOAT
Character string types VARCHAR, NVARCHAR, ALPHANUM, SHORTTEXT
Binary types VARBINARY
Large Object types BLOB, CLOB, NCLOB, TEXT
© 2012 SAP AG. All rights reserved. 200200
Predicates
SAP HANA SQLSAP HANA SQL
Comparison Predicates <expression>p
{ = | != | <> | > | < | >= | <= }
[ ANY | SOME| ALL ]
{ <expression_list> | <subquery> }
Range Predicate <expression1> [NOT] BETWEEN <expression2>
AND <expression3>
In Predicate <expression> [NOT] IN { <expression_list>
| <subquery> }
E i t P di t [NT] EXISTS ( < b > )Exists Predicate [NT] EXISTS ( <subquery> )
LIKE Predicate <expression1> [NOT] LIKE <expression2>
[ESCAPE <expression3>][ p ]
NULL Predicate <expression> IS [NOT] NULL
© 2012 SAP AG. All rights reserved. 201201
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96
TZH300_EN_COL96

More Related Content

What's hot

What's new for Text in SAP HANA SPS 11
What's new for Text in SAP HANA SPS 11What's new for Text in SAP HANA SPS 11
What's new for Text in SAP HANA SPS 11
SAP Technology
 
SAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming ModelSAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming Model
SAP Technology
 
HANA SPS07 Studio Development Perspective
HANA SPS07 Studio Development PerspectiveHANA SPS07 Studio Development Perspective
HANA SPS07 Studio Development Perspective
SAP Technology
 
SAP HANA SPS10- SAP DB Control Center
SAP HANA SPS10- SAP DB Control CenterSAP HANA SPS10- SAP DB Control Center
SAP HANA SPS10- SAP DB Control Center
SAP Technology
 
HANA SPS07 SQL Script
HANA SPS07 SQL ScriptHANA SPS07 SQL Script
HANA SPS07 SQL Script
SAP Technology
 
Hana e2 e_adminmonitoring_sps08
Hana e2 e_adminmonitoring_sps08Hana e2 e_adminmonitoring_sps08
Hana e2 e_adminmonitoring_sps08
RAJAT123523
 
What's New in SAP HANA SPS 11 Operations
What's New in SAP HANA SPS 11 OperationsWhat's New in SAP HANA SPS 11 Operations
What's New in SAP HANA SPS 11 Operations
SAP Technology
 
HANA SPS07 Extended Application Service
HANA SPS07 Extended Application ServiceHANA SPS07 Extended Application Service
HANA SPS07 Extended Application Service
SAP Technology
 
Whats New on SAP HANA SPS 11 Core Database Capabilities
Whats New on SAP HANA SPS 11 Core Database CapabilitiesWhats New on SAP HANA SPS 11 Core Database Capabilities
Whats New on SAP HANA SPS 11 Core Database Capabilities
SAP Technology
 
DMM161 HANA_MODELING_2015
DMM161 HANA_MODELING_2015DMM161 HANA_MODELING_2015
DMM161 HANA_MODELING_2015
Luc Vanrobays
 
Dmm203 – new approaches for data modelingwith sap hana
Dmm203 – new approaches for data modelingwith sap hanaDmm203 – new approaches for data modelingwith sap hana
Dmm203 – new approaches for data modelingwith sap hana
Luc Vanrobays
 
What's new in SAP HANA SPS 11 SQL/SQLScript
What's new in SAP HANA SPS 11 SQL/SQLScriptWhat's new in SAP HANA SPS 11 SQL/SQLScript
What's new in SAP HANA SPS 11 SQL/SQLScript
SAP Technology
 
SAP HANA SPS09 - HANA Modeling
SAP HANA SPS09 - HANA ModelingSAP HANA SPS09 - HANA Modeling
SAP HANA SPS09 - HANA Modeling
SAP Technology
 
SAP HANA SPS10- Series Data/ TimeSeries
SAP HANA SPS10- Series Data/ TimeSeriesSAP HANA SPS10- Series Data/ TimeSeries
SAP HANA SPS10- Series Data/ TimeSeries
SAP Technology
 
1310 success stories_and_lessons_learned_implementing_sap_hana_solutions
1310 success stories_and_lessons_learned_implementing_sap_hana_solutions1310 success stories_and_lessons_learned_implementing_sap_hana_solutions
1310 success stories_and_lessons_learned_implementing_sap_hana_solutions
Bobby Shah
 
What's New in SAP HANA SPS 11 DB Control Center (Operations)
What's New in SAP HANA SPS 11 DB Control Center (Operations)What's New in SAP HANA SPS 11 DB Control Center (Operations)
What's New in SAP HANA SPS 11 DB Control Center (Operations)
SAP Technology
 
SAP HANA SPS10- SAP HANA Remote Data Sync
SAP HANA SPS10- SAP HANA Remote Data SyncSAP HANA SPS10- SAP HANA Remote Data Sync
SAP HANA SPS10- SAP HANA Remote Data Sync
SAP Technology
 
What's new for SAP HANA SPS 11 Dynamic Tiering
What's new for SAP HANA SPS 11 Dynamic TieringWhat's new for SAP HANA SPS 11 Dynamic Tiering
What's new for SAP HANA SPS 11 Dynamic Tiering
SAP Technology
 
SAP HANA SPS10- Text Analysis & Text Mining
SAP HANA SPS10- Text Analysis & Text MiningSAP HANA SPS10- Text Analysis & Text Mining
SAP HANA SPS10- Text Analysis & Text Mining
SAP Technology
 
SAP HANA SPS10- Predictive Analysis Library and Application Function Modeler
SAP HANA SPS10- Predictive Analysis Library and Application Function ModelerSAP HANA SPS10- Predictive Analysis Library and Application Function Modeler
SAP HANA SPS10- Predictive Analysis Library and Application Function Modeler
SAP Technology
 

What's hot (20)

What's new for Text in SAP HANA SPS 11
What's new for Text in SAP HANA SPS 11What's new for Text in SAP HANA SPS 11
What's new for Text in SAP HANA SPS 11
 
SAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming ModelSAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming Model
 
HANA SPS07 Studio Development Perspective
HANA SPS07 Studio Development PerspectiveHANA SPS07 Studio Development Perspective
HANA SPS07 Studio Development Perspective
 
SAP HANA SPS10- SAP DB Control Center
SAP HANA SPS10- SAP DB Control CenterSAP HANA SPS10- SAP DB Control Center
SAP HANA SPS10- SAP DB Control Center
 
HANA SPS07 SQL Script
HANA SPS07 SQL ScriptHANA SPS07 SQL Script
HANA SPS07 SQL Script
 
Hana e2 e_adminmonitoring_sps08
Hana e2 e_adminmonitoring_sps08Hana e2 e_adminmonitoring_sps08
Hana e2 e_adminmonitoring_sps08
 
What's New in SAP HANA SPS 11 Operations
What's New in SAP HANA SPS 11 OperationsWhat's New in SAP HANA SPS 11 Operations
What's New in SAP HANA SPS 11 Operations
 
HANA SPS07 Extended Application Service
HANA SPS07 Extended Application ServiceHANA SPS07 Extended Application Service
HANA SPS07 Extended Application Service
 
Whats New on SAP HANA SPS 11 Core Database Capabilities
Whats New on SAP HANA SPS 11 Core Database CapabilitiesWhats New on SAP HANA SPS 11 Core Database Capabilities
Whats New on SAP HANA SPS 11 Core Database Capabilities
 
DMM161 HANA_MODELING_2015
DMM161 HANA_MODELING_2015DMM161 HANA_MODELING_2015
DMM161 HANA_MODELING_2015
 
Dmm203 – new approaches for data modelingwith sap hana
Dmm203 – new approaches for data modelingwith sap hanaDmm203 – new approaches for data modelingwith sap hana
Dmm203 – new approaches for data modelingwith sap hana
 
What's new in SAP HANA SPS 11 SQL/SQLScript
What's new in SAP HANA SPS 11 SQL/SQLScriptWhat's new in SAP HANA SPS 11 SQL/SQLScript
What's new in SAP HANA SPS 11 SQL/SQLScript
 
SAP HANA SPS09 - HANA Modeling
SAP HANA SPS09 - HANA ModelingSAP HANA SPS09 - HANA Modeling
SAP HANA SPS09 - HANA Modeling
 
SAP HANA SPS10- Series Data/ TimeSeries
SAP HANA SPS10- Series Data/ TimeSeriesSAP HANA SPS10- Series Data/ TimeSeries
SAP HANA SPS10- Series Data/ TimeSeries
 
1310 success stories_and_lessons_learned_implementing_sap_hana_solutions
1310 success stories_and_lessons_learned_implementing_sap_hana_solutions1310 success stories_and_lessons_learned_implementing_sap_hana_solutions
1310 success stories_and_lessons_learned_implementing_sap_hana_solutions
 
What's New in SAP HANA SPS 11 DB Control Center (Operations)
What's New in SAP HANA SPS 11 DB Control Center (Operations)What's New in SAP HANA SPS 11 DB Control Center (Operations)
What's New in SAP HANA SPS 11 DB Control Center (Operations)
 
SAP HANA SPS10- SAP HANA Remote Data Sync
SAP HANA SPS10- SAP HANA Remote Data SyncSAP HANA SPS10- SAP HANA Remote Data Sync
SAP HANA SPS10- SAP HANA Remote Data Sync
 
What's new for SAP HANA SPS 11 Dynamic Tiering
What's new for SAP HANA SPS 11 Dynamic TieringWhat's new for SAP HANA SPS 11 Dynamic Tiering
What's new for SAP HANA SPS 11 Dynamic Tiering
 
SAP HANA SPS10- Text Analysis & Text Mining
SAP HANA SPS10- Text Analysis & Text MiningSAP HANA SPS10- Text Analysis & Text Mining
SAP HANA SPS10- Text Analysis & Text Mining
 
SAP HANA SPS10- Predictive Analysis Library and Application Function Modeler
SAP HANA SPS10- Predictive Analysis Library and Application Function ModelerSAP HANA SPS10- Predictive Analysis Library and Application Function Modeler
SAP HANA SPS10- Predictive Analysis Library and Application Function Modeler
 

Viewers also liked

HANA Modelling process flow
HANA Modelling process flowHANA Modelling process flow
HANA Modelling process flowjk571983
 
Hana1 slt repli_sec_en
Hana1 slt repli_sec_enHana1 slt repli_sec_en
Hana1 slt repli_sec_en
sreehari_chepuri244
 
Sap hana modelling online training
Sap hana modelling online trainingSap hana modelling online training
Sap hana modelling online training
Glory IT Technologies Pvt. Ltd.
 
SAP HANA Security: New Technology, New Risks
SAP HANA Security: New Technology, New RisksSAP HANA Security: New Technology, New Risks
SAP HANA Security: New Technology, New Risks
Virtual Forge
 
SAP HANA - Understanding the Basics
SAP HANA - Understanding the Basics SAP HANA - Understanding the Basics
SAP HANA - Understanding the Basics
Global Business Solutions SME
 
Ringkasan ba101 dec2011
Ringkasan ba101 dec2011Ringkasan ba101 dec2011
Ringkasan ba101 dec2011noraisyahalias
 
05 enclosures
05 enclosures05 enclosures
05 enclosures
psize web
 
Profit from the cloud TM Parallels Dynamic Infrastructure And OpenStack.
Profit from the cloud TM Parallels Dynamic Infrastructure And OpenStack.Profit from the cloud TM Parallels Dynamic Infrastructure And OpenStack.
Profit from the cloud TM Parallels Dynamic Infrastructure And OpenStack.
OpenVZ
 
Social Proof and Reference Group
Social Proof and Reference GroupSocial Proof and Reference Group
Social Proof and Reference Group
Rahul Hela
 
Sovereignty, Free Will, and Salvation - Limited Atonement
Sovereignty, Free Will, and Salvation - Limited AtonementSovereignty, Free Will, and Salvation - Limited Atonement
Sovereignty, Free Will, and Salvation - Limited Atonement
Robin Schumacher
 
Chance challenge change Arise Roby
Chance challenge change   Arise RobyChance challenge change   Arise Roby
Chance challenge change Arise Roby
Arise Roby
 
ShareThis Auto Study
ShareThis Auto Study ShareThis Auto Study
ShareThis Auto Study
ShareThis
 
Sed petrolgy[1]
Sed petrolgy[1]Sed petrolgy[1]
Sed petrolgy[1]
D POSITIVE WORLD
 
Linus Torvalds Just For Fun
Linus Torvalds Just For FunLinus Torvalds Just For Fun
Linus Torvalds Just For Funpps_ps
 
Quran in Hindi Part-30
Quran in Hindi Part-30Quran in Hindi Part-30
Quran in Hindi Part-30
Sharaz Ahmed
 
Baiguullaga organition 2012
Baiguullaga organition 2012Baiguullaga organition 2012
Baiguullaga organition 2012oyundariubuns
 
The Potato Story 一袋土豆
The Potato Story 一袋土豆The Potato Story 一袋土豆
The Potato Story 一袋土豆
Joe Carter
 
ZENworks Configuration Management
ZENworks Configuration ManagementZENworks Configuration Management
ZENworks Configuration Management
Roel van Bueren
 

Viewers also liked (20)

HANA Modelling process flow
HANA Modelling process flowHANA Modelling process flow
HANA Modelling process flow
 
Hana1 slt repli_sec_en
Hana1 slt repli_sec_enHana1 slt repli_sec_en
Hana1 slt repli_sec_en
 
Sap hana modelling online training
Sap hana modelling online trainingSap hana modelling online training
Sap hana modelling online training
 
SAP HANA Security: New Technology, New Risks
SAP HANA Security: New Technology, New RisksSAP HANA Security: New Technology, New Risks
SAP HANA Security: New Technology, New Risks
 
SAP HANA - Understanding the Basics
SAP HANA - Understanding the Basics SAP HANA - Understanding the Basics
SAP HANA - Understanding the Basics
 
Ringkasan ba101 dec2011
Ringkasan ba101 dec2011Ringkasan ba101 dec2011
Ringkasan ba101 dec2011
 
05 enclosures
05 enclosures05 enclosures
05 enclosures
 
Pk std
Pk stdPk std
Pk std
 
Profit from the cloud TM Parallels Dynamic Infrastructure And OpenStack.
Profit from the cloud TM Parallels Dynamic Infrastructure And OpenStack.Profit from the cloud TM Parallels Dynamic Infrastructure And OpenStack.
Profit from the cloud TM Parallels Dynamic Infrastructure And OpenStack.
 
Social Proof and Reference Group
Social Proof and Reference GroupSocial Proof and Reference Group
Social Proof and Reference Group
 
Sovereignty, Free Will, and Salvation - Limited Atonement
Sovereignty, Free Will, and Salvation - Limited AtonementSovereignty, Free Will, and Salvation - Limited Atonement
Sovereignty, Free Will, and Salvation - Limited Atonement
 
Chance challenge change Arise Roby
Chance challenge change   Arise RobyChance challenge change   Arise Roby
Chance challenge change Arise Roby
 
ShareThis Auto Study
ShareThis Auto Study ShareThis Auto Study
ShareThis Auto Study
 
Infinity plus one
Infinity plus oneInfinity plus one
Infinity plus one
 
Sed petrolgy[1]
Sed petrolgy[1]Sed petrolgy[1]
Sed petrolgy[1]
 
Linus Torvalds Just For Fun
Linus Torvalds Just For FunLinus Torvalds Just For Fun
Linus Torvalds Just For Fun
 
Quran in Hindi Part-30
Quran in Hindi Part-30Quran in Hindi Part-30
Quran in Hindi Part-30
 
Baiguullaga organition 2012
Baiguullaga organition 2012Baiguullaga organition 2012
Baiguullaga organition 2012
 
The Potato Story 一袋土豆
The Potato Story 一袋土豆The Potato Story 一袋土豆
The Potato Story 一袋土豆
 
ZENworks Configuration Management
ZENworks Configuration ManagementZENworks Configuration Management
ZENworks Configuration Management
 

Similar to TZH300_EN_COL96

SAP_SLT_Guide_21122015.pdf
SAP_SLT_Guide_21122015.pdfSAP_SLT_Guide_21122015.pdf
SAP_SLT_Guide_21122015.pdf
ssuser17886a
 
HANA SPS07 Replication
HANA SPS07 ReplicationHANA SPS07 Replication
HANA SPS07 Replication
SAP Technology
 
Sap HANA Training doc
Sap HANA Training doc Sap HANA Training doc
Sap HANA Training doc
Mansur Shaik
 
YASH Technologies at ASUG Minnesota chapter meeting
YASH Technologies at ASUG Minnesota chapter meetingYASH Technologies at ASUG Minnesota chapter meeting
YASH Technologies at ASUG Minnesota chapter meeting
YASH Technologies
 
SAP HANA SPS09 - Multitenant Database Containers
SAP HANA SPS09 - Multitenant Database ContainersSAP HANA SPS09 - Multitenant Database Containers
SAP HANA SPS09 - Multitenant Database Containers
SAP Technology
 
SAP HANA SPS09 - HANA IM Services
SAP HANA SPS09 - HANA IM ServicesSAP HANA SPS09 - HANA IM Services
SAP HANA SPS09 - HANA IM Services
SAP Technology
 
SAP HANA SPS10- Enterprise Information Management
SAP HANA SPS10- Enterprise Information ManagementSAP HANA SPS10- Enterprise Information Management
SAP HANA SPS10- Enterprise Information Management
SAP Technology
 
SAP HANA SPS10- Multitenant Database Containers
SAP HANA SPS10- Multitenant Database ContainersSAP HANA SPS10- Multitenant Database Containers
SAP HANA SPS10- Multitenant Database Containers
SAP Technology
 
MAIA tech.day - I
MAIA tech.day - IMAIA tech.day - I
MAIA tech.day - I
Dhiren Gala
 
What's new on SAP HANA Smart Data Access
What's new on SAP HANA Smart Data AccessWhat's new on SAP HANA Smart Data Access
What's new on SAP HANA Smart Data Access
SAP Technology
 
HANA SPS07 Architecture & Landscape
HANA SPS07 Architecture & LandscapeHANA SPS07 Architecture & Landscape
HANA SPS07 Architecture & Landscape
SAP Technology
 
Itm110 how does sap solution manager support sap hana
Itm110 how does sap solution manager support sap hanaItm110 how does sap solution manager support sap hana
Itm110 how does sap solution manager support sap hana
Olivier Bilger
 
Fut1441 SUSE Linux Enterprise Server for SAP Solutions
Fut1441  SUSE Linux Enterprise Server for SAP SolutionsFut1441  SUSE Linux Enterprise Server for SAP Solutions
Fut1441 SUSE Linux Enterprise Server for SAP Solutions
Christian Holsing
 
HANA SITSP 2011
HANA SITSP 2011HANA SITSP 2011
HANA SITSP 2011
Henrique Pinto
 
SAP on Linux the way to S/4HANA
SAP on Linux the way to S/4HANASAP on Linux the way to S/4HANA
SAP on Linux the way to S/4HANA
Finceptum Oy
 
Dev207 berlin
Dev207 berlinDev207 berlin
Dev207 berlin
Wolfgang Weiss
 
Sap hana master_guide_en
Sap hana master_guide_enSap hana master_guide_en
Sap hana master_guide_en
Farrukh Yusupov
 
SAP HANA SPS10- SAP HANA Platform Lifecycle Management
SAP HANA SPS10- SAP HANA Platform Lifecycle ManagementSAP HANA SPS10- SAP HANA Platform Lifecycle Management
SAP HANA SPS10- SAP HANA Platform Lifecycle Management
SAP Technology
 
A11,B24 次世代型インメモリデータベースSAP HANA。その最新技術を理解する by Toshiro Morisaki
A11,B24 次世代型インメモリデータベースSAP HANA。その最新技術を理解する by  Toshiro MorisakiA11,B24 次世代型インメモリデータベースSAP HANA。その最新技術を理解する by  Toshiro Morisaki
A11,B24 次世代型インメモリデータベースSAP HANA。その最新技術を理解する by Toshiro MorisakiInsight Technology, Inc.
 
Sap slt100 sps08 latest sample
Sap slt100 sps08 latest sampleSap slt100 sps08 latest sample
Sap slt100 sps08 latest sample
Sap Materials
 

Similar to TZH300_EN_COL96 (20)

SAP_SLT_Guide_21122015.pdf
SAP_SLT_Guide_21122015.pdfSAP_SLT_Guide_21122015.pdf
SAP_SLT_Guide_21122015.pdf
 
HANA SPS07 Replication
HANA SPS07 ReplicationHANA SPS07 Replication
HANA SPS07 Replication
 
Sap HANA Training doc
Sap HANA Training doc Sap HANA Training doc
Sap HANA Training doc
 
YASH Technologies at ASUG Minnesota chapter meeting
YASH Technologies at ASUG Minnesota chapter meetingYASH Technologies at ASUG Minnesota chapter meeting
YASH Technologies at ASUG Minnesota chapter meeting
 
SAP HANA SPS09 - Multitenant Database Containers
SAP HANA SPS09 - Multitenant Database ContainersSAP HANA SPS09 - Multitenant Database Containers
SAP HANA SPS09 - Multitenant Database Containers
 
SAP HANA SPS09 - HANA IM Services
SAP HANA SPS09 - HANA IM ServicesSAP HANA SPS09 - HANA IM Services
SAP HANA SPS09 - HANA IM Services
 
SAP HANA SPS10- Enterprise Information Management
SAP HANA SPS10- Enterprise Information ManagementSAP HANA SPS10- Enterprise Information Management
SAP HANA SPS10- Enterprise Information Management
 
SAP HANA SPS10- Multitenant Database Containers
SAP HANA SPS10- Multitenant Database ContainersSAP HANA SPS10- Multitenant Database Containers
SAP HANA SPS10- Multitenant Database Containers
 
MAIA tech.day - I
MAIA tech.day - IMAIA tech.day - I
MAIA tech.day - I
 
What's new on SAP HANA Smart Data Access
What's new on SAP HANA Smart Data AccessWhat's new on SAP HANA Smart Data Access
What's new on SAP HANA Smart Data Access
 
HANA SPS07 Architecture & Landscape
HANA SPS07 Architecture & LandscapeHANA SPS07 Architecture & Landscape
HANA SPS07 Architecture & Landscape
 
Itm110 how does sap solution manager support sap hana
Itm110 how does sap solution manager support sap hanaItm110 how does sap solution manager support sap hana
Itm110 how does sap solution manager support sap hana
 
Fut1441 SUSE Linux Enterprise Server for SAP Solutions
Fut1441  SUSE Linux Enterprise Server for SAP SolutionsFut1441  SUSE Linux Enterprise Server for SAP Solutions
Fut1441 SUSE Linux Enterprise Server for SAP Solutions
 
HANA SITSP 2011
HANA SITSP 2011HANA SITSP 2011
HANA SITSP 2011
 
SAP on Linux the way to S/4HANA
SAP on Linux the way to S/4HANASAP on Linux the way to S/4HANA
SAP on Linux the way to S/4HANA
 
Dev207 berlin
Dev207 berlinDev207 berlin
Dev207 berlin
 
Sap hana master_guide_en
Sap hana master_guide_enSap hana master_guide_en
Sap hana master_guide_en
 
SAP HANA SPS10- SAP HANA Platform Lifecycle Management
SAP HANA SPS10- SAP HANA Platform Lifecycle ManagementSAP HANA SPS10- SAP HANA Platform Lifecycle Management
SAP HANA SPS10- SAP HANA Platform Lifecycle Management
 
A11,B24 次世代型インメモリデータベースSAP HANA。その最新技術を理解する by Toshiro Morisaki
A11,B24 次世代型インメモリデータベースSAP HANA。その最新技術を理解する by  Toshiro MorisakiA11,B24 次世代型インメモリデータベースSAP HANA。その最新技術を理解する by  Toshiro Morisaki
A11,B24 次世代型インメモリデータベースSAP HANA。その最新技術を理解する by Toshiro Morisaki
 
Sap slt100 sps08 latest sample
Sap slt100 sps08 latest sampleSap slt100 sps08 latest sample
Sap slt100 sps08 latest sample
 

Recently uploaded

Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Globus
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
ShamsuddeenMuhammadA
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
Pro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp BookPro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp Book
abdulrafaychaudhry
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 

Recently uploaded (20)

Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
Pro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp BookPro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp Book
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 

TZH300_EN_COL96

  • 1. SAP HANA Implementationp and Modeling TZH300 Implementation and Modelingp g Collection 096 Rev 14 V1
  • 2. Agendag SAP HANA Implementation and Modeling • Unit 1: Data Provisioning using SLT • Unit 2: Approaching SAP HANA ModelingUnit 2: Approaching SAP HANA Modeling • Unit 3: Connecting Tables • Unit 4: Advanced Modeling • Unit 5: Processing Information Models • Unit 6: Managing Modeling Content • Unit 7: Security and Authorizations• Unit 7: Security and Authorizations © 2012 SAP AG. All rights reserved. 2
  • 3. Positioning and Key Concepts Unit 1: Data Provisioning using SLT Data Replication at a Glance Overview on Configuration Aspects SLT based transformation concepts Transformation of Data SLT based transformation concepts Selective Data Replication Extension of (target) table structure Specific Considerations
  • 4. Objectives Positioning and Key ConceptsPositioning and Key Concepts At the end of this Lesson you will be able to:At the end of this Lesson you will be able to: • Explain the positioning of SAP LT Replication ServerServer • Describe the key concepts and features • List the prerequisites and how to set up the SAP LT Replication Server • Name the benefits of the trigger-based replication approach © 2012 SAP AG. All rights reserved. 4
  • 5. Overview Positioning and Key ConceptsPositioning and Key Concepts This module covers the following topics:This module covers the following topics: • Product name, positioning and key benefits C i l t d ft hi t• Commercial aspects and software shipment • Overview on key concepts, features and user interfaces • Overview on key installation and configuration stepsy g p © 2012 SAP AG. All rights reserved. 5
  • 6. Product Name SAP LandscapeSAP Landscape TransformationTransformation Replication Serverp for SAP HANA © 2012 SAP AG. All rights reserved. 6
  • 7. SAP LT Replication Server for SAP HANA Leverages Proven SLO TechnologiesProven SLO Technologies Application Lifecycle ManagementSLO* t h l i h b d Application Lifecycle Management SLO* technologies have been used since more than 10 years in hundred of projects per year K ff i f t SAP‘ Key offerings foster SAP‘s Application Lifecycle Management concept SAP LT R li ti S SAP LT Replication Server - as a new use case - leverages several SLO technologies © 2012 SAP AG. All rights reserved. 7 *) System Landscape Optimization
  • 8. Positioning and Key Benefits of SAP LT Replication Server for SAP HANAfor SAP HANA Key Benefits of the Trigger-Based Approach: • Allows real-time (and scheduled) data replication, replicating only relevant data into HANA • Ability to migrate data into HANA format while replicating data in real- time • „Unlimited“ release coverage (from SAP R/3 4.6C onwards) sourcing data from SAP ERP (and other ABAP based SAP applications) • Leverages proven SLO technology (Near Zero Downtime, TDMS, SAP LT) • Simple and fast set-up of LT replicator (initial installation and fi ti i l th 1d ) d f ll i t t d ith HANA d lconfiguration in less than 1day) and fully integrated with HANA modeler UI SAP LT Replication Server is the ideal solution for all HANA customers who need real-time or scheduled data replication © 2012 SAP AG. All rights reserved. 8 sourcing from SAP and NON-SAP sources
  • 9. Commercial Aspects and Software Shipmentp p Commercial Aspects SAP LT Replication Server for SAP HANA will be part of SAP HANA software license modelpart of SAP HANA software license model Software ShipmentSoftware Shipment SAP LT Replication Server for SAP HANA will be part of SAP HANA software shipment and fully integrated into the SAP HANA modeler UIintegrated into the SAP HANA modeler UI © 2012 SAP AG. All rights reserved. 9
  • 10. Overview - Trigger-Based Approach Positioning and Key ConceptsPositioning and Key Concepts SAP LT Replication Server does not have to be a separate  SAP system and can run on any SAP system with SAPSAP system and can run on any SAP system with SAP  NetWeaver 7.02 ABAP stack (Kernel 7.20EXT)   HANA Studio Application Table Trigger Based Delta Recording Replication Engine RFC Connection DB Connection Replication Configuration SAP HANA systemSAP source system SAP LT Replication Server Application Table yy p Connection(s) between source system and SAP HANA system are defined as “Configuration” on the SAP LT Replication Server Data load and replication are triggered via SAP HANA Studio © 2012 SAP AG. All rights reserved. 10
  • 11. Architecture and Key Building Blocks Positioning and Key ConceptsPositioning and Key Concepts Read module Structure mapping & Transformation RFC Connection Application table Logging table DB trigger Application table Write module DB Connection SAP HANA systemSAP LT Replication ServerSAP source system Efficient initialization of data replication based on DB trigger Flexible and reliable replication process, incl. data migration Fast data replication via DB connect LT replication functionality is fully © 2012 SAP AG. All rights reserved. 11 and delta logging concept (as with NearZero downtime approach) process, incl. data migration (as used for TDMS and SAP LT) LT replication functionality is fully integrated with HANA Modeler UI
  • 12. Architecture for Non-SAP Source Replication Positioning and Key ConceptsPositioning and Key Concepts Read module Structure mapping & T f ti DB Connection Application table Logging table DB trigger Transformation Application table Write module DB Connection SAP HANA systemSAP LT Replication ServerNon SAP source system In a first step, SAP LT Replication Server transfers all metadata table definitions from the non-SAP source system to the HANA system. From the HANA Studio perspective, non-SAP source replication works as for SAP sources. When a table replication is started, SAP LT Replication Server creates logging tables within the source system. As a difference, the read modules are created in the SAP LT © 2012 SAP AG. All rights reserved. 12 logging tables within the source system. As a difference, the read modules are created in the SAP LT Replication Server. The connection the non-SAP source system is established as a database connection.
  • 13. Multi System Support Positioning and Key ConceptsPositioning and Key Concepts System A System B Schema 1 Schema 2 Source systems are connected to separate HANA schema on the same HANA System SAP HANA systemSource systems y Source systems are SAP HANA tS t System A System B Schema 1 Schema 1 Source systems are connected to separate HANA systems. Schema name can be equal or differentSAP HANA systemSource systems equal or different Source systems are SAP HANA systemSource systems System A System B Schema 1 Source systems are connected to same HANA system and also the same schema © 2012 SAP AG. All rights reserved. 13 SAP HANA systemSource systems schema
  • 14. Set-up of LT Replication Server Positioning and Key ConceptsPositioning and Key Concepts Installation aspects Source system(s): use respective DMIS add-on LT replication server: use add-on DMIS_2010_1_700 with SP05; other system requirements (NW 7.02; SAP Kernel 7.20EXT) apply Apply SPS03 for SAP HANA 1 0 Configuration steps for SAP LT Replication Server Apply SPS03 for SAP HANA 1.0 Define a schema for each source system Define connection to source system Define DB connection into SAP HANA Define replication frequency (real-time; frequency for scheduled replication) Define maximum number of background jobs for data replication Set-up of data replication in SAP HANA Select relevant source system Start (initial load only and / or continuous replication) © 2012 SAP AG. All rights reserved. 14
  • 15. Key Configuration Steps Positioning and Key ConceptsPositioning and Key Concepts Call SAP LT Replication Server Configuration (Transaction: LTR) Define configuration data © 2012 SAP AG. All rights reserved. 15
  • 16. Starting the Data Replication Positioning and Key ConceptsPositioning and Key Concepts Choose data provisioning to launch SAP HANA Modeler UI 1. 1. Select source system as defined in SAP1. 1. Select source system as defined in SAP LT Replication Server; related system information and schema will be displayed 2. 2. Use button Load and / or Replicate to set th d t li tiup the data replication 3. 3. Use button Stop Replication to finish replication 4 U b tt S d t li ti4. 4. Use button Suspend to pause replication 5. 5. Use button Resume to continue replication © 2012 SAP AG. All rights reserved. 16
  • 17. Database - Supportability Matrix SAP LT Replication Server for SAP HANASAP LT Replication Server for SAP HANA D t b Technical availability Database SAP Sources Non SAP Sources (*) MSFT SQL Server Enterprise Edition OK OK Oracle Enterprise Edition OK OK IBM DB2 LUW/ UDB (DB6) OK OK IBM DB/2 zSeries OK OK IBM DB2 iSeries (former AS/400) OK Not yet supported IBM Informix Planned for HANA SPS4 Not supportedo pp SAP MaxDB OK OK Sybase ASE Available until End of January 2012 Planned for HANA SPS4 For non-SAP source systems, the customer database license needs to cover a permanent database connection with 3rd party products like SAP LT Replication Server. © 2012 SAP AG. All rights reserved. 17 (*) Since a DB connection from SAP LT replication server to a non-SAP system is required, the OS/DB restrictions of SAP NetWeaver 7.02 apply (see at http://service.sap.com/pam)
  • 18. Roadmap at a Glance SAP LT Replication ServerSAP LT Replication Server • Several conceptual enhancements in alignment with SAP HANA development • Replication of tables into multiple HANA systems • User experience and usability • More integrated monitoring capabilities, e.g. status and replication logs in SAP HANA andstatus and replication logs in SAP HANA and SAP Solution Manager • Improved operations aspects R li ti it• Replication repository • Transactional integrity © 2012 SAP AG. All rights reserved. 18
  • 19. Summary Positioning and Key ConceptsPositioning and Key Concepts You should now be able to:You should now be able to: • Explain the positioning of SAP LT Replication ServerServer • Describe the key concepts and features • List the prerequisites and how to set up the SAP LT Replication Server • Name the benefits of the trigger-based replication approach © 2012 SAP AG. All rights reserved. 19
  • 20. Positioning and Key Concepts Unit 1: Data Provisioning using SLT Data Replication at a Glance Overview on Configuration Aspects SLT based transformation concepts Transformation of Data SLT based transformation concepts Selective Data Replication Extension of (target) table structure Specific Considerations
  • 21. Objectives Overview on configuration aspectsOverview on configuration aspects At the end of this Lesson you will be able to:At the end of this Lesson you will be able to: • Describe the set-up of a configuration on the SAP LT Replication ServerSAP LT Replication Server • Explain the impact of the configuration set-up on the data replication © 2012 SAP AG. All rights reserved. 21
  • 22. Concept: Define Configuration / Schema Overview on configuration aspectsOverview on configuration aspects Schema 1 Trigger-based delta recording Replication engine RFC Connection Replication Configuration DB Connection SAP HANA systemSAP source system SAP LT Replication Server yy p A new configuration can be created in the LT Configuration and Monitoring Dashboard. In that step, the connection between the source and the HANA system is established and the target schema will be created (if it doesn’t exist already). Also replication control tables are created and table lists are replicated from the source system. In addition, the required l d GRANT / REVOKE d d © 2012 SAP AG. All rights reserved. 22 roles and GRANT / REVOKE procedures are generated.
  • 23. Creating a New Configuration for SAP Sources Overview on configuration aspectsOverview on configuration aspects General Data D fi th li ti t t S h N i th HANADefine the replication target Schema Name in the HANA system (if schema does not exist, it will be created automatically) Define the Number of Replay Jobs used for data load and replicationand replication Connection to the source system SAP Source System: Use previously defined RFC destination to source systemy Non SAP Source System: Select the source database system and set the required fields (see also next slides) Connection to HANA systemy •Define the User Name and Password which can be used to connect to the HANA system (see also next slide) •Define the Host Name and Instance Number of the target HANA system Table space assignmentp g Optional: define table space for logging tables. If no table space is defined, logging table will be created in the same table space as the original table. Own table space is recommended for easier monitoring of the table sizes of the logging tables Replication Mode © 2012 SAP AG. All rights reserved. 23 p Replication can be executed in Real-time mode or in Scheduled mode
  • 24. Creating a New Configuration for Non-SAP Sources Overview on configuration aspects To replicate from non-SAP source system select Legacy and the affected database systemaffected database system. Depending on the database system, dditi l i d i f ti dadditional required information needs to be specified (e.g. for DB2 specify the DB connection and the table space name). © 2012 SAP AG. All rights reserved. 24 space name). Start with transaction LTR
  • 25. Results of Creating a New Configuration Overview on configuration aspectsOverview on configuration aspects When the popup to create a new configuration is closed by pressing the OK button the following actions are performedpressing the OK button, the following actions are performed automatically:  Configuration settings are saved on the LT Replication Server  New user and schema are created on the HANA system with the defined t t h ( t f d if i ti h i d)target schema name (not performed if an existing schema is reused)  Replication control tables (RS_* tables) are created in target schema  User roles for the target schema are created:  <target_schema>_DATA_PROV -> Role to manage data provisioning  <target_schema>_POWER_USER -> Contains all SQL privileges of the target schema  <target_schema>_USER_ADMIN -> Role to execute authority procedures (see below)  A procedure to grant (RS GRANT ACCESS) or revoke A procedure to grant (RS_GRANT_ACCESS) or revoke (RS_REVOKE_ACCESS) are created in the target schema  Replication of tables DD02L (stores the table list) and DD02T (stores the table short descriptions) is started automatically. Once those tables are replicated , the HANA studio knows which tables are available in the sourcep , system  SYS_REPL and table RS_REPLICATION_COMPONENTS are created (if they don’t exist already based on a previous configuration)  Replication is registered in table RS REPLICATION COMPONENTS © 2012 SAP AG. All rights reserved. 25  Replication is registered in table RS_REPLICATION_COMPONENTS
  • 26. Summary Overview on configuration aspectsOverview on configuration aspects You should now be able to:You should now be able to: • Describe the set-up of a configuration on the SAP LT Replication ServerSAP LT Replication Server • Explain the impact of the configuration set-up on the data replication © 2012 SAP AG. All rights reserved. 26
  • 27. Positioning and Key Concepts Unit 1: Data Provisioning using SLT Data Replication at a Glance Overview on Configuration Aspects SLT based transformation concepts Transformation of Data SLT based transformation concepts Selective Data Replication Extension of (target) table structure Specific Considerations
  • 28. Objectives Data Replication at a GlanceData Replication at a Glance At the end of this Lesson you will be able to:At the end of this Lesson you will be able to: • Explain the different option for data replication and the related implicationsrelated implications © 2012 SAP AG. All rights reserved. 28
  • 29. Overview Data provisioning at a glanceData provisioning at a glance This module covers the following topics:This module covers the following topics: • Load and replicate data • Suspend and resume data replication • Status monitoring in HANA Studio © 2012 SAP AG. All rights reserved. 29
  • 30. Launch Data Provisioning UI Data provisioning at a glanceData provisioning at a glance All further data provisioning steps t d f th HANAare executed from the HANA Studio. Therefore, switch to the HANA Studio, choose the perspective Information Modelerp p and start the quick launch. Select your system and start the Data Provisioning via the link ing section DATA. If you cannot enter this screen or do not see any data, verify if a data provisioning role was assigned to © 2012 SAP AG. All rights reserved. 30 your user.
  • 31. Start Load / Replication Data provisioning at a glanceData provisioning at a glance Press the respective button to Replication includes load and delta replication Load the current data of a table from the source system Replicate a table includes the load of the current data and the replication of all changes in the source system and delta replication Choose a table from the list or enter a search string to search for a specific table. Use the button AddUse the button Add to select the table. Once all relevant tables are selected, load / replication is triggered when popup is closed via button Finish. © 2012 SAP AG. All rights reserved. 31
  • 32. Start Load/Replication - Executed Activities Data provisioning at a glanceData provisioning at a glance Read module Structure mapping & transformation RFC Connection HANA Studio Application Table Logging Table DB Trigger Application Table Write module DB Connection SAP HANA systemSAP LT Replication ServerSAP source system Data provisioning can be managed via the HANA Studio modeler view using the data provisioning. If a table is started for load or replication, the LT runtime objects (reader, mapping and transformation and writer modules) are generated in the respective systems. If tables are selected for replication, also the © 2012 SAP AG. All rights reserved. 32 delta recording (logging table and DB trigger) is activated on the source system.
  • 33. Stop / Suspend Replication Data provisioning at a glanceData provisioning at a glance Press the respective button to Stop the replication and also to stop delta recording for that table (deletes DB trigger!) Suspend data replication but keep delta recording active Resume a previously suspended data replicationp y p p The table selection popup will look similar as for Load and Replication. In case of Stop Replication or Suspend, only those tables can be selected which are already in replication mode. In case of Resume only those tables can be selected which are in suspend mode. Please be aware that in case a replication is stopped and started again, the corresponding table will be dropped. The initial load must be repeated as delta recording was deactivated for a certain time and changes might not be recorded. So in case you only want to pause the delta replication use the mode Suspend andSo in case you only want to pause the delta replication, use the mode Suspend and Resume as delta recording is not deactivated and the replication can be continued without a need of a new initial data load. © 2012 SAP AG. All rights reserved. 33
  • 34. Stop/Suspend Replication - Executed Activities Data provisioning at a glanceData provisioning at a glance Stop data replication Delete trigger & Log. tab. Application Table Logging Table DB Trigger Application table Stop replication SAP HANA systemSAP LT Replication ServerSAP source system Stop data replication Application table Logging table DB Trigger Application table Suspend replication SAP HANA systemSAP LT Replication ServerSAP source system SAP HANA systemSAP LT Replication ServerSAP source system Continue data replication Application table Logging table DB Trigger Application table © 2012 SAP AG. All rights reserved. 34 Resume replication SAP HANA systemSAP LT Replication ServerSAP source system
  • 35. Status Monitoring in HANA Studio Data provisioning at a glanceData provisioning at a glance The load / replication status can be monitored in the Data Load Management ithi th d t i i i t l I thi ti th t t t f llscreen within the data provisioning tool. In this section, the current status of all relevant tables of the selected source system / target schema is displayed. © 2012 SAP AG. All rights reserved. 35
  • 36. Summary Data provisioning at a glanceData provisioning at a glance You should now be able to:You should now be able to: • Explain the different option for data replication and the related implicationsreplication and the related implications © 2012 SAP AG. All rights reserved. 36
  • 37. Positioning and Key Concepts Unit 1: Data Provisioning using SLT Data Replication at a Glance Overview on Configuration Aspects SLT based transformation concepts Transformation of Data SLT based transformation concepts Selective Data Replication Extension of (target) table structure Specific Considerations
  • 38. Objectives SLT based transformation conceptsSLT based transformation concepts At the end of this Lesson you will be able to:At the end of this Lesson you will be able to: • Explain the basics of the SLT based transformation conceptsconcepts • Leverage the data processing and transformation process • Explain which tables and fields has to be specify for a transformation rule © 2012 SAP AG. All rights reserved. 38
  • 39. Overview SLT based transformation conceptsSLT based transformation concepts This module covers the following topics:This module covers the following topics: • Details on the basic concept of SLT based transformation O f f f• Overview on key tables and field to be specified for a transformation • Naming conventions to be used for a transformation rule • Trigger conditions in detail © 2012 SAP AG. All rights reserved. 39
  • 40. Concept SLT based transformation conceptsSLT based transformation concepts The main purpose of SAP HANA is reporting data of particular ERP content. Generally this will be done with an one-to-one replication of ERP table into the new database. Depending on the customer-specific requirement, it’s sometimes necessary to filter, to change, or to extend the original data within the load process into HANA. Key Use Cases:y • Conversion  Change data and/or table-structure within datag replication/loading • Filtering  Reduce number of records to be replicated © 2012 SAP AG. All rights reserved. 40
  • 41. Concept SLT based transformation conceptsSLT based transformation concepts Currently, transformation & filtering topics are only provided by project base. (Only for SAP lead projects) © 2012 SAP AG. All rights reserved. 41
  • 42. Concept - Data Processing SLT based transformation conceptsSLT based transformation concepts Start of Replication Cycle Get next portion from source 1 2 RFC Connection … Loop through portion 4 3 Map fields of a record to sender structure DB Connection … S t SAP LT R li ti S Data Portions 5 Add record to sender portion SAP HANA t Data Portions Source system SAP LT Replication Server SAP HANA system  The data for transformation will be split into portions (default: load: 10,000 lines, replication: 5,000 lines)  The portions will be processed successively, mapped, and transferred to sender  Extension of functionality (for example data conversion) is possible at several points of the process using ABAP includes  Transformation rules © 2012 SAP AG. All rights reserved. 42  Implementation of these rules by maintaining table IUUC_ASS_RUL_MAP of the LT Replication Server
  • 43. Implementation of Rules within Transformation Process SLT based transformation conceptsProcess SLT based transformation concepts Steps of implementation:p p 1. Create ABAP include containing the coding to change fields  Usage of naming convention for parameter and table fields to h d t t b li t dchange data to be replicated 2. Maintain table IUUC_ASS_RUL_MAP to use the defined rule  Generally there are two types of transformations rules Generally, there are two types of transformations rules Event-based rules More flexible than parameter-based rules Knowledge of data processing within the SAP LT Replication Server needed to select the right event for the specific business scenario Parameter-based rules Less flexible than event-based rules Easy to create by using parameters © 2012 SAP AG. All rights reserved. 43
  • 44. Fields of IUUC_ASS_RUL_MAP SLT based transformation conceptsSLT based transformation concepts Fields of table IUUC_ASS_RUL_MAP (residing on SAP LT Replication Server) MT_ID The scheme name has a corresponding mass transfer ID. Enter “SAP” if you want to create a template for all mass transfer IDs created in future or enter an existing mass transfer ID if you want to restrict the settings to a specific mass transfer. To get the MT_ID for your schema name (=”Mass transfer XXX”), use Transaction: LTR TABNAME Name of the table of sender system BASISVERSION Enter the Basis Release of Source System (for example: 620, 700, … ). You can obtain it from: S t  St t  Cli k ‘C t I f ti ’  SAP BASIS l )System  Status  Click on ‘Component Information’  SAP_BASIS release). For non-Sap sources, use the SAP_BASIS release of the SLT system. EVENT (not used for parameter rules) Enter event (BOP, BOT etc.) for event-based rule. FIELDNAME (not used for event-based rules) Enter the name of the receiver field the mapping rule should be assigned to IMP_PARAM_1..3 (not used for event-based rules) Use those columns to define the import parameters you need. You can either set a sender fieldp p y name into this column or a literal (use quotes for literals, for example, ‘1000’) If no parameter has to be used within the rule, IMP_PARAM_1 has to be set to ‘DUMMY’! INCLUDE Name of the include containing the mapping rule. Name can be defined individually. Recommended naming convention: ZIUUC_<tab_name>_<fieldname> (that is, © 2012 SAP AG. All rights reserved. 44 ZIUUC_DD03L_AS4LOL)
  • 45. Event-Based Rules SLT based transformation conceptsSLT based transformation concepts Start Load / Replication BOP – Begin of Processing BOP (Begin of Processing):  Processed only once, before the data transfer really starts.BOP – Begin of Processing DO Get next portion from source system BOT – Begin of Block y , y  Can be used to initialize certain global fields that might be used in subsequent events (for example, fill internal mapping tables) EOP (End of Processing):  Processed only once after the data transfer is completedBOT Begin of Block LOOP AT source BOL – Begin of Loop MOVE-CORRESPONDING  Processed only once, after the data transfer is completed. BOT (Begin of Block):  Access to all data records of a portion read from the sender system EOT (End of Block): source TO target BOR – Begin of Record individual field mapping  Access to all data records immediately before they are passed to the receiver system BOL (Begin of Loop):  Like BOT if only one table is included in the conversion object; in case of objects f EOR – End of Record EOL – End of Loop ENDLOOP with multiple tables, it can be applied to each specific table EOL (End of Loop):  Like EOT if only one table is included in the conversion object; in case of objects with multiple tables, it can be applied to each specific table Write to target system EOT – End of Block ENDDO BOR (Begin of Record):  This event is processed before the field mapping of the individual fields is started. EOR (End of Record):  This event is processed after the field mapping of the individual fields of a certain © 2012 SAP AG. All rights reserved. 45 EOP – End of processing p pp g data record has finished.
  • 46. Parameters and Field Variables within Includes SLT based transformation conceptsSLT based transformation concepts Parameter Rules: Sender (source) field:Sender (source) field: Defined as import parameters in table IUUC_ASS_RUL_MAP fields IMP_PARAM_1/2/3 Addressed in the include using the following name: IMP_PARAM_1: i_<fieldname>_1 (for example, i_mandt_1) IMP PARAM 2: i <fieldname> 2IMP_PARAM_2: i_<fieldname>_2 IMP_PARAM_3: i_<fieldname>_3 If you have defined a literal the technical name will be: IMP_PARAM_1: i_p1 IMP PARAM 2 i 2IMP_PARAM_2: i_p2 IMP_PARAM_3: i_p3 Receiver (target) field: Defined in table IUUC_ASS_RUL_MAP field FIELDNAME Add d i h i l d i h f ll i SKIP_RECORD can be used in the code Addressed in the include using the following name: e_<fieldname> (for example, e_mandt). Event based Rules and Parameter Rules Fields can be directly addressed using field symbols (event BOL and EOL only) Sender (source) field of the table: <wa_s_(tab_name)>-<field> (for example, <wa_s_mara>-mandt) Receiver (target) field of the table: © 2012 SAP AG. All rights reserved. 46 ( g ) <wa_r_(tab_name)>-<field> (for example, <wa_r_mara>-mandt)
  • 47. Define the Trigger Condition SLT based transformation conceptsSLT based transformation concepts Trigger condition has to be defined in the table IUUC_SPC_PROCOPT. Based on the database of the source system, different syntaxes are adapted. Field ActionField Action MT_ID If you want to create a template for all mass transfer IDs created in future, enter “SAP” or enter an existing mass transfer ID if you want to restrict the settings to a specific mass transfer. TABNAME Enter the name of the table in the sender system here.y DBSYS Enter the database type of the source system. LINE_NO You can specify multiple lines if the condition is too complex to be filled in only one line. LINE Enter the trigger condition here. Only when the data change fulfills the condition , itgg y g will be recorded into the logging table for the SLT replication. DBSYS Syntax Sample ADABAS D fi ld1 ' l 0' AND fi ld2 IN ( ' l 1' ' l 2' ) AS4LOCAL 'N'ADABAS D field1 = 'value0' AND field2 IN ( 'value1', 'value2' ) AS4LOCAL = 'N' DB2 ___."field1" = 'value0' AND ___."field2" IN ( 'value1', 'value2' ) ___."AS4LOCAL" = 'N' DB6 ___.field1 = 'value0' AND ___.field2 IN ( 'value1', 'value2' ) ___.AS4LOCAL = 'N' MSSQL field1 = 'value0' AND field2 IN ( 'value1', 'value2' ) AS4LOCAL = 'N' © 2012 SAP AG. All rights reserved. 47 ORACLE :___.field1 = 'value0' AND :___.field2 IN ( 'value1', 'value2' ) :___. AS4LOCAL = 'N'
  • 48. Define the Trigger Condition SLT based transformation conceptsSLT based transformation concepts In this example, we want to customize the trigger directly in the source system in a way that only changes to the data with AS4LOCAL = ‘N’ will be d drecorded. © 2012 SAP AG. All rights reserved. 48
  • 49. Define the Trigger Condition SLT based transformation conceptsSLT based transformation concepts Another example, filtering will be done based on Company Code (BUKRS field). Only company codes with the value ‘1000’ will be replicated to the HANA tHANA system Please note: trigger filtering will only work for replication phase. If it is required to filter the table during the initial load phase, an additional event (or parameter) filter is also necessary! © 2012 SAP AG. All rights reserved. 49
  • 50. Summary SLT based transformation conceptsSLT based transformation concepts You should now be able to:You should now be able to: • Explain the basics of the SLT based transformation concepts • Leverage the data processing and transformation process • Explain which tables and fields has to be specify for a transformation ruletransformation rule © 2012 SAP AG. All rights reserved. 50
  • 51. Positioning and Key Concepts Unit 1: Data Provisioning using SLT Data Replication at a Glance Overview on Configuration Aspects SLT based transformation concepts Transformation of Data SLT based transformation concepts Selective Data Replication Extension of (target) table structure Specific Considerations
  • 52. Objectives Selective data replicationSelective data replication At the end of this Lesson you will be able to:At the end of this Lesson you will be able to: • Explain the benefit of filtering • Explain the concept of filtering within SLT • Specify your own filtering rule © 2012 SAP AG. All rights reserved. 52
  • 53. Business Example Selective data replication / filteringSelective data replication / filtering Reduce Number of Records to Be Replicated by Filter DBRFC Reduce Number of Records to Be Replicated by Filter ConnectionConnection SAP HANA systemSAP LT Replication ServerSource system SAP HANA systemSAP LT Replication ServerSource system ImplementationScenarios Implementation • Either by trigger adjustment in source system or by rules (event-based or parameter-based) Scenarios  Replicating certain data only  Only data of specific years should be used in HANA, for instance © 2012 SAP AG. All rights reserved. 53 for instance Replication of data active tables as they are in DDIC tables DD02l, DD03l etc.
  • 54. Overview Selective data replicationSelective data replication This module covers the following topics:This module covers the following topics: • The concept of filtering data for replication D il d l f diff fil i• Detailed examples of different filtering use cases • Examples for parameter and event-based rules © 2012 SAP AG. All rights reserved. 54
  • 55. Concept - Filtering Selective data replicationSelective data replication Conditional filter (in SLT) by parameter-based or event-based rules  To skip a record from load and replication macro SKIP_RECORD can be used in the code of the include. In fact, all data (means not filtered data) will be transferred from the source system to SAP LT Replication Server but not forwarded to HANAReplication Server, but not forwarded to HANA  means SLT system will read all data from the source and write only relevant data into HANA. No database-specific knowledge needed Valid for both initial load and replicationp Selected delta replication (“Trigger Adjustments”) Done by trigger adjustment directly of data base of the source system  Will be implemented using table IUUC_SPC_PROCOPT. For experts only Database specificDatabase-specific Will be implemented in source system Decreases the total amount of data to be extracted from source system Performance advantages because of reduction of triggered and transferred data © 2012 SAP AG. All rights reserved. 55 Only valid for replication data; it is not working for initial load.
  • 56. Example: Filtering by Company Code Selective data replicationdata replication Realized with a event-based rule RESULT: Only records where MJAHR(Fi lY ) 1998‘MJAHR(FiscalYear ) = ‚1998‘ were transferred to HANA: © 2012 SAP AG. All rights reserved. 56
  • 57. Example: Filtering by Fiscal Year Selective data replicationreplication Realized with a t lparameter rule RESULT: Only records where MANDT = ‚800‘ and BUKRS = ‚3000‘ were transferred to HANA: © 2012 SAP AG. All rights reserved. 57
  • 58. Example: Filter by Event-Based Rule (1) Selective data replicationreplication Task: Filter and only load/replicate data with AS4LOCAL = ‘N’. © 2012 SAP AG. All rights reserved. 58
  • 59. Example: Filter by Event-Based Rule (2) Selective data replicationreplication For an event-based rule, “FIELDNAME” in table IUUC_ASS_RUL_MAP must be left blank In addition you do not need to specify the import parametersblank. In addition, you do not need to specify the import parameters. © 2012 SAP AG. All rights reserved. 59
  • 60. Summary Selective data replication / filteringSelective data replication / filtering You should now be able to:You should now be able to: • Explain the benefit of filtering • Explain the concept of filtering within SLT • Specify your own filtering rule © 2012 SAP AG. All rights reserved. 60
  • 61. Positioning and Key Concepts Unit 1: Data Provisioning using SLT Data Replication at a Glance Overview on Configuration Aspects SLT based transformation concepts Transformation of Data SLT based transformation concepts Selective Data Replication Extension of (target) table structure Specific Considerations
  • 62. Objectives Transformation of dataTransformation of data At the end of this Lesson you will be able to:At the end of this Lesson you will be able to: • Describe the benefit of the transformation of fields • Explain the concept of transforming data within SLT • Specify your own transformation rule © 2012 SAP AG. All rights reserved. 62
  • 63. Business Example Transformation dataTransformation data Reduce Number of Records to Be Replicated by Filterp y DB Connection RFC Connection ConnectionConnection SAP HANA SystemLT Replication ServerSource System Transformation of Data Scenarios Implementation 1. Create ABAP includes to define transformation rules 2. Maintain table IUUC_ASS_RUL_MAP Scenarios  To make certain fields anonymous  HR reporting  To fill initial fields To con ert nits or c rrenc and recalc late amo nts © 2012 SAP AG. All rights reserved. 63 3. Start data load / replication from HANA Studio To convert units or currency and recalculate amounts and values
  • 64. Overview Transformation of dataTransformation of data This module covers the following topics:This module covers the following topics: • The concept of transforming data for replication D il d l f diff i h f i• Detailed examples of different use cases with transformation needs • Examples for parameter and event-based rulesp p © 2012 SAP AG. All rights reserved. 64
  • 65. Example: Make Certain Fields Anonymous (1) Transformation of dataTransformation of data Scenario:  Within the example, the field ‘name’ of a table should be filled by ‘xxxx’. This could be done by parameter rules or event-based rules.  Since each table of a sender system can only be replicated into one target table of HANA, two identical tables in the source system were created to show the usage of both kind of rules Include of parameter rules: Z_Ex_1_PAR Incl de of e ent based r les Z E 1 EVENTInclude of event-based rules Z_Ex_1_EVENT 1. PARTNR MATNR NAME AMOUNT CURRENCY DATE 0000000001 1000Mr. ABC 100USD 20100201 0000000001 2000Mr. ABC 200USD 20110201 0000000002 1000Mr. XYZ 100USD 20110201 PARTNR MATNR NAME AMOUNT CURRENCY DATE 0000000001 1000XXXX 100USD 20100201 0000000001 2000XXXX 200USD 20110201 0000000002 1000XXXX 100USD 20110201 SAP HANA SystemSource System 0000000002 2000Mr. XYZ 200USD 20110301 0000000002 3000Mr. XYZ 300EUR 20100301 0000000002 1000XXXX 100USD 20110201 0000000002 2000XXXX 200USD 20110301 0000000002 3000XXXX 300EUR 20100301 © 2012 SAP AG. All rights reserved. 65 SAP HANA SystemSource System
  • 66. Example: Make Certain Fields Anonymous (2) Transformation of dataTransformation of data Define Include for Event-Based Rule Create include by T-Code SE38 Enter program name and press Create Popup: Enter title Choose type INCLUDE Program Choose status Test Program © 2012 SAP AG. All rights reserved. 66
  • 67. Example: Make Certain Fields Anonymous (3) Transformation dataTransformation data Event-based rule: © 2012 SAP AG. All rights reserved. 67
  • 68. Example: Make Certain Fields Anonymous (4) Transformation without changing table structure (scrambling of data) The according Parameter rule would be: © 2012 SAP AG. All rights reserved. 68
  • 69. Example: Make Certain Fields Anonymous (5) Transformation dataTransformation data Resulting data in HANA: Parameter rule: Event-based rule: © 2012 SAP AG. All rights reserved. 69
  • 70. Summary Transformation dataTransformation data You should now be able to:You should now be able to: • Describe the benefit of the transformation of fields • Explain the concept of transforming data within SLT • Specify your own transformation rule © 2012 SAP AG. All rights reserved. 70
  • 71. Positioning and Key Concepts Unit 1: Data Provisioning using SLT Data Replication at a Glance Overview on Configuration Aspects SLT based transformation concepts Transformation of Data SLT based transformation concepts Selective Data Replication Extension of (target) table structure Specific Considerations
  • 72. Objectives Extension of (target) table structureExtension of (target) table structure At the end of this Lesson you will be able to:At the end of this Lesson you will be able to: • Describe the benefit of extending target table structures • Explain the concept of extending a table • Specify your own extended structures © 2012 SAP AG. All rights reserved. 72
  • 73. Business Example Extension of (target) table structureExtension of (target) table structure Extension of Table Structures within Transformation DB Connection RFC Connection SAP HANA systemSAP LT Replication ServerSource system Scenarios T k t i fi ld  HR ti Implementation D fi t bl f t t t t To make certain fields anonymous  HR reporting  To fill initial fields or new fields of target table  To convert units or currency and recalculate amounts and values 1. Define tables of target structure 2. Maintain table IUUC_REPL_TABSTG 3. Create ABAP includes to define transformation rules 4 Maintain table IUUC ASS RUL MAP © 2012 SAP AG. All rights reserved. 73 4. Maintain table IUUC_ASS_RUL_MAP 5. Start data load / replication from HANA Studio
  • 74. Overview Extension of (target) table structureExtension of (target) table structure This module covers the following topics:This module covers the following topics: • The concept of extending target table structures D il d l f diff i h i d• Detailed examples of different use cases with extension needs • Examples for parameter and event-based rules © 2012 SAP AG. All rights reserved. 74
  • 75. Concept Extension of (target) table structureExtension of (target) table structure Use case: Due to the fact that the main purpose of HANA is reporting, it could be required that the data in HANA has to be enriched (that is, unified reporting currency) within the transformation from sender system to HANAwithin the transformation from sender system to HANA. Prerequisites • Definition of table strucure to be used in HANA  by maintaining table IUUC_REPL_TABSTG • Definition of rules to fill up the new tables fields  done by event-based rules or parameter rules © 2012 SAP AG. All rights reserved. 75
  • 76. Concept Extension of (target) table structureExtension of (target) table structure Steps to extend the table structure: 1. Create table of required structure either in sender system or in SLT system acting as a template for HANA M i t i t bl IUUC REPL TABSTG f th SAP LT R li ti S2. Maintain table IUUC_REPL_TABSTG of the SAP LT Replication Server: MT_ID  same MT_ID like in IUUC_ASS_RUL_MAP TABNAME  name of table in sender system to be replicated TARGET TYPE  name of table with structure to be used as template for tableTARGET_TYPE  name of table with structure to be used as template for table to be created in HANA TARGET_TYPE_LCL  ‘X’: table of target type was created in LT-Replication Server  ‚ ‚ : table of target type was created in sender system TARGET NAME  name of table to be created and used for replication in HANATARGET_NAME  name of table to be created and used for replication in HANA NO_DROP  data in HANA will not be deleted before the replication ROW_STORE  target table in HANA will be created as row table instead of column table RD_PORTION_SIZE  no of records per portion; empty means default value_ _ p p p y © 2012 SAP AG. All rights reserved. 76
  • 77. Example: Calculate Field of Extended Structure (1) Extension of (target) table structure and calculation of values Scenario: Within the example the field ‘AMOUNT_IN_EUR’ of the extended table should be calculated by a fixed exchange rate from field amount The name of table, which reflects the target type is ZIUUC_EX_2_TRGT Both rules can be used to calculate the new amount Include of parameter rules: Z_Ex_2_AMOUNT_IN_EUR_PAR Include of event-based rules Z_Ex_1_AMOUNT_IN_EUR_EVENT PARTNR MATNR NAME AMOUNT CURRENCY DATE NAME AMOUNT CURRENCY Amount_in_EUR1.PARTNR MATNR NAME AMOUNT CURRENCY DATE 0000000001 1000Mr. ABC 100USD 20100201 0000000001 2000Mr. ABC 200USD 20110201 0000000002 1000Mr. XYZ 100USD 20110201 0000000002 2000Mr. XYZ 200USD 20110301 Mr. ABC 100USD 150 Mr. ABC 200USD 300 Mr. XYZ 100USD 150 Mr. XYZ 200USD 300 SAP HANA SystemSource System 0000000002 3000Mr. XYZ 300EUR 20100301 Mr. XYZ 300EUR 300 © 2012 SAP AG. All rights reserved. 77
  • 78. Example: Calculate Field of Extended Structure (2) Extension of (target) table structureExtension of (target) table structure Create table of target structure Maintained table IUUC_REPL_TABSTG of LT Replication Server © 2012 SAP AG. All rights reserved. 78
  • 79. Example: Calculate Field of Extended Structure (3) Extension of (target) table structureExtension of (target) table structure Event-based rule: © 2012 SAP AG. All rights reserved. 79
  • 80. Example: Calculate Field of Extended Structure (4) Extension of (target) table structureExtension of (target) table structure Parameter rule © 2012 SAP AG. All rights reserved. 80
  • 81. Example: Calculate Field of Extended Structure (5) Extension of (target) table structureExtension of (target) table structure Resulting data in HANA: Parameter rule: Table ZIUUC_EX_2_PMOD Event-based rule: T bl ZIUUC EX 2 EMODTable ZIUUC_EX_2_EMOD © 2012 SAP AG. All rights reserved. 81
  • 82. Summary Extension of (target) table structureExtension of (target) table structure You should now be able to:You should now be able to: • Describe the benefit of extending target table structures • Explain the concept of extending a table • Specify your own extended structures © 2012 SAP AG. All rights reserved. 82
  • 83. Positioning and Key Concepts Unit 1: Data Provisioning using SLT Data Replication at a Glance Overview on Configuration Aspects SLT based transformation concepts Transformation of Data SLT based transformation concepts Selective Data Replication Extension of (target) table structure Specific Considerations
  • 84. Transformation Rules for Cluster Tables Specific considerationsSpecific considerations Apply SAP note 1662438 at first. After implementing the note, you should follow the steps (table BSEG as an example):( p ) 1. For initial load, you should create one entry in IUUC_ASS_RUL_MAP for BSEG and include program for BSEG table 2. For replication, you should create an addition entry in IUUC_ASS_RUL_MAP for RFBLG and include program for RFBLG table © 2012 SAP AG. All rights reserved. 84
  • 85. Date Field Format - Changes Specific considerationsSpecific considerations Table Setting : IUUC_ASS_RUL_MAP Include : ZIUUC_ZGRPA_THOC Records in source table Replicated records in HANA table © 2012 SAP AG. All rights reserved. 85
  • 86. A di – Client Specific vs. Cross Client Load / Replication Appendix – Type mapping from source system to HANA system – Mapping multiple sources into one target HANA DB schemapp g p g
  • 87. Cli t S ifiClient Specific vs. Cross Client Load / ReplicationCross Client Load / Replication
  • 88. Objectives Client Specific vs Cross Client Load / ReplicationClient Specific vs. Cross Client Load / Replication At the end of this Lesson you will be able to:At the end of this Lesson you will be able to: • Specify client specific or cross client load or replication for your business modelyour business model © 2012 SAP AG. All rights reserved. 88
  • 89. Overview Client Specific vs Cross Client Load / ReplicationClient Specific vs. Cross Client Load / Replication This module covers the following topics:This module covers the following topics: • The client specific load / replication procedure Th li t l d / li ti d• The cross client load / replication procedure • The advantage of client specific load © 2012 SAP AG. All rights reserved. 89
  • 90. Concept Client Specific vs Cross Client Load / Replication Per default, the SAP LT Replication Server loads and replicates all data of the defined tables Client Specific vs. Cross Client Load / Replication and replicates all data of the defined tables. Client specific tables are also loaded and replicated completely and not restricted to a certain client. Data load can be restricted by define some filter rules (described in the following slides) or by activating the client specific load and replication. Advantages of client specific load • Trigger is restricted automatically to the relevant client • Data load can be restricted to a smaller amount of data without manual defining filter rules • If the first key field after the client field is selective enough to be used in an access plan calculationenough to be used in an access plan calculation, reading type 1 can be used without adding an additional index. © 2012 SAP AG. All rights reserved. 90
  • 91. U it 2Unit 2: Approaching SAP HANA ModelingApproaching SAP HANA Modeling
  • 92. Objectives Approaching SAP HANA ModelingApproaching SAP HANA Modeling At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:  Take into account Persistency Considerations  Explain the different engine types in thep g yp SAP HANA Architecture  To choose the best views for the Information Model  To discuss some General Recommendations © 2012 SAP AG. All rights reserved. 92
  • 93. Overview Approaching SAP HANA ModelingApproaching SAP HANA Modeling This module covers the following topics:This module covers the following topics:  Persistency Considerations  SAP HANA Engine Overviewg  Choosing Views for the Information Model © 2012 SAP AG. All rights reserved. 93
  • 94. Persistency Considerations I Approaching SAP HANA ModelingApproaching SAP HANA Modeling Before start creating tables on HANA database you should take a little time toBefore start creating tables on HANA database, you should take a little time to think about your scenarios. Different scenarios have different requirements and for that also different persistency models. Here is a small checklist you should take into consideration: © 2012 SAP AG. All rights reserved. 94 take into consideration:
  • 95. Persistency Considerations II Approaching SAP HANA ModelingApproaching SAP HANA Modeling 1: Column Table 2: Analytical View 3: Calculation View (SQL) 4: Calculation View (CE Functions)View (SQL) (CE Functions) U Good for quick start with HANA. Shall be used for i l li ti Most recommended for analytical purpose, where read ti Good for quick build of scenarios with complex l l ti Th Recommended for analytical purpose using complex calculation, hi h t bUsage simple applications and showcases. operations on mass data is required. calculations. The model is usually simple and contains only a few fields. which can not be expressed in an analytic view. Pros No additional modeling required. For most clients easy to consume. Very high performance on SELECT. Supported by modeling. Well optimized Building calculation views via SQL syntax is easy. Client queries can be well optimized and parallelized. Usually better performance results than SQL. optimized. No support for analytical privileges, multi language and Limitations in regards to functions. Client queries can be less optimized and could Syntax is different compared to well-known SQL Language Cons multi language and client handling. Complex calculation and logic shifted to client side. In general low and could significantly be slower compared to other models. SQL Language. © 2012 SAP AG. All rights reserved. 95 general low performance.
  • 96. SAP HANA Engine Overview I Approaching SAP HANA ModelingApproaching SAP HANA Modeling SQL OptimizerSQL Optimizer Calculation EngineCalculation Engine OLAP Engine OLAP Engine Join Engine Join Engine Row Store EngineRow Store Engine Column StoreColumn Store Row StoreRow Store © 2012 SAP AG. All rights reserved. 96
  • 97. SAP HANA Engine Overview II Approaching SAP HANA ModelingApproaching SAP HANA Modeling Calculation ViewsViews OLAPOLAP J iJ i Calculation EngineCalculation Engine A l ti Att ib tOLAP Engine OLAP Engine Join Engine Join Engine Analytic Views Attribute Views © 2012 SAP AG. All rights reserved. 97
  • 98. General Recommendations Approaching SAP HANA ModelingApproaching SAP HANA Modeling 1. Avoid transfer of large result sets Client ApplicationClient Application A G Y Z between the SAP HANA DB and client (e.g. by HAVING, TOP, LIMIT, …) 2 Do calculation after aggregation 1 2 3 Calculation EngineCalculation Engine A G Y 2. Do calculation after aggregation 3. Avoid complex expressions (IF, CASES…) 4 Reduce data transfer between the 4 5 OLAP E i OLAP E i Join E i Join E i A B C D G Y 4. Reduce data transfer between the engines 5. Do aggregate data records (e.g. using GROUP BY, reducing 5 6 7EngineEngine EngineEnginecolumns) 6. Join on Key Columns 7. Avoid calculation before 6 7 Column Store Column Store Row Store Row Store A B C D D Gaggregation on line item level 8. Filter data amounts as early as possible in the lower layers (CONSTRAINTS 8 8 © 2012 SAP AG. All rights reserved. 98 (CONSTRAINTS, WHERE clause…) 8
  • 99. Choosing Views for the Information Model Approaching SAP HANA ModelingApproaching SAP HANA Modeling Analyze Data inAnalyze Data in HANA DB Use Star-Use Sta schema or Aggregation? Use Only Joins and Calculated Yes No NoAnalytic View Expressions? Try Graphical Calculation View Use Attribute View Yes No OK Not enough View Use CalcScenario or Scripted CalcView with CE F ti Use Graphical Calculation View OK OK Not enough CE-Functions Use CalcScenario or using CE-Functions Use Scripted Calculation View or Procedures © 2012 SAP AG. All rights reserved. 99 Procedures
  • 100. Summary Approaching SAP HANA ModelingApproaching SAP HANA Modeling You should now be able to:You should now be able to:  Take into account Persistency Considerations  Explain the different engine types in thep g yp SAP HANA Architecture  To choose the best views for the Information Model  To discuss some General Recommendations © 2012 SAP AG. All rights reserved. 100
  • 101. U it 3Unit 3: Connecting TablesConnecting Tables
  • 102. Objectives Connecting TablesConnecting Tables At the end of this Lesson you will be able to:At the end of this Lesson you will be able to: • Explain differences between Inner Join, Left Outer Join, Right Outer Join, Full Outer Join, Text Join and referential Join when connecting tables. • Explain how using Standard Union and Union with constant values.constant values. © 2012 SAP AG. All rights reserved. 102
  • 103. Business Example Connecting TablesConnecting Tables Sales Order Customer State We want to connect the Sales Order table to the Customer table linked to the State table.the State table. © 2012 SAP AG. All rights reserved. 103
  • 104. Overview Connecting TablesConnecting Tables This module covers the following topics:This module covers the following topics: How to connect tables using • Inner Join• Inner Join • Left Outer Join • Right Outer Joing • Full Outer Join • Text Join • Referential Join • Union © 2012 SAP AG. All rights reserved. 104
  • 105. Inner Join – Attribute View Connecting Tables Inner Join returns rows when there is at least one match in both sides of the join. Connecting Tables Inner is used even if it’s not added. STATE SNAME AL ALABAMA 1 WERNER 10 MI MI MICHIGAN 2 MARK 11 MI 3 TOM 12 TX 4 BOB 13 TX C_ID CNAME AGE STATE Attribute View Customer (3 & 4) is not returned due to no corresponding entry (TX) in the t t t bl  state table. © 2012 SAP AG. All rights reserved. 105
  • 106. Inner Join – Analytical View Connecting TablesConnecting Tables Analytical ViewAnalytical View AMOUNT ORDER_ID C_ID 100 4 4 100 8 77 STATE SNAME 100 1 1 AL ALABAMA Be aware that Inner Joins lose facts with fragmented  100 1 1 AL ALABAMA 100 2 1 1 WERNER 10 MI MI MICHIGAN 100 3 2 2 MARK 11 MI 3 TOM 12 TX 4 BOB 13 TX dimensions. Order (4 & 77) lost due to no corresponding customer and state record © 2012 SAP AG. All rights reserved. 106 4 BOB 13 TX C_ID CNAME AGE STATE state record
  • 107. Inner Join and Design Time Filters Connecting TablesConnecting Tables Design time filter applied (AGE < 13) of left/central table Design time filter applied to (STATE = MI) on right table Both design time filters are applied first before the join is executedbefore the join is executed © 2012 SAP AG. All rights reserved. 107
  • 108. Left Outer Join – Attribute View Connecting Tables Attribute View Connecting Tables • Left Outer Join returns all rows from the left table even if there are no matches in the right Attribute Viewtable even if there are no matches in the right table. • This join is popular in Analytical Views whereby h A ib i i j i d h f blthe Attribute view is joined to the fact table. STATE SNAME AL ALABAMA 1 WERNER 10 MI MI MICHIGAN 2 MARK 11 MI2 MARK 11 MI 3 TOM 12 TX 4 BOB 13 TX C_ID CNAME AGE STATE   © 2012 SAP AG. All rights reserved. 108 No matches for TX in the right table.
  • 109. Left Outer Join – Analytical View Connecting TablesConnecting Tables Analytical ViewAnalytical View AMOUNT ORDER_ID C_ID STATE SNAME 100 1 1 C ID CNAME AGE STATE AL ALABAMA Customer (TOM) is 100 1 1 C_ID CNAME AGE STATE AL ALABAMA 100 2 1 1 WERNER 10 MI MI MICHIGAN 100 3 2 2 MARK 11 MI 3 TOM 12 TX 100 4 4 4 BOB 13 TX not returned due to no corresponding sale item record in sales order table  © 2012 SAP AG. All rights reserved. 109 100 4 4 4 BOB 13 TX 100 8 77 table.
  • 110. Left Outer Join and Design Time Filters Connecting TablesConnecting Tables Design time filter applied (AGE < 13) of left/central table Design time filter applied to (STATE = MI) on right table Filters are applied to both tables and thenFilters are applied to both tables and then afterwards the join is executed. Due to the left outer join TOM will be included in the result set even though he resides in TX © 2012 SAP AG. All rights reserved. 110 g
  • 111. Right Outer Join – Attribute View Connecting TablesConnecting Tables • Right Outer Join returns all the rows from the right table even if there are no matches in the Attribute Viewright table, even if there are no matches in the left table. Attribute View  STATE SNAME AL ALABAMA 1 WERNER 10 MI MI MICHIGAN Alabama is included in the result set, though there is no match in the left table.  2 MARK 11 MI 3 TOM 12 TX 4 BOB 13 TX C_ID CNAME AGE STATE © 2012 SAP AG. All rights reserved. 111
  • 112. Right Outer Join – Analytical View Connecting TablesConnecting Tables Analytical ViewAnalytical View AMOUNT ORDER_ID C_ID 100 4 4 100 8 77 STATE SNAME ? ? ? ? ? ? AL ALABAMA Right Outer Join results in NULL measure.  ? ? ? ? ? ? AL ALABAMA 100 1 1 100 2 1 1 WERNER 10 MI MI MICHIGAN 100 3 2 2 MARK 11 MI 3 TOM 12 TX  © 2012 SAP AG. All rights reserved. 112 3 TOM 12 TX 4 BOB 13 TX C_ID CNAME AGE STATE
  • 113. Full Outer Join Connecting TablesConnecting Tables • Full Outer Join is neither left nor right it's both It includes all the rows- it's both. It includes all the rows from both of the tables or result sets participating in the Join. • When no matching rows exist for rows on the left side or right side of the Join, you see NULL values. • Full Outer Join is supported only in Attribute Views and NOT within Analytical Views. STATE SNAME ? ? ? ? AL ALABAMA? ? ? ? AL ALABAMA 1 WERNER 10 MI MI MICHIGAN 2 MARK 11 MI MI MICHIGAN 3 TOM 12 TX ? ? 4 BOB 13 TX ? ? © 2012 SAP AG. All rights reserved. 113 4 BOB 13 TX ? ? C_ID CNAME AGE STATE
  • 114. Text Join Connecting Tables • Text Join are used to join a text table to a master data table Connecting Tables table to a master data table. • Text Joins acts as a Left Outer join and can be used with SAP tables where the language column (SPRAS) is present. • For each attribute it is possible toFor each attribute it is possible to define a description mapping that will be specific to the end users language. © 2012 SAP AG. All rights reserved. 114
  • 115. Referential Join Connecting TablesConnecting Tables Relies on Referential Integrity Each entry in the left table MUST have di t i th i ht t bla corresponding entry in the right table Optimized for performance Join is only performed if at least one field from the right table is requested. Like an Inner Join when join is executed When field from both tables are requested an inner Join is performed. Only available in OLAP engine Referential join is a feature available only in OLAP engine, when testing Attribute Views outside the context of a Analytical view then the Join EngineAnalytical view then the Join Engine will perform a Inner Join. © 2012 SAP AG. All rights reserved. 115
  • 116. Referential Join – Attribute View Connecting TablesConnecting Tables *** Referential join is a feature available only in OLAP engine, when testing Attribute Views outside the context of a Analytical view then the Join Engine will perform a Inner Join. As a result TOM and BOM will not be returned. © 2012 SAP AG. All rights reserved. 116
  • 117. Referential Join – Analytical View Connecting TablesConnecting Tables *** Customer 77, TOM and BOB are not returned since C_ID is a Joined key field resulting in an Inner Join. BOB has no corresponding Texas description and TOM has no corresponding facts. *** TOM is not returned due to no corresponding facts in the sales tablecorresponding facts in the sales table *** The Amount includes all facts including Customer 77 and BOBs order even through master records do not exist reason is when only non-key fields are selected from the left table, all joins to other tables will be omitted © 2012 SAP AG. All rights reserved. 117 tables will be omitted
  • 118. Referential Join – Using MDX Connecting TablesConnecting Tables Like Inner Join No referential integrity of data in both tables No Join processed © 2012 SAP AG. All rights reserved. 118 p
  • 119. Calculation View- Join vs. Union Connecting TablesConnecting Tables Caution!! Do not JOIN Analytical Views, this could lead to performance i li ti I t d U i ith t t l h ki ithimplications. Instead use Union with constant values when working with multiple fact tables © 2012 SAP AG. All rights reserved. 119
  • 120. Unions Connecting TablesConnecting Tables • Unions are used to combine the result-set of two or more SELECT statements. • The Union operation is popular for combining plan and actual values in CO-PA. • Note that Unions are not supported in modeled artifacts (Attribute Views or Analytical Views) d l b li d i C l l ti Viand can only be realized in Calculation Views. • Refrain from Joining Analytical views; rather use Unions with Constant values. • Unions with Constant values are supported within Graphical Calculation Views and the UNION operator can accept 1..N input sources. • Whereas a Script Based calculation view’s comparable CE UNION ALL function can onlyWhereas a Script Based calculation view s comparable CE_UNION_ALL function can only accept 2 input sources at a given time. © 2012 SAP AG. All rights reserved. 120
  • 121. Standard Union Connecting TablesConnecting Tables © 2012 SAP AG. All rights reserved. 121
  • 122. Union with Constant Values Connecting TablesConnecting Tables © 2012 SAP AG. All rights reserved. 122
  • 123. Summary Connecting TablesConnecting Tables You should now be able to:You should now be able to: • Explain differences between Inner Join, Left Outer Join, Right Outer Join, Full Outer Join, Text Join and referential Join when connecting tables. • Explain how using Standard Union and Union with constant valuesconstant values. © 2012 SAP AG. All rights reserved. 123
  • 124. Creating Attribute Views Unit 4: Advanced Modeling Creating Restricted & Calculated Measures Using Hierarchies Using Filter Operations SAP HANA SQL - Introduction Using Filter Operations Using Variables SQLScript and Procedures Using Currency Conversion
  • 125. Objectives Creating Attribute ViewsCreating Attribute Views At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:  Explain how to create derived attribute views,  Explain how to create shared attribute views,p ,  Explain how to create calculated attributes,  Explain how to create time characteristics based attribute views,  Explain how to create stand alone text tables.Explain how to create stand alone text tables. © 2012 SAP AG. All rights reserved. 125125
  • 126. Overview Creating Attribute ViewsCreating Attribute Views This module covers the following topics:This module covers the following topics:  Derived Attribute Views,  Shared Attribute Views  Calculated Attributes  Time Characteristics Based Attribute Views  Stand Alone Text TablesStand Alone Text Tables © 2012 SAP AG. All rights reserved. 126126
  • 127. Concept Attribute views Creating Attribute ViewsCreating Attribute Views Calculation Views Calculation EngineCalculation Engine OLAPOLAP JoinJoin Calculation EngineCalculation Engine Analytic Attribute EngineEngine EngineEngine a y c Views Attribute Views © 2012 SAP AG. All rights reserved. 127127
  • 128. Derived Attribute Views Creating Attribute ViewsCreating Attribute Views © 2012 SAP AG. All rights reserved. 128© 2012 SAP AG. All rights reserved. 128
  • 129. Shared Attribute Views Creating Attribute ViewsCreating Attribute Views © 2012 SAP AG. All rights reserved. 129© 2012 SAP AG. All rights reserved. 129
  • 130. Calculated Attributes Creating Attribute ViewsCreating Attribute Views © 2012 SAP AG. All rights reserved. 130© 2012 SAP AG. All rights reserved. 130
  • 131. Time Characteristics Attribute View Creating Attribute ViewsCreating Attribute Views © 2012 SAP AG. All rights reserved. 131© 2012 SAP AG. All rights reserved. 131
  • 132. Creating Stand Alone Text Tables Creating Attribute ViewsCreating Attribute Views © 2012 SAP AG. All rights reserved. 132© 2012 SAP AG. All rights reserved. 132
  • 133. Summary Creating Attribute ViewsCreating Attribute Views You should now be able to:You should now be able to:  Explain how to create derived attribute views,  Explain how to create shared attribute views,p ,  Explain how to create calculated attributes,  Explain how to create time characteristics based attribute views,  Explain how to create stand alone text tables.Explain how to create stand alone text tables. © 2012 SAP AG. All rights reserved. 133133
  • 134. Creating Attribute Views Unit 4: Advanced Modeling Creating Restricted & Calculated Measures Using Hierarchies Using Filter Operations SAP HANA SQL - Introduction Using Filter Operations Using Variables SQLScript and Procedures Using Currency Conversion
  • 135. Objectives Using HierarchiesUsing Hierarchies At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:  Explain how to implement leveled hierarchies,  Explain how to leverage parent / child hierarchies,Explain how to leverage parent / child hierarchies,  Explain how to create attribute based hierarchies. © 2012 SAP AG. All rights reserved. 135135
  • 136. Overview Using HierarchiesUsing Hierarchies This module covers the following topics:This module covers the following topics:  Implement Leveled Hierarchies  Leverage Parent Child HierarchiesLeverage Parent Child Hierarchies  Create Attribute Based Hierarchies © 2012 SAP AG. All rights reserved. 136136
  • 137. Concept Using Hierarchies Using HierarchiesUsing Hierarchies For example, consider the TIME attribute view with YEAR, QUARTER, and Hierarchies in HANA could only p , , , MONTH attributes. You can use these YEAR, QUARTER, and MONTH attributes to define a hierarchy for the TIME attribute view as follows: Hierarchies in HANA could only be used by reporting tools using MDX connectivity © 2012 SAP AG. All rights reserved. 137137
  • 138. Using Hierarchies Using HierarchiesUsing Hierarchies Let's have a look at the following hierarchy, a minimal example : Hierarchies in HANA could only g y p Hierarchies in HANA could only be used by reporting tools using MDX connectivity © 2012 SAP AG. All rights reserved. 138138
  • 139. Implement Leveled Hierarchies Using HierarchiesUsing Hierarchies Level Hierarchies are hierarchies that are rigid in nature, where the root and theg , child nodes can be accessed only in the defined order. For example, organizational structures, and so on. This page describes step-by-step how to create a SAP HANA Database hierarchy view byDatabase hierarchy view by means of the SAP Hana Modeler. Create a table providing somep g hierarchy source data : © 2012 SAP AG. All rights reserved. 139© 2012 SAP AG. All rights reserved. 139
  • 140. Implement Leveled Hierarchies Using HierarchiesUsing Hierarchies If necessary, create ay, package in the Modeler. Create an attribute view in the Modeler : © 2012 SAP AG. All rights reserved. 140© 2012 SAP AG. All rights reserved. 140
  • 141. Implement Leveled Hierarchies Using HierarchiesUsing Hierarchies Select the source table as basis for the view : © 2012 SAP AG. All rights reserved. 141© 2012 SAP AG. All rights reserved. 141
  • 142. Implement Leveled Hierarchies Using HierarchiesUsing Hierarchies Select the attributes that should be part of the source view : © 2012 SAP AG. All rights reserved. 142© 2012 SAP AG. All rights reserved. 142
  • 143. Implement Leveled Hierarchies Using HierarchiesUsing Hierarchies Switch to the Hierarchies tab, press the Create button and define hierarchy name and structure type, currently leveled : © 2012 SAP AG. All rights reserved. 143© 2012 SAP AG. All rights reserved. 143
  • 144. Implement Leveled Hierarchies Using HierarchiesUsing Hierarchies Add the source attributes to the hierarchy. For a leveled hierarchy, add the attributes to the hierarchy in the correct level order from top to bottom : © 2012 SAP AG. All rights reserved. 144© 2012 SAP AG. All rights reserved. 144
  • 145. Implement Leveled Hierarchies Using HierarchiesUsing Hierarchies Validate the hierarchy,y, close, and save. And then activate the attribute view : © 2012 SAP AG. All rights reserved. 145© 2012 SAP AG. All rights reserved. 145
  • 146. Leverage Parent Child Hierarchies Using HierarchiesUsing Hierarchies Value hierarchies are hierarchies that are very similar to BOM (parent and child) and Employee Master(Employee and Manager). The hierarchy can be explored based on a selected parent, and there are cases where the child can be a parent. This hierarchy is derived based on the value. If you want to create a parent- child hierarchy, set the child/successor attribute's property "Principal Key" to True : © 2012 SAP AG. All rights reserved. 146© 2012 SAP AG. All rights reserved. 146
  • 147. Leverage Parent Child Hierarchies Using HierarchiesUsing Hierarchies Switch to the Hierarchies tab, press the Create button and define hierarchy name and structure type, currently parent-child : © 2012 SAP AG. All rights reserved. 147© 2012 SAP AG. All rights reserved. 147
  • 148. Leverage Parent Child Hierarchies Using HierarchiesUsing Hierarchies For a parent-childp hierarchy, select the child/successor attribute as Key Attribute and the parent/predecessor attribute as Parent attribute : Then, validate, close, d ti t thsave and activate the attribute view. © 2012 SAP AG. All rights reserved. 148© 2012 SAP AG. All rights reserved. 148
  • 149. Create Attribute Based Hierarchies Using HierarchiesUsing Hierarchies © 2012 SAP AG. All rights reserved. 149© 2012 SAP AG. All rights reserved. 149
  • 150. Create Attribute Based Hierarchies Using HierarchiesUsing Hierarchies © 2012 SAP AG. All rights reserved. 150© 2012 SAP AG. All rights reserved. 150
  • 151. Summary Using HierarchiesUsing Hierarchies You should now be able to:You should now be able to:  Explain how to implement leveled hierarchies,  Explain how to leverage parent / child hierarchies,Explain how to leverage parent / child hierarchies,  Explain how to create attribute based hierarchies. © 2012 SAP AG. All rights reserved. 151151
  • 152. Creating Attribute Views Unit 4: Advanced Modeling Creating Restricted & Calculated Measures Using Hierarchies Using Filter Operations SAP HANA SQL - Introduction Using Filter Operations Using Variables SQLScript and Procedures Using Currency Conversion
  • 153. Objectives Creating Restricted & Calculated MeasuresCreating Restricted & Calculated Measures At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:  Understand the benefits of Restricted Measures  Use Restricted Measures  Understand when to use Calculated Measures  Create Calculated Measures © 2012 SAP AG. All rights reserved. 153153
  • 154. Overview Using Filter OperationsUsing Filter Operations This module covers the following topics:This module covers the following topics:  Concepts for Restricted & Calculated Measures  Using Restricted MeasuresUsing Restricted Measures  Creating Calculated Measures © 2012 SAP AG. All rights reserved. 154154
  • 155. The benefits of Restricted Measures Creating Restricted & Calculated Measures What is a Restricted Measure? Creating Restricted & Calculated Measures C t M th A t • As the name implies it is a measure that does not give the complete picture of a measure, it Country Month Amount DE 2010‐01 12.345,00    DE 2010‐02 15.678,00    DE 2010‐03 25.814,00    DE 2010‐04 21.586,00    DE 2010‐05 21 861 00 Restricted by Country: p p , is restricted to a subset of the original measure. • The benefit of a Restricted DE 2010 05 21.861,00    DE 2010‐06 11.258,00    DE 2010‐07 12.387,00    DE 2010‐08 13.589,00    DE 2010‐09 12.345,00    DE 2010‐10 15.678,00    DE US Difference 209.941,00    205.838,00    4.103,00    • The benefit of a Restricted Measure is, that it expands the modeling options in a view, giving the modeler the possibilities of DE 2010‐11 25.814,00    DE 2010‐12 21.586,00    US 2010‐01 21.861,00    US 2010‐02 11.258,00    US 2010‐03 12.387,00    Country Q1 Q2 DE 53.837,00    54.705,00    US 45.506,00 41.612,00 Restricted by Months: creating objects that can be easily reported on or reused. US 2010‐04 13.589,00    US 2010‐05 12.345,00    US 2010‐06 15.678,00    US 2010‐07 25.814,00    US 2010‐08 21.586,00    US 2010 09 21 861 00 US 45.506,00    41.612,00    US 2010‐09 21.861,00    US 2010‐10 11.258,00    US 2010‐11 12.387,00    US 2010‐12 25.814,00    © 2012 SAP AG. All rights reserved. 155155
  • 156. Using Restricted Measures Creating Restricted & Calculated Measures Picture the example in the right table. Creating Restricted & Calculated Measures Cost Type Amountp g You have a transactional table with cost data items, with each cost type split on a different line. Cost Type Amount Purchasing Price € 1 200 If you want to find out the shipping cost you could create an Analytic View Shipping Cost € 80 VAT € 346 with Cost Type as an Attribute, and Amount as a Measure. Y ld th t i t t b Processing Cost € 150 You could then restrict your report by reporting on Cost Type, setting the Attribute filtered on Cost Type = “Shipping Cost” Margin € 300 “Shipping Cost”. © 2012 SAP AG. All rights reserved. 156© 2012 SAP AG. All rights reserved. 156156
  • 157. Using Restricted Measures Creating Restricted & Calculated Measures In order to utilize a Restricted Measure, you can instead create one which Creating Restricted & Calculated Measures , y already limits the results to Shipping Costs only within the measure itself. © 2012 SAP AG. All rights reserved. 157© 2012 SAP AG. All rights reserved. 157
  • 158. Using Restricted Measures Creating Restricted & Calculated Measures The Attribute you filter the Restricted Creating Restricted & Calculated Measures y Measure does not have be limited to one single Attribute. You can set it restricted to multiple attributes depending on your reporting requirements. There are also multiple operators to choose from. © 2012 SAP AG. All rights reserved. 158© 2012 SAP AG. All rights reserved. 158
  • 159. Using Restricted Measures Creating Restricted & Calculated Measures Further, the Restricted Measure does not Creating Restricted & Calculated Measures have to be a straight sum of the Measure that it is based on. The Aggregation Types that you have available are:  SUM SUM  MIN  MAX © 2012 SAP AG. All rights reserved. 159© 2012 SAP AG. All rights reserved. 159
  • 160. When to use Calculated Measures Creating Restricted & Calculated MeasuresCreating Restricted & Calculated Measures  In a data model sometimes not all Measures available in the base data will give your users sufficient information for reporting if you just provide the basereporting if you just provide the base Measures in your views.  SAP HANA has a type of Measure available called Calculation Measures where the modeler is able to include calculations already within the view in order to help reporting or furtherorder to help reporting or further modeling. © 2012 SAP AG. All rights reserved. 160160
  • 161. When to use Calculated Measures Creating Restricted & Calculated Measures Cli t A li tiCli t A li ti Creating Restricted & Calculated Measures  When you include calculations in Client ApplicationClient Application A G Y Z your views using Calculated Measures you take advantage of the speed of SAP HANA letting the database engine perform the Calculation EngineCalculation Engine Do calculation after aggregation database engine perform the calculations, instead of doing these calculations in your end client reporting tool. OLAP Engine OLAP Engine Join Engine Join Engine A B C D G Y  Having ready defined calculations in views can also help simplifying reporting by unifying calculations EngineEngine EngineEnginep g y y g having them calculated in the same way for all users instead of having users or developers create their own versions of the Avoid calculation Column Store Column Store Row Store Row Store their own versions of the calculations. Avoid calculation before aggregation on line item level © 2012 SAP AG. All rights reserved. 161161
  • 162. Creating Calculated Measures Creating Restricted & Calculated MeasuresCreating Restricted & Calculated Measures A Calculated Measure is defined in the view and when you create one you can use the calculations, mathematical functions etc. available in the editor. © 2012 SAP AG. All rights reserved. 162© 2012 SAP AG. All rights reserved. 162 ,
  • 163. Creating Calculated Measures Creating Restricted & Calculated MeasuresCreating Restricted & Calculated Measures Product Units Price Total Sales (Units * Price) Keyboards 100 € 40 € 4 000Keyboards 100 € 40 € 4 000 LCD Screens 50 € 300 € 15 000 Network Switches 75 € 90 € 6 750 VOIP Telephones 200 € 65 € 13 000 Servers 30 € 2 000 € 60 000 SUM: 455 € 2 495 € 1 135 225 For certain measure it is not possible to perform the calculations when the measures are already aggregated. The aggregated granularity of for example Price does not mean anything © 2012 SAP AG. All rights reserved. 163© 2012 SAP AG. All rights reserved. 163 Price does not mean anything.
  • 164. Creating Calculated Measures Creating Restricted & Calculated MeasuresCreating Restricted & Calculated Measures For these types of Measures you can predefine the Calculated Measure to calculate each individual item before aggregating. This is done by l ti th tiselecting the option “Calculate Before Aggregation”. © 2012 SAP AG. All rights reserved. 164© 2012 SAP AG. All rights reserved. 164
  • 165. Creating Calculated Measures Creating Restricted & Calculated MeasuresCreating Restricted & Calculated Measures This way you can be sure Product Units Price Total Sales (Units * Price) This way you can be sure that you end up with a correct sum as the calculation are performed Keyboards 100 € 40 € 4 000 LCD S 50 € 300 € 15 000 calculation are performed on the correct granular level. LCD Screens 50 € 300 € 15 000 Network Switches 75 € 90 € 6 750 VOIP Telephones 200 € 65 € 13 000 Servers 30 € 2 000 € 60 000 SUM: € 98 750 © 2012 SAP AG. All rights reserved. 165© 2012 SAP AG. All rights reserved. 165
  • 166. Objectives Using currency ConversionUsing currency Conversion You should now be able to:You should now be able to:  Understand the benefits of Restricted Measures  Use Restricted Measures  Understand when to use Calculated Measures  Create Calculated Measures © 2012 SAP AG. All rights reserved. 166166
  • 167. Creating Attribute Views Unit 4: Advanced Modeling Creating Restricted & Calculated Measures Using Hierarchies Using Filter Operations SAP HANA SQL - Introduction Using Filter Operations Using Variables SQLScript and Procedures Using Currency Conversion
  • 168. Objectives Using Filter OperationsUsing Filter Operations At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:  Explain how to compare constraint filter and WHERE clause,  Explain how to create client dependant views,p p ,  Explain how to model domain fix values. © 2012 SAP AG. All rights reserved. 168
  • 169. Overview Using Filter OperationsUsing Filter Operations This module covers the following topics:This module covers the following topics:  Compare constraint filter and WHERE clause,  Create client dependant views,p ,  Model domain fix values. © 2012 SAP AG. All rights reserved. 169169
  • 170. Filter Operations Using Filter OperationsUsing Filter Operations Client ApplicationClient Application Calculation EngineCalculation Engine Reduce data transfer between the engines by using Filter O ti lik OLAP E i OLAP E i Join E i Join E i Operations like :  Using a Constraint or WHERE clause C ti Cli t D d t ViEngineEngine EngineEngine  Creating Client Dependant Views  Using Model Domain Fix Values Column Store Column Store Row Store Row Store © 2012 SAP AG. All rights reserved. 170170
  • 171. Compare Constraint Filter & WHERE Clause Using Filter OperationsUsing Filter Operations Constraint filter : • Is defined on design time on a tabletable, • The filter applies on the table before the query starts to WHERE clause : • Is defined on runtime in the execute, • Normally faster than WHERE clause as the results set is • Is defined on runtime in the SQL query, • The filters applies on the f Vs clause, as the results set is reduced before proceeding with the query execution plan, e.g. constraints applied before results set of a query. e.g. constraints applied before a table join is executed. © 2012 SAP AG. All rights reserved. 171171
  • 172. Create Client Dependant Views Using Filter OperationsUsing Filter Operations Define « Default Client » as « dynamic » in properties of your views (Attribute Views and Analytic Views) Define the value of the « Session Client » in the definition of the UserClient » in the definition of the User ID. The variable constraint is substituted at runtime by the client that is set for the current user © 2012 SAP AG. All rights reserved. 172© 2012 SAP AG. All rights reserved. running a query on the model: 172
  • 173. Model Fix Values Using Filter OperationsUsing Filter Operations © 2012 SAP AG. All rights reserved. 173© 2012 SAP AG. All rights reserved. 173
  • 174. Model Fix Values Using Filter OperationsUsing Filter Operations © 2012 SAP AG. All rights reserved. 174© 2012 SAP AG. All rights reserved. 174
  • 175. Summary Using Filter OperationsUsing Filter Operations You should now be able to:You should now be able to:  Explain how to compare constraint filter and WHERE clause,  Explain how to create client dependant views,p p ,  Explain how to model domain fix values. © 2012 SAP AG. All rights reserved. 175175
  • 176. Creating Attribute Views Unit 4: Advanced Modeling Creating Restricted & Calculated Measures Using Hierarchies Using Filter Operations SAP HANA SQL - Introduction Using Filter Operations Using Variables SQLScript and Procedures Using Currency Conversion
  • 177. Objectives Creating VariablesCreating Variables At the end of this Lesson you will be able to:At the end of this Lesson you will be able to: • Explain SAP HANA Variables • Create Variables• Create Variables © 2012 SAP AG. All rights reserved. 177
  • 178. Overview Creating VariablesCreating Variables This module covers the following topics:This module covers the following topics: • Creating Attribute Value Variables • Creating Static Value Lists• Creating Static Value Lists • Creating Variables with Formulas • Creating Date Variables © 2012 SAP AG. All rights reserved. 178178
  • 179. SAP HANA Variables Concepts Creating VariablesCreating Variables  You use variables to filter data atClient ApplicationClient Application You use variables to filter data at runtime. You assign values to these variables by entering the value manually, or by selecting it f th d d li t Client ApplicationClient Application from the drop-down list.  Using variables means that you do not need to decide the Calculation EngineCalculation Engine restriction on the value of attributes at the design time.  You can apply variables in the OLAP Engine OLAP Engine Join Engine Join Engine You can apply variables in the analytic and calculation views.  If a calculation view is created i l ti i ith EngineEngine EngineEngine using an analytic view with variables, those variables are also available in the calculation view but cannot be edited. Column Store Column Store Row Store Row Store © 2012 SAP AG. All rights reserved. 179179
  • 180. Variables Types Creating VariablesCreating Variables The following types of variables are supported: Type Description AttributeValue Use this to apply a filter when the value of the filter comes from an attribute. Currency Use this during currency conversion to specify the targetCurrency Use this during currency conversion to specify the target currency. Date Use this to apply a filter when the value of the filter is in date format, for example, to specify the date during currency, p , p y g y conversion. Static List Use this to a apply filter when the value of the filter comes from a user-defined list of values. © 2012 SAP AG. All rights reserved. 180180
  • 181. Creating Attribute Value Variables Creating VariablesCreating Variables The Variable type called ”AttributeValue”The Variable type called AttributeValue restricts the results in the view for the selected Attribute. You select the Attribute in the view that you want to filter on, and you also define the: Selection Type: Whether selections should be based on intervals, ranges or single valuessingle values. Multiple Entries: Whether mutliple values of the selection types should beyp allowed. © 2012 SAP AG. All rights reserved. 181© 2012 SAP AG. All rights reserved. 181
  • 182. Creating Attribute Value Variables Creating VariablesCreating Variables When displaying the values of a View with an Attribute Value Variable includedWhen displaying the values of a View with an Attribute Value Variable included, you will be asked to enter the values for the Attribute Values defined. The Value Help Dialog you can help you find the selections you are looking for. © 2012 SAP AG. All rights reserved. 182© 2012 SAP AG. All rights reserved. 182
  • 183. Creating Attribute Value Variables Creating VariablesCreating Variables The Variable Values selectedThe Variable Values selected will restrict the results as required when you click the ”OK” button.OK button. Should the user however need to display all values, bypassing the selection criteria completely, it is possible to do so by selecting the “Cancel” button in th “V i bl V l ” di lthe “Variable Values” dialog. © 2012 SAP AG. All rights reserved. 183© 2012 SAP AG. All rights reserved. 183
  • 184. Creating Static Value Lists Creating VariablesCreating Variables When you want to limit theWhen you want to limit the possible values to select for a varaible it can be useful to define the Variable as adefine the Variable as a ”StaticList” type. When defining this type of variable you can enter the list of values at design-time. © 2012 SAP AG. All rights reserved. 184184
  • 185. Creating Static Value Lists Creating VariablesCreating Variables During refresh of a ”StaticList” type of Variable when the user clicks on ”Find” theDuring refresh of a StaticList type of Variable, when the user clicks on Find , the Value Help Dialog will display the list of values defined during variable creation. © 2012 SAP AG. All rights reserved. 185185
  • 186. Creating Variables with formulas Creating VariablesCreating Variables A variable does not necessarily need toA variable does not necessarily need to restrict the data of a view. It can also take input from the user and process it, returning dynamic data based on the user selection. We now want to see how we can createWe now want to see how we can create a function in a Calculated Measure based on the value of a Variable. © 2012 SAP AG. All rights reserved. 186186
  • 187. Creating Variables with formulas Creating VariablesCreating Variables What we first need to doWhat we first need to do is to create a variable to be used in a calculation. The variable can be of any type, for example a StaticList type. In this example to the right the user can choose either ”Gross” orchoose either Gross or ”Net” as the selection. © 2012 SAP AG. All rights reserved. 187© 2012 SAP AG. All rights reserved. 187
  • 188. Creating Variables with formulas Creating VariablesCreating Variables We also need somewhere toWe also need somewhere to call the variable from. In for example a Calculated Measure, we can reference the result of the user selected variable. This is done by calling it within double dollar signs, see example:see example: if('$$VAR_GROSS_OR_NET$$'='Gross',"GROSS_AMOUNT","NET_AMOUNT") © 2012 SAP AG. All rights reserved. 188© 2012 SAP AG. All rights reserved. 188
  • 189. Creating Date Variables Creating VariablesCreating Variables The Variable type”Date” can be usefulThe Variable type Date can be useful when you for example want an input date from the reporting user in order to create further calculations on.create further calculations on. Whatever input is selected in the variable can be used as a basis for extended calculations. © 2012 SAP AG. All rights reserved. 189© 2012 SAP AG. All rights reserved. 189
  • 190. Creating Date Variables Creating VariablesCreating Variables Selecting the Variable Type as: ”Date” will make it easier for the endSelecting the Variable Type as: Date will make it easier for the end user to select a date by utilizing a calendar dialog for selecting the appropriate date. © 2012 SAP AG. All rights reserved. 190© 2012 SAP AG. All rights reserved. 190
  • 191. Creating Date Variables Creating VariablesCreating Variables Calculated AttributeVariable The date variable selected can then beThe date variable selected can then be used in for example a Calculated Attribute so as to give dynamic values. © 2012 SAP AG. All rights reserved. 191© 2012 SAP AG. All rights reserved. 191
  • 192. Objectives Creating VariablesCreating Variables You should now be able to:You should now be able to: • Explain SAP HANA Variables • Create Variables• Create Variables © 2012 SAP AG. All rights reserved. 192192
  • 193. Creating Attribute Views Unit 4: Advanced Modeling Creating Restricted & Calculated Measures Using Hierarchies Using Filter Operations SAP HANA SQL - Introduction Using Filter Operations Using Variables SQLScript and Procedures Using Currency Conversion
  • 194. Objectives SAP HANA SQLSAP HANA SQL At the end of this Lesson you will be able to:At the end of this Lesson you will be able to:  Explain the language elements used in SAP HANA SQL statements.Q © 2012 SAP AG. All rights reserved. 194
  • 195. Overview SAP HANA SQLSAP HANA SQL This module covers the following topics:This module covers the following topics: • Overview SQL Language Elements • Identifiers• Identifiers • SQL Data Types • Predicates and Operators • Functions and Expressions • SQL Statements - Examples © 2012 SAP AG. All rights reserved. 195195
  • 196. SQL - Definition SAP HANA SQLSAP HANA SQL • Standardized Class Description Example language for communication with a relational database. p p DDL Data Definition Language CREATE, ALTER, DROP TABLE • Used to retrieve, store or manipulate information in the DML Data Manipulation Language SELECT, DELETE, INSERT, UPDATE information in the database. DCL Data Control Language GRANT, REVOKE © 2012 SAP AG. All rights reserved. 196196
  • 197. SQL language elements SAP HANA SQLSAP HANA SQL Identifiers • Used to represent names used in SQL statementIdentifiers • Used to represent names used in SQL statement Data types • Specify the characteristics of a data value Expressions • Clause that can be evaluated to return values Operators • Used for calculation, value comparison or to assign values Predicates • Specified by combining one or more expressions or logical operators and returns one of the following logical or truth values: TRUE, FALSE, or UNKNOWNvalues: TRUE, FALSE, or UNKNOWN Functions • Used in expressions to return information from the database © 2012 SAP AG. All rights reserved. 197197
  • 198. Comment and Code page SAP HANA SQLSAP HANA SQL C tComments  -- double hyphensdouble hyphens  /*/ <……> */ Codepage  The SAP HANA database supports Unicode to allow use of all The SAP HANA database supports Unicode to allow use of all languages in the Unicode Standard and 7 Bit ASCII code page without restriction. © 2012 SAP AG. All rights reserved. 198198
  • 199. Identifiers SAP HANA SQLSAP HANA SQL TRAINING Undelimited Identifiers • must start with a letter • cannot contain any symbols other than digits or an underscore " TRAINING Training (treated with upper case!) 1TRAININGg _ TRAINING% • enclosed in the delimiter d bl t "TRAINING" " i i ( Delimited Identifiers double quotes "<identifier>" • can contain any character including special characters. "Training" (case sensitive) "1Training" "Training%"p g • "_SYS_" is reserved exclusively for database engine Limitations for database engine • Role name and user name must be specified as undelimited identifiers. • Maximum length for the identifiers i 127 h t © 2012 SAP AG. All rights reserved. 199 is 127 characters. 199
  • 200. SQL Data types SAP HANA SQLSAP HANA SQL Classification Data Type Datetime types DATE, TIME, SECONDTIME, TIMESTAMP Numeric types TINYINT, SMALLINT, INTEGER, BIGINT, SMALLDECIMAL, DECIMAL, REAL, DOUBLE, FLOAT Character string types VARCHAR, NVARCHAR, ALPHANUM, SHORTTEXT Binary types VARBINARY Large Object types BLOB, CLOB, NCLOB, TEXT © 2012 SAP AG. All rights reserved. 200200
  • 201. Predicates SAP HANA SQLSAP HANA SQL Comparison Predicates <expression>p { = | != | <> | > | < | >= | <= } [ ANY | SOME| ALL ] { <expression_list> | <subquery> } Range Predicate <expression1> [NOT] BETWEEN <expression2> AND <expression3> In Predicate <expression> [NOT] IN { <expression_list> | <subquery> } E i t P di t [NT] EXISTS ( < b > )Exists Predicate [NT] EXISTS ( <subquery> ) LIKE Predicate <expression1> [NOT] LIKE <expression2> [ESCAPE <expression3>][ p ] NULL Predicate <expression> IS [NOT] NULL © 2012 SAP AG. All rights reserved. 201201