Professional Documents
Culture Documents
html
SAP BI/BW
1
7) SQL Function
8) SQL Expression
9) SQL Stored Procedure
10) Create Sequence
11) Create Trigger
12) SQL DATA Profiling
13) SQL Script
14) Calculation View
15) Data Provisioning
16) SLT
17) SAP DS (Data Services)
18) Direct Extractor Connection
19) Flat File Upload
20) SAP HANA Modeling
21) Join
22) Attribute View
23) Analytic View
24) Analytic Privileges
25) Information Composer
26) Import and Export
27) SAP HANA Security
28) SAP HANA Reporting
29) SAP HANA Interview Questions
Tutorial Architecture
Tutorial Operator
Tutorial Modelling
Tutorial Join
Tutorial Security
Tutorial Reporting
http://teachmehana.com/
http://teachmehana.com/sap-hana-definition/
SAP HANA
3
HANA IMCE Architecture
Data Provisioning Techniques
Introduction to HANA Studio
Master data Vs Transaction Data
SAP HANA Star Schema
Creating a HANA Table – Graphical Method
Loading data from flat file to SAP HANA
Graphical Calculation View
SAP HANA Constant Filters
SAP HANA Variables
SAP HANA Input Parameters
Calculated Columns
Restricted Columns
Ranking Data in Calc View
Aggregating Data in Calc View
UNION node in Calc View
SAP HANA Web Development WB
Attribute View
Analytic View
Jump to SQL Topic
HANA SQL–How difficult is it?
SQL Data types
SQL Join Types in SAP
SQL Union Types in SAP
Creating a HANA Table–SQL Script Method
Creating a HANA Table–HDB Table Method
Creating a CDS Table–HDBDD Method
Inserting data in a Table–SQL Method
Inserting data in a Table–HDBTI Method
SELECT/TOP/DISTINCT Keyword
WHERE/LIKE/NOT Keyword
Calculated Fields & Alias
GROUP BY/IN/BETWEEN/ORDER BY
String Functions
NULL/NOT Keyword
UPDATE/DELETE/DROP/COUNT keywords
CASE/Nested SELECT statement
JOIN/UNION/UNION ALL Keyword
Scripted Calculatiion View
Static Filters in Calc View
Variables in Calc View
Input Parameters in Calc View
Understanding Calc Views
Table functions
Managing Input Parameter mappings
4
Stored Procedures
Creating HANA XS JOBS
Scheduling HANA XS JOBS
http://teachmehana.com/sap-hana-table-function-input-parameters-3/
Let’s say the new requirement is to have an input parameter take the
value of a sales document from the user and this sales document number
should be used as a filter in our select statement.
To start off, as explained earlier, in Line 1 of the code, the round brackets
should enclose the input parameter(s) we require in the code. In this case,
we create one called p_sales_doc of datatype NVARCHAR and length 10 as
shown below.
5
Also, modify the SELECT statement to include the WHERE condition as
shown below. Here we tell HANA that we need only values where the value
of sales document (VBELN field of table VBAK) matches the value specified
by the input parameter p_sales_doc.
Note: As explained earlier in the scripted calculation view tutorial, input
parameters are used in SQL codes with a colon (:) suffix.
Activate the table function again using the Activate button marked below.
Once this is done, switch back to the Systems tab and open the
Calculation view we created for this table function in the previous tutorial.
6
1
Click on the projection tab to open the fields and other properties.
The calculation view cannot automatically detect an input parameter
coming in from the table function. Therefore, we need to create an input
parameter for this calculation view with the same data type and map the
input parameter from the table function to the one of this calculation view.
To start off, right click on the input parameters folder and select “New”.
In the window that opens up, then we provide the same name and data
type as the table function parameter.
Note: It is not mandatory to have the same name. It was just kept the
same here for consistency. Data types and lengths should ideally be
compatible and preferably same.
Press OK when done.
7
We now see that the input parameter has been successfully created.
8
On the left side, you would see the input parameter from the table
function and on the right hand side the calculation view input parameter
would be present as shown below.
Drag the one on the left and drop it on the right one to create a mapping.
Once you drag and drop it, the mapping would get established as
illustrated below.
Press Ok to confirm the mapping.
9
Even after the mapping, you would see no difference in the view
properties though.
Activate this view now.
Execute a data preview. This would bring up the pop-up asking for a value
for the sales document number.
10
A sales document number that exists in this table is entered as an
example. Press Ok.
As seen below, the filter was passed on to the logic of table function and it
got applied successfully. Only the row with the selected sales document
was sent to the output.
11
This confirms that our table function and the input parameter mapping
was a success.
Help this website grow by sharing this document on social media by using
the icons below. Be sure to subscribe to our newsletter when the message
pops up for latest alerts on new tutorials.
Understanding SAP BW
Welcome one and all to the newest addition to the TeachMeHANA family –
SAPBW/4HANA. We are proudly, one of the first websites to write on this.
Let’s press that share button to show some support! Many of you might
already be into SAP BW but for the sake of everyone who’s new.. we’ll
start from the basics as always. If you have experience in SAP BW, please
share your valuable comments below the tutorial with more information
on these topics to help out the new students as well. Let’s crowd source
more info into this website. Writing on my own is getting boring
nowadays.. 🙂
Welcome everyone to the first SAP BW on HANA tutorial for this website.
Before we get to the tools and the system, let’s spend a few minutes
understanding what you are getting yourself into. What is SAP BW (or
Business Warehouse)? And if you are completely new to SAP,
please spend a few minutes on post – What is SAP ?
Data Warehouses and ETL processes
Well, SAP BW is SAP’s own Data Warehousing solution. What is data
warehousing? Excellent question again. When a company does business, it
stores the data of its transactions (transaction data) in some database or
the other. There might be one such database of multiple – one for each
region or division or one for each company they have acquired over the
period. The possibilities are endless. The point being that a company’s
transaction data may be spread across systems, stored in different
formats in each of them and may not be in the format that the
management needs to see in their reports. For a business to actively
understand it’s underlying problems, understand market trends, create
forecasts and make decisions, high quality reporting solutions have to be
created with the right Key Performance Indicators (KPIs) of the company
being measured across time frames. These KPIs and attributes that a
decision maker would want are usually scattered across the database and
more often than not, many of them need to be calculated from the
12
existing data. Data warehouses cater to these needs and SAP BW is a
time tested solution for large and small business alike with standard
content also available for multiple industry segments to reduce
implementation time.
To solve this, the concept of data warehouses came into existence. Data
warehouses are applications on a separate database that take data from
these source systems, cleanse it, apply business logic and optimally store
it within themselves for faster access from reports. It is not something
SAP came up with, data warehouses have been around for a while. SAP’s
data warehouse has the name SAP BW. Oracle’s data warehousing
solutions are one of the biggest competitions SAP BW has had to deal with
over time.
I hope you now have a fair idea of what SAP BW actually means. Let’s
move to the next tutorial to start our road to BW running on the HANA
database.
13
HANA – initially introduced on BW 7.3. As BW on HANA
evolved, then came along version 7.4 and then 7.5 as the
most stable known version of as of this writing which is
leaps and bounds beyond in terms of capability from its
initial predecessor.
14
proceeding but if you don’t feel like it, those 7 mentioned
above are absolute necessities at least.
Stay tuned for my next posts on SAP BW and please do
share these documents across social media by using the
share buttons below.
15
dragging along a bunch of old stuff that must be thrown
out eventually.
You can also understand this with another example of the
iPhone/Android updates. Whenever these operating
systems get updated, they send updates to the new
phones as well as some old ones. Every time a new
update gets released, there will be a set of phones that
won’t get the updates anymore because they have
become too old to be supported.
17
Select the BW modeling to choose the BW perspective
This opens up the BW perspective which in turn should also provide the
tabs you see below.
18
The first one time activity here is to create a workspace which is basically
a temporary workspace saved on your PC where your draft work is saved.
Since we are in the BW4HANA section of this tutorial, I assume all of you
want to learn BW .. so we make the obvious choice to create a BW Project.
19
Remember when I said at the beginning of this tutorial.. that SAP GUI
setup was a pre-requisite to using the BW Perspective? I wasn’t joking
around.. Since I did set up the connections on SAP GUI, all the systems
available there are reflected here below. Select the BW4HANA system you
wish to connect to. In this example, we’ll connect to B4H.
20
Press Next.
21
Press Next again to reach the below screen. Here, you must enter the
client number, Username, and password given to you by your project ..or
trainer.
22
You get the fancy processing logs..and eventually, it logs on..
23
Once you press finish.. there’s no going back. You have now connected to
BW4HANA and have chosen to enter the fun (sarcasm intended) life of a
BW developer. I couldn’t have been any more happy for you..
https://www.stechies.com/hana/
24
SAP SLT or System Landscape Transformation
SAP HANA Database
SAP HANA Direct Extractor connection
Replication server
Sybase replication technology
Row Store
Column Store
25
26
Advantages of SAP HANA:
With the help of Real-Time Data Provisioning and Real-
time Reporting, decisions can be taken in no time.
Due to the presence of In-Memory Technology, SAP
HANA delivers high speeds processing on massive data
and allows the user to discover and analyze all
transactional and analytical data.
SAP HANA reduces the total cost of ownership (TCO) as
it requires fewer testing, hardware, and maintenance
and it also reduces Total IT cost of a company.
By leveraging innovative solutions, SAP HANA makes
new business processes and business models.
Data can be collected from several applications and data
sources without disturbing the on-going business
transactions.
It helps in simplification of prevailing models, of
modeling and re-modeling.
SAP HANA can visit several data source as well as the
Un-Structured and Structured data from Non-SAP or
SAP data source.
SAP HANA decreases the complication of data
management and data manipulation.
27
SAP HANA helps in increasing the revenue of an
organization as it makes it so easy to identify the
profitable sales opportunities through the entire sales
related data accurately.
28
Application Developer: An application developer will
be expected to work on programming languages such as
JQuery, Java Script, HTML and other languages for
building web applications which work on SAP HANA
Database platform.
Index server
Name Server
Statistic Server
Preprocessor Server
XS Engine
29
Index Server: It is the key SAP HANA database component
and comprises actual data stores and the engine for data
processing. In situation of authentic sessions and connections
while SQL or MDX get started against the SAP HANA system,
an index server maintains these commands and takes a series
of actions in order to achieve a particular end.
30
exploited by index server during the analysis of the text data
and probing.
Types of Attribute
Three types of attributes are supported by SAP HANA:
Types of Measure
Four types of measures are supported by SAP HANA
INNER JOIN
LEFT OUTER JOIN
RIGHT OUTER JOIN
FULL OUTER JOIN
REFERENTIAL JOIN
TEXT JOIN
32
SAP HANA Modeling View Processing:
33
Either by a system conversion from an ECC solution (including
Suite on HANA), or a new install the route to S/4HANA is
achieved. From ECC6 to S/4HANA there is no upgrade path.
With the reason being to enable the new simplified data
model a system conversion needs to take place. In order to
replace it from your existing system you need to be conscious
on the lost functionality as part of the move to S4/HANA.
Standard Users
Users who can produce objects in their own Schemas and
have read access in system Information models are the
standard users. Every standard user has the access to read
the information which is offered by PUBLIC role.
Restricted Users
Users who have access to HANA system with some
applications but do not have SQL privileges on HANA
System are the restricted users.
34
Restricted users do not have the authority to produce
objects in HANA database or on their own Schemas.
Unlike standard users restricted users do not have
generic Public role added to profile due to which they do
not have access to check any information in database.
Only by using HTTP/HTTPS restricted users can link to
HANA database.
The user needs to create control file (.CTL file) prior to this
option. To exist in SAP HANA and to upload data in SAP
HANA Database, the table is needed. records will be
appended at the end of the table if the table exists but if the
table is absent then table need to be created.
37
SAP LT Replication
LT Replication Server leverages proven System
Landscape Optimization Technologies (SLO).
System Landscape Optimization Technologies is used to
consolidate and unite the system landscape.
It a key offering foster SAP's Application Management
Lifecycle.
38
Variation of Data Source Extractor
There is three variation in Data Source Extractor:
39
DXC cannot be considered for data which require
complex transformation
Pre-define ETL method should be there in the Data
Source, if not then it should be defined.
A Business Suite System on Net Weaver 7.0 or higher
(e.g. ECC) equal or below SP level is required in SAP
DXC: Release 700 SAPKW70021 (SP stack 19, from Nov
2008).
In Data Source a procedure with a key field defined
must exist.
https://data-flair.training/blogs/sap-hana-interview-questions/
Administration
Information modeling
Data provisioning
SAP HANA Database Administration
42
43
Step. 1 To Install Studio
You can change to another perspective from the “Open
Perspective” icon given at the top right.
44
45
Step. 2 To Install Studio
We have changed the perspective from SAP HANA Administrative
Console to SAP HANA Modeler.
46
47
Step. 3 To Install Studio
Also, a list of perspectives opens from the icon which you can
choose the perspective of your choice. Each perspective is used
for a specific purpose i.e. to perform a certain operation on the
data and the database.
48
49
Step. 4 To Install Studio
Another way to access the list of existing perspectives is, open
the tab Window, then select Perspective, then click on Open
Perspective, and then go to Other… to access the entire list of
available perspectives.
50
Step. 7 To Install Studio
To add a database system in SAP HANA Studio right-click on
anywhere on the section is given at the left. Select Add System.
51
Step. 8 To Install Studio
Then enter the system details like hostname, instance number,
and description.
52
Step. 9 To Install Studio
Next, add the connection credentials like username and
password.
53
Step. 10 To Install Studio
The system gets added and all the details and sub-folders are
added in the section. You can log in and off the system by right-
clicking on the system’s name. Also, you can expand all the
options for security, provisioning, content, catalogue etc., and
drill down the folders to access and manage data.
54
Step. 11 To Install Studio
55
6. Conclusion
This was all about to know about SAP HANA Studio to start
working on it. Install it with the required features and create an
environment of your choice. Add multiple systems and start its
manipulation and administration. So, stay with us as we
explore this wonderful tool.
56
Introduction to SAP HANA Studio Administration Console
57
You can select the Administration Console from the first
window that appears upon opening the SAP HANA Studio.
58
59
SAP HANA Studio Administration Console
The SAP HANA Studio Administration Console opens.
However, in some cases, it opens directly if it is set as the
default browser.
60
61
SAP HANA Studio Administration Console
A lot of administrative tasks can be performed in the SAP
HANA Studio such as regulating (start/stop) services,
monitoring the system, user management and authorization,
backup and recovery, audit policy and security configuration,
license management, alerts and messages, memory
management etc. All of the mentioned activities can be
achieved from different tabs present in the administration
console such as,
62
SAP HANA Studio Administration Console
64
Step.1 To add a system in SAP HANA Studio Administration Console
65
Have a Look – 7 Unique Reasons to Learn SAP HANA
Step 2
Enter the database specific credentials like Hostname, Instance
number, description of the database etc. Click on Next to
continue.
66
Step.3 To add a system in SAP HANA Studio Administration Console
Follow this link to know the best SAP HANA Books
Step 4
The system gets loaded and you can see the hierarchical view of
all the components and categories of the system on the panel.
For each system, there are four folders, Catalog, Content,
Provisioning, Security plus a Backup folder which are dedicated
to providing specific services.
67
Step.4 To add a system in SAP HANA Studio Administration Console
Step 5
You can find data tables by drilling down in the hierarchical
system folders.
68
69
Step.5 To add a system in SAP HANA Studio Administration Console
Also, you can perform several operations on the table as shown
in the menu in the screenshot below. You can view a table’s
content etc. from this menu.
70
71
Step.6 To add a system in SAP HANA Studio Administration Console
Step 1
Open the SQL Console from the icons given at the top after
clicking on the database system’s name in which you wish to
add a schema.
72
73
Step.1 to add a schema
Step 2
Enter the statement in the SQL Console to create the new
schema. Name the schema as you like. Click on the green
Execute button.
74
75
Step.2 to add a schema
Step 3
A new schema with the name Live2 is added in the system.
76
77
Step.3 to add a schema
You can add a new table as well by right-clicking on the tables
folder.
78
Step.4 to add a schema
79
4. How to add tables in a schema?
You can add new tables within a schema through the SQL
Console. Enter the code which is a statement specifying all the
table details. Click on the green execute button and the table
will be added.
80
Step.1 to add table a schema
Refresh the Tables folder in the schema and the newly created
table “Member” will appear in the list. You can add more tables
like this.
81
82
Step.2 to add table a schema
83
Step.2 add a user in a schema
We can add a new user to the user’s list.
84
Step.3 add a user in a schema
Also, you can grant specific privileges to the new user i.e. they
are only allowed to perform certain actions in the system and
manipulate data.
85
Step.4 add a user in a schema
86
Step.5 add a user in a schema
Hence, a new user with the name LIVE2USER is created having
access to limited tables and is granted distinct privileges.
87
Step.6 add a user in a schema
Now, for instance, if we try to delete a table, we will get an error
message for restricted user privilege as the user is only allowed
to read the table contents and not delete them.
88
Step.6 add a user in a schema
89
Log Off/Login in SAP HANA Studio
You can also log in to the system by doing the same and
selecting Log In from the drop-down menu.
90
SAP HANA Modeling – Attributes, Measures, Privileges, Modeling Objects
1. What is SAP
HANA Modeling?
Modeling in SAP HANA showcases data from the databases as
a business logic or a model. We can create a data model or a
view with this business logic, which we can use in reporting and
analytical application such as SAP Lumira, Webi, SBEE, MS
Excel etc. We can make this kind of business models by
processing, integrating and transforming raw data from data
sources.
91
That is, raw data taken from data sources is converted into
business utilizable data by applying business logic on it. SAP
HANA modeling is performed via the SAP HANA
Studio Modeler (which is an interface) and is applied directly
on the database layer (in-memory). Thus, readymade logics
from the database layer of SAP HANA are used on the
application layer without transforming data in multiple layers
or stages. This saves a lot of system’s time and resources, as raw
data is not needed to be transferred between the database and
application layer and data models, are created on the fly.
a. Types of Attributes
There are three types of attributes in SAP HANA Modeling.
93
SAP HANA Modeling – Attributes and Measures
Have a Look – 7 Unique Reasons to Learn Sap HANA
b. Types of measures
There are four types of measures in SAP HANA Modeling as
explained below.
94
Restricted Measure- These are the filtered measure values
based on a condition put on an attribute. For instance,
showing the measure values for only the gross revenue on a
particular car in USA (attribute).
Counter- It is a type of column within an analytical or
calculation view, which shows the count or number of
attribute columns.
Attribute View
Analytic View
Calculation View
Decision Table
i. Attribute View
SAP HANA Attribute view uses attributes, or the non-
measurable, non-quantifiable data to design views and models
according to the business logic. The data in attribute view also
call as ‘Master data’ and we can use it as a piece of reference
information in other views (analytic and calculation). The
tables in attribute view do not contain any facts or measure.
That is entries like sales amount, transaction amount, quantity
sold, profit incurred etc. We can analyze all these measures by
different characteristics such as year, quarter, month, vendors,
sales departments, product groups etc. These characteristics
also call as dimensions.
ii. Analytic View
In the SAP HANA analytic view, you can create star schemas,
having a central transaction or fact table and multiple
dimension tables linked to it via primary keys. We can join or
group the measures, which contain in only the central
transaction table with multiple dimension tables as per the
logic’s requirement. An analytic view is the next layer or level of
a model after the attribute view.
iii. Calculation View
SAP HANA Calculation view is a more complex model using
both attribute and analytic view elements in it to make a
complete business logic. Thus, it is the next level of SAP
HANA modeling for more advanced transformations and logic.
95
In order to perform complex operations such as combining two
data sets into one, we need to use the calculation view. As we
inform about analytic view can measure only a transaction
table.
So, if we have transaction data from two tables, say, Sales and
Finance, and we wish to combine both in one data set, we can
only do it in the calculation view.
Object Privileges
Packages Privileges
Analytic Privileges
i. Object Privileges
Such privileges are the read/write privileges given for SQL used
to access a database. The object privileges are:
ELECT privilege on _SYS_BI Schema.
SELECT privilege on _SYS_BIC Schema.
EXECUTE privilege on REPOSITORY_REST (SYS).
SELECT privilege on Table Schema.
REPO.MAINTAIN_NATIVE_PACKAGES (a privilege on
Root Package).
96
REPO.READ, REPO.EDIT_NATIVE_OBJECTS &
REPO.ACTIVATE_NATIVE_OBJECTS (on package used
for Content Objects).
iii. Analytic Privileges
We can use analytic privilege, to access the SAP HANA
information view. If you want to get full data access to use in all
the information view types, select the privilege
“_SYS_BI_CP_ALL”.
So, this was all about SAP HANA Modeling Tutorial. Hope, you
liked our explanation.
97
What is SAP HANA Information
Modeler?
Information Modeler of SAP HANA is a platform that lets you
design information views or models on top of SAP HANA
database using tables in it. Such models serve business logic
and operation. They are created directly on top of the HANA
database layer. The information modeler provides the interface
and tools to select attributes and measures from the database
tables. Thus, using the information modeler, a user can create
98
multiple information views using the physical tables of
transactional data that stores in the databases of SAP HANA.
The information views are a logical representation of the data
which we can further publish or consume for analytical
purposes. Information modeling implements on the SAP HANA
Modeler perspective of SAP HANA Studio.
99
Features of SAP HANA
Information Modeler
Here are some important features of information modeler.
i. Attribute View
Attribute view uses attributes, or the non-measurable, non-
quantifiable data to design views and models according to the
business logic. Thus, the data used in attribute view is referred
to as ‘Master data’ as it is used as reference information in
other views (analytic and calculation).
101
iii. Calculation View
Calculation view is a complex model which uses both attribute
and analytic view elements in it to create complete business
logic. Thus, it is the next level of modeling for more advanced
transformations and logic if we are executing complex
operations like combining two data sets. As we know, what
came as a limitation in analytic view is that measure that we
can only use from the transaction table. So, if we have
transaction data from two tables, such as Sales and Finance,
and we want to combine both in one data set, then we can only
perform it in the calculation view.
103
What is Data Warehousing?
A simple answer to this is, Data warehousing is a technique or
system that collects transformed data from either or both
homogenous and heterogeneous data sources and transfers into a
single data store. It provides the data to the analytical tools. The
data warehouses are known to be the central repositories of a
business intelligence system.
Both real-time and historic (pre-existing) data can set the data
warehouses collected from either the enterprise’s operational
sources or an external data source. As we know, the traditional
databases keep transactional data which is one-dimensional
104
data. And, it cannot be used for analytical and reporting
purposes, such databases are called OLTP (Online
Transactional Processing) database. But the data warehouses
are OLAP type databases which provide processed data for
analytical operations like data mining, OLAP analysis,
reporting etc.
A data warehouse typically contains metadata, raw data and
summary data which is used by analytic tools for reporting,
planning, and forecasting.
105
types in warehouse and presentation or data access part.
106
Data warehouses primarily contain metadata, which is, data
about data. Whereas, the summary data is the transformed
and processes data ready for analysis and reporting.
Lastly, in the presentation layer, users can perform OLAP
operations on the data taken from the data warehouses and
use it for data mining, reporting, and analysis. Analytical
operations perform on such data to understand the
messages in raw transactional data. Understanding the data
helps in making informed business decisions.
Now, in SAP HANA Data Warehousing tutorial, we will further
move on to Designing Methods in Data Warehousing.
107
Working of SAP HANA Data
Warehousing
The data warehousing works in a similar fashion in SAP HANA
as well. Transactional data from different SAP and non-SAP
data sources comes to SAP HANA data warehouse and clients
use them as per the data models and logics that the user
defines.
108
SAP HANA Attribute View –
Create Attribute View in 9
Easy Steps
BY DATAFLAIR TEAM · UPDATED · APRIL 11, 2019
Moving ahead in understating modeling with SAP HANA
Information Modeler, let us start with learning about SAP
HANA Attribute View. In this lesson, we will first understand
the concept behind the attribute view, the process flow of
creating the attribute view and types of attribute view. Along
with the conceptual knowledge, we will also learn how to create
attribute view in SAP HANA Modeler.
Let us rewind a little and recall the significance of information
modeling in SAP HANA. Information models or Views are
logical frameworks or run-time objects which structures data
from one-dimensional databases into multi-dimensional data
structures for analytical purposes. The information views do
not store data physically in SAP HANA. The logic of a view is
stored in HANA and every time a reporting tool requests the
view, the system fetches the data according to the blueprint of
the view from the data source and presents it to the user.
109
What is SAP HANA Attribute
View?
The Attribute View in SAP HANA is a set of dimensions or
master data which can be joined with the fact table in an
Analytic View. An Attribute View can be created by taking data
from one or more data tables. The attribute shows relationships
between different attributes. The attributes can be Customers,
Region, Product, Period etc. In an Attribute View, joins can be
made between two master data tables, a text table, and a
master data table, etc.
110
Types of Attribute View
Standard Attribute Views: These views create by table fields
among different column store tables by using joins in SAP
HANA.
Derived Attribute Views: It is an Attribute View created
using another existing Attribute View. It will open in read-
only mode, we cannot edit the derived Attribute view. The
only editable field in the created Attribute View is the
description. It will act as a reference to the base Attribute
view. Any modification to the base Attribute View will
reflect in the created Attribute View.
Referential Join
Inner Join
Left Outer Join
Right Outer Join
Text Join
Along with defining the join type of the Attribute View, the
cardinality of tables is also important to specify. The cardinality
can be 1:1, 1: N or N:1.
112
113
Step 2: Then, select an existing package or create a new package
from the Content node.
114
115
Check out Latest SAP HANA Use Cases
Step 3: Enter the technical name of the view carefully, as it
cannot be changed later. Also, you can enter a label name.
From the Copy From option, you can select an existing
Attribute View to act as a basis for the new one. Select a
116
subtype and click on Finish.
117
118
Step 4: Then, a view editor will open. The Semantics section
shows all the details that relate to the columns from the tables.
And, you can create the Attribute View in the Data foundation
section of SAP HANA Modeler.
119
120
Must learn: SAP HANA Studio Overview
Step 5: After that, you can select the table from the schema in
two ways. Either by finding the table under the schema name in
Catalogue node and dragging-dropping the table on the editing
pane. You can add tables from more than one schema and
create joins between them.
121
122
Or, by clicking on the green plus sign next to the Data
foundation section and searching the table by name.
123
124
Step 6: Now, its time to select columns from the table to add into
the Attribute View in SAP HANA Modeler. You can add
columns into the view in two ways; either by right-clicking on
the column name and selecting Add to Output. The column
name will show in the right-most Output column and also on
the Data foundation at the left. Or, you can simply click on the
dot present in-front of the column name and it will turn orange
indicating that it is added.
125
126
Learn to Use SAP HANA Administration Console
Step 7: If you wish to remove a column from the Output, right-
click on the column name and click on Remove.
127
128
Understand the process to Use SAP HANA on Azure
Step 9: Upon completing all the processes of adding columns
and tables to create the Attribute View, save and activate the
view by clicking on the green tick icon and green arrow given
on the panel on top. Then go to the Data preview icon.
Step 10: The data preview window contains three tabs; Analysis,
Distinct values, and Raw data. The raw data section shows the
data in tabular form.
129
130
Lastly, you can do instant analysis using the data from the
columns in the Analysis tab. Just drag-and-drop the columns in
place of two axes and visualization create.
131
132
Check out Top SAP HANA Books to master the technology
SAP HANA – Analytic View
133
What is SAP HANA Analytic
View?
The Analytic Views in SAP HANA are one step ahead in terms
of complexity as compared to the Attribute View. The Analytic
Views are multi-dimensional views involving attributes and
measures arranged in a star schema fashion. In the center lies
the fact table, which is a table containing measure columns
from the transactional SAP HANA database.
Surrounding this fact table is a different set of attribute
tables/views. The attributes or dimensions attached to the fact
134
table making an analytic view provides relevance to the
measures in the fact table. Thus, a user can examine data
(transactional data) from different perspectives. For instance,
you can have a fact table named Sales linked to four attribute
views or dimensions such as Region, Period, Customer, and
Product. That is, sales can be analyzed with respect to the
regions, customers, years, or products. The multi-dimensional
view created in the analytic view is also representative of OLAP
cubes.
Features of SAP HANA Analytic View
Some important features of the analytic view in SAP HANA are:
135
136
Step 3: Right-click on the package for which you need to create
an Analytic View in SAP HANA which also contains the
attribute views. Click on New and select Analytic view from the
drop-down list.
137
138
Step 4: Enter the technical name of the view and add a
description. You can set other properties as well, like view type,
139
subtype etc. Click on Finish.
140
141
Check out Latest SAP HANA Use Cases
Step 5: The design view for the analytic view in SAP HANA
Modeler
142
opens.
143
144
From the semantics section, you can access the columns, view
properties, hierarchies and variables or parameters.
Step 6: Now its time to add tables into the Data foundation. You
can add the data tables from the left panel either by dragging
and dropping or by searching the table’s name, Add Objects icon.
145
146
Must learn: SAP HANA Installation Guide
Step 7: If you have more than one table selected, then you need
to define a join condition and cardinality. Here, in the image
shown below, we have selected join type as inner join and set
cardinality as 1: N in the join created two tables ORDERS and
ORDERDETAILS.
147
148
Step 8: Next, we have to select columns for output from both
tables by clicking on the grey dots given in front of each column
of the table which will turn orange as a sign of being added into
the output.
149
150
Step 9: Now we will go to the “start join” section to link all the
attributes views with the data foundation (fact table). As you
can see in the image below, we have selected three attribute
views in the Star Join section; AT_CUSTOMER,
AT_PRODUCTS and AT_TIME.
151
152
Three separate tables for the three attribute views will get add
in the editor pane.
Step 10: We will join the fact table with the attribute view
table with common columns, as shown in the image below. We
have joined the two tables (fact table and attribute view) with
the column CUSTOMERNUMBER.
153
154
Also, we have defined the join type as an outer join.
Step 11: We will join the two other attribute tables with the fact
table in the same way. This will form a star schema like
structure of tables.
155
156
Step 12: Next, we’ll define measures and dimensions for the
table from the Semantics section. You can tag the measure
fields as measures from clicking on the columns and then on
the yellow icon on the bar (indicated by the blue arrow). And
similarly, tag the dimensions by selecting the attribute icon
157
shown by the red arrow.
158
159
Understand the process to Use SAP HANA on Azure
Step 13: After assigning the measures and dimensions, save the
Analytic View in SAP HANA Modeler by clicking on the green
tick and execute the view by clicking on the green arrow (shown
in the red box).
160
161
Step 14: After validating and executing it, open the data preview
section. There, the raw data from all the tables of the Analytic
View in SAP HANA Modeler will get load.
162
Learn the concept of SAP HANA Modeling
Step 15: From the Analysis section, you can quickly analyze the
data by selecting attributes and measures to create different
charts and graphs like a bar graph, Mekko chart, pie chart,
scatter chart etc.
163
164
Check out the Top SAP HANA Books for gaining expertise in
SAP HANA
165
Let’s start the SAP HANA Calculation View Tutorial.
168
Repeat this process again for every dimension table you have.
(we have named the second one as DIM_CAL_2)
Step 4: Adding dimension tables and columns
Now, add the dimension tables into the calculation view from
the green Add Object sign on the Projection section.
We will add the table EMPINFO (under the Projection section)
in the DIM_CAL_1 view. Similarly, add another dimension
table EMPRECORDS in DIM_CAL_2 calculation view.
Once the tables are added and columns from them are added in
the final output, save and activate the table by clicking on the
green tick and arrow button on the top bar.
170
We will also discuss the types of schemas in SAP HANA and
steps to create a schema in SAP HANA Modeler.
Column views
EPM Models
EPM Query Sources
Functions
Indexes
Procedures
Sequences
Synonyms
Tables
Triggers
Views
Check out Latest SAP HANA Use Cases
171
Types of Schemas in SAP HANA
There are three types of schemas in SAP HANA:
172
_SYS_STATISTICS: Contains information regarding
system configuration and parameters.
_SYS_XS: Contains data related to SAP HANA Extended
Applications Services.
3. SLT Driven Schema
This schema is created when SLT is configured to carry out
replication of tables. It will contain all the tables that replicate
into SAP HANA through SLT. Such schemas create on Data
Provisioning by SLT process.
173
Step 2: After that, the SQL Console is ready for you to enter
the SQL statement.
174
175
1. CREATE SCHEMA TEST_SCHEMA OWNED BY TRAINER
Enter the SQL statement to create a schema. In the image
shown below, the schema named TEST_SCHEMA will create
which a pre-existing user, TRAINER, owns
176
Understand the concept of SAP HANA Modeling
177
Step 3: To execute this statement, select the statement written
and click on the green execute icon (indicated by the red
arrow). You can use keyboard shortcut F8 for this.
178
179
A message at the bottom of the console will confirm successful
execution.
180
Also, if you go and check the list of users, no new user is added.
Step 6: Then, you can also drop the table by writing a small
code as shown below.
181
Explore Top SAP HANA Books for learning SAP HANA technology
182
there two ways to create a table and there are three types of
tables which you can create:
183
184
Login Option in Information Modeler
185
186
Entering User Name and Password
Explore Unique Features of SAP HANA
Step 1: After logging in to the system, open the SQL
Console/Editor from the icon that the arrow indicates in the
image. You can also open the SQL Editor by right-clicking on
your system or schema and selecting SQL Editor option.
187
188
Step 2: In the SQL console, write the SQL statement for
creating a table.
The syntax for creating a table is:
1. create <table type> table <table name>(<field name1> <data type>, <field name2>
<data type>, …..);
189
You can also create a Row Table by mentioning the table type
as Row Table in the statement.
190
Step 4: Once the execution carries out successfully, you can
refresh the schema under which the table is made and find the
name of the table in the Tables folder.
191
Step 5: You can click on the table name to open the table and
look into it.
192
Note: To insert data in the table, write the SQL statement for
which the syntax is:
1. INSERT INTO <table name> VALUE (‘<valueforfield1>’,’<valueforfield2>’…);
To select a data table:
195
196
Must check: Latest SAP HANA Use Cases
Dimensions of Table
197
Step 3: Next is creating the main table where you enter details
like column name, SQL data type, dimension, assign a primary
key column, select columns as not null, add a default value,
comments.
198
Default value of Table
Step 4: The table editor has other tabs as well, such as an
Indexed column, Further properties column, Runtime
Information column containing different information and
details about the table created.
199
Further properties column of Table Editor
Learn to Use SAP HANA on Azure
Step 5: Once you enter all the details for the table, execute it by
pressing F8 or clicking on the Execute button on the bar.
200
Step 6: Upon successful execution, you will see a final table.
201
Understand the concept of SAP HANA Modeling
Step 7: Also, you can find the newly created table in the Tables
folder.
202
203
You can right-click on the table name to get different options
for the table.
204
SAP HANA – Packages
206
Step 3: Refresh the content folder and you will find the name of
the newly created package there.
Step 4: Right-click on the package name and you will a list of
options of modeling objects such as:
Package… (sub-package)
Attribute view…
Analytic view…
Calculation view…
Analytic privilege…
Procedures…
The packages that we create within a package are sub-packages
and they save with a dot in their name after the name of the
main package (for example, test.dtf) where “dtf” is the name of
the sub-package.
Learn the working of SAP BusinessObjects Reporting Tools
What are Delivery units?
A delivery unit is a single entity or unit that maps or carries
multiple packages to it. All the packages mapped in a specific
delivery unit are transported to other systems as a single unit.
207
1. In SAP HANA Modeler perspective of SAP HANA Studio,
select Delivery Units from Quick View section given on the
right.
2. Enter the details for the new delivery unit such as Name,
Vendor, Responsible, Version, Support Package Version, Patch
Version. Click OK.
3. In the next step, select the packages you want to include in
your delivery unit. Check the box saying “Select all sub-
packages under the selected nodes” if you want to include all
the sub-packages as well.
4. For naming the sub-packages, add a name after the name of
the main package. For instance, DataFlair is the name of
the package so DataFlair.Employees will be the name of the
sub-package (add the sub-package’s name after the dot “.”)
5. Then, click on Finish.
208
What are Joins in SAP HANA?
Joins in SAP HANA are used for joining two or more tables
having relevant data or records that creates a logical
association between the tables. The joins are very important to
bind the modeling object in a logical framework because these
modeling objects are used for reporting and analytical purposes
later. And, if tables in SAP HANA are not joined with an
appropriate join type, proper associations will not be formed,
and the report analysis will be flawed.
209
Types of SAP HANA Joins
SAP HANA supports a number of ways to join different data
tables together. Before we start to learn the types of joins and
how they work in SAP HANA, let us understand the concept of
tables. Whenever we will talk about a join clause, we presume
that the join is applied between two tables. We refer to the two
tables as a left table and a right table. The two tables which we
will use for explanatory purposes are given below:
Table 1: Customer_Info
Customer_Name
Customer_ID
CT3
Neeti Rana
CT4
Nimish Kapoor
Table 2: Order_Details
Order_ID Customer_ID Product_Name Total_Units
You may refer to the SQL script given below to create your own
table in SAP HANA. We are providing the script to create the
two tables mentioned above. Here the name of our schema is
SALES_2018. You can insert the name of your
own schema under which you are creating the table.
Script:
1. CREATE COLUMN TABLE SALES_2018.
210
2. "CUSTOMER_INFO" (
3. "Customer_ID" nvarchar(10) primary key,
4. "Customer_Name" nvarchar(50)
5. );
6. INSERT INTO SALES_2018."CUSTOMER_INFO" VALUES ('CT1', 'Rajesh
Sharma');
7. INSERT INTO SALES_2018."CUSTOMER_INFO" VALUES ('CT2', 'Sameer
Khanna');
8. INSERT INTO SALES_2018."CUSTOMER_INFO" VALUES ('CT3', 'Neeti Rana');
9. INSERT INTO SALES_2018."CUSTOMER_INFO" VALUES ('CT4', 'Nimish
Kapoor');
As you can see, data related to only the customers CT1, CT2,
and CT3 were taken in the final table because only these are
211
common between the left and right table. Inner joins are very
useful while creating information models as you can use it to
join tables in Attribute Views. You can also use it to join the
master data tables with fact tables of Analytic Views when
referential integrity of records is not assured.
212
In our case, all the rows and columns from the left table
CUSTOMER_INFO will be fetched and joined with only the
matching records in the right table ORDER_DETAILS.
213
In our case, all the records from the right table
ORDER_DETAILS will be fetched and only the matching or
associated records from the left table CUSTOMER_INFO will
be taken. The final table is shown below.
214
The tables CUSTOMER_INFO and ORDER_DETAILS will
have all their records in the final table as shown below.
i. Referential Join
Referential join is the default join type in SAP HANA modeling.
A referential join is similar to an inner join. The only difference
between the two is referential integrity must be ensured in the
case of referential join otherwise it cannot be formed. So,
before we move forward with understanding referential
integrity. Let us learn the basic concept of a referential join. It
is formed between a fact table (transaction data or Analytic
View) and a master data table( Attribute View). Every master
215
data table has a primary key column which acts as a foreign key
in the fact table.
Referential joins in SAP HANA are used whenever there is a
primary key and foreign key association between two tables.
And, referential integrity is when for every value in the foreign
key column, there is a reference value in the primary key
column of the master data table. From a performance point of
view, referential joins are better than inner joins. Referential
joins are recommended for star schemas as long as referential
integrity is maintained.
216
Understand the concept of Data Warehousing in SAP HANA
ii. Text Join
Text joins in SAP HANA provides a description of text records
in the language specific to the user. If user A has selected the
language as German, then all the details regarding the table
and columns will be displayed to the user in German. We use
text joins to join a text table with a master data table. The text
table must have a primary key column linked to the other data
table and a language key column which contains user language
preferences. Text joins are also used with SAP tables having
SPRAS session language columns.
217
in easy steps.
218
together. But they don’t want all the report developers sitting
across the globe to access entire data regarding sales.
219
Now, we will learn two types of analytic privileges that you can
create in SAP HANA.
You can select any calculation, analytic or attribute view from the
available list. To add a view into your privilege, select the view
and click on Add.
This will open the user details pane. At the bottom, select
Analytic Privilege tab and add the analytic privilege by clicking
on the green plus + icon.
Step 7: Select Analytic Privileges
Search for the analytic privilege from the list using the search
option. Then, click on OK.
The analytic privilege, you select will be added and applied for
that user.
222
On the window of privilege creator, there are three options are
available while creating SQL analytic privilege; Attribute, SQL
Editor and Dynamic. All the three modes are for the users to
create analytic privilege according to the level of complexity of
restriction logic.
If you wish to create a simple privilege, then go with attribute
option. If you wish to apply a filter condition through a SQL
statement to define the privilege, then go for SQL Editor
method. You can also apply complex filter conditions having
sub-queries. And if your privilege has a complex formulation
logic which involves procedures and state of the user, then
select the dynamic option.
Step 2: SQL Editor option – You can simply enter the restriction
conditions as a SQL statement. You can make the logic as
complex as possible by creating the script as per the
requirement.
For instance, in our case, the restriction condition SQL
statement would be:
223
Please note that no other SAP HANA user can access this
particular set of data (related to sales only in the USA) because
they don’t have that analytic privilege assigned to them. For
them to access the data, you need to add that analytic privilege
to that particular user.
224
In SAP HANA Studio, there are a number of ways in which data
objects can be imported and exported.
Catalog Objects
ESRI Shapefiles
Landscape
The options within SAP HANA Content folder are:
Catalog Objects
Landscape
The options within SAP HANA Content folder are:
You can access the import and export options in the SAP HANA
Studio either in the File menu or in the SAP HANA
Modeler section on the right of SAP HANA Modeler
perspective.
Click on Import option and an Import dialog box will appear. In
this dialog, you will see seven different import methods. You
can select one of these seven options to import the data.
226
target system from which you wish to import the file.
Click Next.
1.1. Define Import Properties
A dialog will appear asking you to define all the import
properties such as Source File, Header Rows, Field Delimiter,
Import All Data Or Not, Target Table, etc. You can import the data
into an existing file or create a new file under a schema to
accommodate the data. Click on Next> to continue.
1.2. Manage Table Definition and Data Mappings
In the next window, you will get table definition and data
mapping options. Here you can assign a primary key, select
attributes and measures, view a summary of the table and map
the imported contents into an existing column.
3. Developer Mode
Select the Developer Mode option and click Next. Select a target
system from which you wish to import the file. Click Next.
Selecting System Folder
In the developer mode import dialog, you can browse the
system to select the folder containing the object of interest.
227
Next, you can add the desired database object from the selected
folder. Select a package (from Objects for Import section) and
click on Add button to import it into SAP HANA system.
4. Mass Import of Metadata
The Mass Import of Metadata option imports all the metadata
i.e. table definitions residing in SAP ERP source systems using
SAP load controllers. To import metadata using this method,
select the Mass Import of Metadata option and click Next. Select
a target system from which you wish to import the file.
Click Next.
Connection Details
Enter the SAP ERP system connection details to establish a
connection with the source and import the metadata through
this window. You need to fill the following details:
228
In addition to this, by using the Tables option, you can import
the tables and their contents of the exported tables into the
target system.
2. Delivery Unit
A delivery unit is a single entity or unit that maps multiple
packages to it. All the packages mapped in a specific delivery
unit are transported to other systems as a single unit.
In the SAP Support Mode option, you simply have to select the
data object facing issues and add it into the Selected section.
230
SAP HANA – In-Memory Computing
231
What makes an in-memory computing
technology like SAP HANA so widely
accepted?
Well, the answer lies in the question. The primary reason for its
success is the in-memory storage and computing technology.
Earlier, traditional database management methods were used
in enterprise applications where data was stored and fetched
from the storage disks. It added an extra process which is the
movement of data from the database (hard-disk) to the
respective application server. This made the entire process slow
and inefficient.
232
Explore the Unique Features of SAP HANA
233
It makes data processing about a million times faster than that
from the disk.
235
Planning Engine: This creates an execution plan to apply on
the database depending on the query sent to the computing
engine.
Metadata Manager: It stores all the information, i.e.,
metadata about the data table structures, views, data types,
field descriptions, etc.
Transaction Manager: It manages data transactions and
keeps track of Commits and Rollbacks.
Request Processing and Execution Control: This component
receives queries or requests from client applications and
directs it towards the respective component in the SAP
HANA environment. It consists of an SQL Parser, SQL
Script, MDX and Calculation Engine.
SQL Processor: It processes the incoming queries or SQL
statements and manipulates (insert, delete, update) data
accordingly.
Persistence Layer and Disk Logger: In in-memory
computing, RAM stores data which makes it volatile (can
erase due to system malfunctioning). Thus, the persistence
layer is responsible for taking data backups periodically and
store it permanently. It is known as Savepoints and by
default, the savepoint frequency is in every 5 minutes. The
data stores as log volumes and data volumes.
2. ERP Database
It has raw data residing in the ERP database which is sent to
the HANA database. Replication Agent (in ERP DB) and
Replication Server (in the computing engine) facilitates this
data movement. This component provides log-based data
provisioning.
237
SAP HANA – Reporting
1. Interaction languages
2. Connecting drivers
3. Reporting tools
239
At the base of these three layers is the core SAP HANA system
database. From there, users can fetch data to use it in the
reporting tools. Let us learn about reporting architecture by
understanding each layer in detail.
1. Interaction Languages
This layer consists of all the query languages which are used in
querying database tables and objects from the reporting tools
during report execution. The languages used for this purpose in
SAP HANA reporting are MDX, SQL, and SQL ODBC.
MDX: MDX language is used to access multi-dimensional data
objects instead of relational objects from the SAP HANA
240
database. MDX stands for MultiDimensional Expressions.
This language is used to query data from MS Excel in SAP
HANA reporting. It is the only language that enables
hierarchy accessing from SAP HANA system.
SQL: SQL is a standard database language for accessing data
from all kinds of platforms. In SAP HANA reporting, all the
reporting tools, which connect data through ODBC and
JDBC connections use SQL as the query language.
SQL ODBC: The SQL ODBC connection accesses data from
the reporting tools that connect to the SAP HANA system
using a BICS connection. BICS stands for Business
Intelligence Consumer Services.
2. Connecting Drivers
The connecting drivers act as a mediator between the SAP
HANA database layer and the reporting tools. The drivers
transport the language queries from the reporting tool to the
database and take back the data. Every reporting tool connects
to the database through a specific connecting driver. SAP
HANA uses four main types of drivers as discussed below:
SAP BusinessObjects
Reporting Tools – 9 Useful
Tools You Should Try
Today!
BY DATAFLAIR TEAM · UPDATED · MAY 2, 2019
Previously, we learned about SAP HANA In-Memory
Computing; now, in this article, we will talk about the reporting
platform of SAP HANA known as SAP BusinessObjects BI 4
client tools. We will discuss the different SAP BusinessObjects
reporting tools that are available under the SAP
BusinessObjects BI 4 package. We will also learn about the
different kinds of connections that are established to connect
SAP HANA database with the reporting tools.
243
Reporting Tools in SAP
BusinessObjects BI Platform
In this section, we will learn in detail about the reporting tools
or applications that are a part of the SAP BusinessObjects BI
Platform (client tools package):
1. SAP Lumira
SAP Lumira is a self-service data visualization tool which
enables business users to connect directly to the SAP HANA
database, create visualizations, stories, reports, transform data
and do ad-hoc dashboarding. It uses the BICS connection
driver and SQLDBC as the language to connect to the SAP
HANA database.
2. SAP Crystal Reports
SAP Crystal Reports is a Windows-based tool for creating
reports for printouts and publishing such as sales invoices,
sales orders report, etc. The reason behind the name Crystal
reports is because of its crystal clear and pixel perfect visuals.
Crystal reports use JDBC/ODBC connectors and SQL as the
interaction language to connect to the SAP HANA database.
3. SAP Design Studio
SAP Design Studio is a dashboard designing tool that enables
business users to create interactive reporting applications and
dashboards. It is an advance-level designing tool that connects
to the SAP HANA database using a BICS connection
communicating through SQLDBC language. Design Studio
requires complete compatibility and support with SAP
NetWeaver BW and SAP HANA platforms. It also provides the
capability to do server-side programming.
4. MS Excel
MS Excel is a popular Microsoft tool. Business users can
connect to the SAP HANA database through a direct OLAP
connection via an ODBO connector that communicates using
MDX language. Only MS Excel can access hierarchical data and
data in cube models, i.e., Analytic View and Calculation View in
SAP HANA.
5. Analysis Office (OLAP)
Analysis Office is a self-service analysis tool, especially for
multi-dimensional data analysis. It works on an OLAP type
244
connection that establishes via BICS connector using SQLDB
language connected to the SAP HANA database or SAP BW.
Users can access OLAP data sources and integrate data from
more than one OLAP sources.
6. Explorer
Explorer is an information-discovery or exploring tool using
which users from all over the enterprise can access the
information and draw fresh insights from it. The Explorer tool
connects to the SAP HANA database through an OLAP
connection using a JDBC connector and SQL language.
7. Universe designer (IDT/UDT)
Universe Designer is a platform to design an intermediate layer
on top of the SAP HANA database in case of indirect
(relational) connections made with reporting tools like WebI
(Web intelligence) and Dashboard Designer. Universes are
semantic layers which transform the information from
relational and OLAP non-SAP data sources into business
specific information. The reporting tools use the data available
in the universe models instead of directly accessing the
database.
A universe can be designed in two ways, either by using
an Information Design Tool (IDT) or Universe Design Tool
(UDT). A universe is a semantic layer where we can manipulate
data in different ways like applying filters, parameters, creating
or deleting objects, business layer views, predefined queries,
aggregation, variable mapping, etc.
245
9. Dashboard designer
Dashboard Designer is a reporting tool in SAP BusinessObjects
BI4 package for designing dashboards. It provides users with
pre-designed dashboard templates which we can utilize in
creating static or dynamic charts and visualizations as a part of
the dashboard. Dashboard designer also connects to data
sources via universes.
Connections in SAP
BusinessObjects Reporting
Tools
All the SAP BusinessObjects reporting tools that we have
discussed above form either a relational or an OLAP connection
with the database layer. A relational connection is made when
the user needs to access conventional data tables. Relational
connections can only be made via IDT or UDT created semantic
layers.
On the contrary, if you need to access multi-dimensional data
cubes, then an OLAP connection is required. It is a direct
connection to the business layer of the data model as opposed
to the relational connection which is an indirect connection.
These connections enable a user to connect to the data tables or
information views in SAP HANA.
246
After understanding the relational connection in SAP HANA, we
will learn about creating OLAP connections in SAP HANA.
First, we will understand what is OLAP connection and then
learn the process of creating a new OLAP connection in SAP
HANA.
Let’s begin with the tutorial.
247
Given below are the steps for establishing an OLAP connection:
You can select the secured OLAP connection stored with .cns
extension to fetch data tables and information views.
4 Essential Types of
Replication Modes in SAP
HANA System Replication
BY DATAFLAIR TEAM · MAY 1, 2019
Today, we are going to discuss the replication modes used in
SAP HANA system replication. We will be discussing three
main types of replication modes, i.e., Synchronous in-memory,
Synchronous, Synchronous full sync and Asynchronous
replication mode.
250
So, without wasting any time, let’s start the tutorial.
Have you checked? – SQL data types in SAP HANA
4. Asynchronous Mode
The asynchronous mode, as the name suggests, is where the
primary and secondary nodes work asynchronously. In this
mode, the primary node does not halt its transactions until the
secondary node sends acknowledgment or confirmation.
Instead, the primary node commits a transaction that has been
written on the log file of the primary system and sent to the
secondary node. It then sends redo log buffers to the secondary
system asynchronously.
253
The asynchronous mode is the best system replication mode in
terms of performance as there are no transaction delays and it
maintains data consistency throughout the process. Also, it is not
necessary for replication mode to wait for the I/O operations on
the secondary node. However, this mode is more vulnerable to
data loss as compared to other modes because unexpected
failovers and unplanned takeovers may cause data loss.
254
SAP HANA Sidecar Overview
SAP HANA Sidecar is an SAP HANA platform serving as a
secondary database and computing platform to an already
existing system with its own traditional database. Its approach
uses SAP HANA system for storage and computational
capabilities to carry out operations related to the data and
database objects of other systems.
255
The SAP Business Suite or SAP ECC system stores its business
modules and complete data set into a traditional database.
Now, SLT (SAP Landscape Transformation) tool replicates
these module objects or data tables into the SAP HANA system
serving as the Sidecar. The SLT tool is capable of doing real-
time data replication. Once, the data replicates into SAP HANA
database with the help of SLT, reports running on SAP ECC
system can read data directly from SAP HANA database (via a
secondary database connection), instead of processing it from
the traditional database. In addition to this, other BI and
reporting tools can also use this data for analytical and
reporting purposes.
Use Cases of SAP HANA Sidecar
Below are the four important use cases of SAP HANA Sidecar:
259
Database: This has raw data residing in the ERP database which
is sent to the HANA database. Replication Agent (in ERP DB)
and Replication Server (in the computing engine) provisions this
data movement. This component provides log-based data
provisioning.
263
friendly interface, animations, hints, and suggestions for
modeling and reporting.
Q.19 What are the three types of information views?
Ans. The three types of information views are:
1. Attribute view
Attribute view uses attributes, or the non-measurable, non-
quantifiable data to design views and models according to the
business logic. Thus, the data used in attribute view is referred
to as ‘Master data’ as it is used as reference information in other
views (analytic and calculation). The tables in attribute view do
not contain any facts or measure.
2. Analytic view
In an analytic view, we can create star schemas, having a
central transaction or fact table and multiple dimension tables
linked to it via primary keys. The measures are contained only
in the central transaction table which can be grouped or joined
with multiple dimension tables.
3. Calculation view
Calculation view is an advanced model which uses both
attribute and analytic view elements in it to make a complex
data model following complex business logic.
264
Ans. The types of joins in SAP HANA divides into two
categories; Standard database joins and Specific joins.
1. Standard Database Joins
Inner join: The inner join joins the left and right tables with only
matching records. That is, only that part in both tables that
coincides displays. Inner joins are very useful while creating
information models as we can use it to join tables in attribute
views.
Left outer join: The left outer join combines the entire left table
with only the matching records from the right table. If some the
engine can’t find any records matching for the left columns in
the right table then it returns NULL at those places.
Right outer join: The right outer join combines the entire right
table with the matching contents in the left table. We rarely use
the right outer join in real scenarios. It returns NULL in place
of values which do not find an association with the records in
the right table.
Full outer join/Union: A full outer join combines all the records
from both left and right tables irrespective of the matching
conditions. The cells which are not able to find any association
with the other table are left NULL.
2. SAP HANA Specific Joins
Referential join: Referential joins are like inner joins but with a
condition of keeping the referential integrity intact.
We use it whenever there is a primary key and foreign key
association between two tables. And, referential integrity is
when for every value in the foreign key column, there is a
reference value in the primary key column of the master data
table. From a performance point of view, referential joins are
better than inner joins. Referential joins are necessary for star
schemas as long as referential integrity maintains.
Text join: Text join provides a description of text records in the
language specific to the user. If user A selects the language as
German, then all the details regarding the table and columns
will display to the user in German. We use text joins for joining
a text table with a master data table.
Note: This one is the favorite SAP HANA interview question of
most interviewees.
Don’t miss the Joins in SAP HANA Tutorial
Q.22 What are analytic privileges in SAP HANA?
Ans. Analytic privileges in SAP HANA are data access
restrictions which define and assigns to selected users. They
work as data security tools for SAP HANA users and clients.
Analytic privileges provide row-level data security to SAP
HANA users on contrary to object-level security which the
265
object privileges assign. Thus, it restricts users to see only a
selected section of data from the entire data set.
Q.23 What are the packages in SAP HANA?
Ans. Packages are folders which contains all the modeling
related data objects. We call it a package because it can contain
all the information modeling data in a complete package and
we can use it for transferring (Import/Export) purposes. The
design-time objects such as information views, sub-packages,
procedure, analytic privilege reside in a package.
There are two types of packages:
Structural
Non-structural
Q.24 What are schemas in SAP HANA?
Ans. The database elements of a system reside in the Catalog
node of SAP HANA Modeler. The relational SAP HANA
database divides into sub-databases within the Catalog node as
schemas. Schemas are like containers containing all the
different elements or objects of a relational database. It
categorizes important information about a database into
folders such as indexes, tables, views, triggers, sequences,
procedures, functions, etc.
Do you know? – How to Create Schemas in SAP HANA
Q.25 Difference between OLAP and relational connection to SAP HANA.
Ans. A relational connection establishes when the user needs to
access conventional data tables. Relational connections can
only create via IDT or UDT created semantic layers.
On the contrary, if we need to access multi-dimensional data
cubes, then we need an OLAP connection. It is a direct
connection to the business layer of the data model as opposed
to the relational connection which is an indirect connection.
These connections enable a user to connect to the data tables or
information views in SAP HANA.
Q.26 What is referential join? Explain referential integrity.
Referential join is the default join type in HANA modeling. A
referential join is very similar to an inner join. The only
difference between the two is referential integrity must be
ensured in the case of referential join otherwise it cannot be
formed. Referential join forms between a fact table (transaction
data or analytic view) and a master data table (attribute view).
Every master data table has a primary key column which acts as
a foreign key in the fact table.
We use referential joins whenever there is a primary key and
foreign key association between two tables. And, referential
integrity is when for every value in the foreign key column,
there is a reference value in the primary key column of the
266
master data table. From a performance point of view,
referential joins are better than inner joins. Referential joins
are necessary for star schemas as long as referential integrity
maintains.
Q.27 What are SAP Business Objects BI 4 reporting tools?
Ans. SAP Business Objects BI 4 client tools are SAP products
that offer reporting applications and tools that use data from
SAP BW and SAP HANA for reporting and analysis purpose.
The list of reporting and dashboarding tools available under
SAP Business Objects BI 4 package is:
SAP Lumira
Web Intelligence
SAP Crystal Reports
Design Studio
Dashboard designer
Universe Designer (IDT/UDT)
BusinessObjects Explorer
Analysis Office
MS Excel
Have a look at the working of all SAP BusinessObjects Reporting
Tools
Q.28 Difference between Catalog and Content node.
The contents of an SAP HANA system (database) majorly
divides into two folders; Catalog and Content folder.
Catalog folder: The Catalog node acts as a data directory for SAP
HANA system and keeps structured information of all the
physical objects in HANA. It primarily contains schemas and
each of them divides into different folders like Column Views,
EPM Models, Functions, Indexes, Procedures, Sequences, Tables,
Triggers and Views.
Content folder: The Content node contains the design-time
repository objects such as the information models created in
SAP HANA Modeler. Packages contain the information models.
Thus, the Content node mainly contains packages created by
users. Within each package are the Attribute Views, Analytic
Views, Calculation Views, Analytic Privileges and Decision
tables created by a HANA user.
Q.29 What are the ways to create a table in SAP HANA?
There are two ways of creating tables in SAP HANA. One
method is a command line method, where we use the SQL console
to write an SQL script and create a table. The second method is
a GUI based method where we use a graphical interface to create
a table.
Must Learn – Steps to Create Tables in SAP HANA
Q.30 Types of connecting drivers used by SAP HANA reporting tools?
267
SAP HANA uses four main types of drivers as discussed below:
Q.1 What are the ways in which you can connect to reporting
tools from SAP HANA?
Ans. SAP HANA users or the users at the reporting end of the
setup can have a connection established to the other end in two
ways:
First is the direct way where reporting tools can connect
directly to the SAP HANA database. This direct connection
is an OLAP type connection. The reporting tools which
connect directly to the SAP HANA system are Design Studio,
SAP Lumira, Business Explorer, Analysis of MS Office, Crystal
Reports, etc.
The second way is an indirect way of connection. It is a
relational connection established by creating a universe
using the Information Design Tool (IDT). The reporting
tools using this method of connection to SAP HANA
database are Web intelligence tools, SAP Dashboards, Crystal
reports for enterprise.
Ans. There are two ways in which the reporting tools can
connect to SAP HANA. One way is a direct OLAP connection
and another is an indirect relational connection.
In the relational connection type, reporting tools fetch data
from a universe layer instead of connecting directly to SAP
HANA. Thus, SAP Business Objects Universe acts like a middle
layer between reporting tools and SAP HANA. A universe contains
data foundation layer which holds data tables with joins and
conditions are applied to them (much like information views).
Reporting tools such as WebI, Crystal Reports for Enterprise
and Dashboard designer use Universe as an intermediate layer
to connect to SAP HANA. Although, the option of connecting
directly to SAP HANA is available in the current versions of
Web Intelligence.
Operator: INTERSECT
Description: This operator is used to combine the outputs
of two or more SQL select statements or query expressions
and return all the common rows.
Operator: EXCEPT
Description: This operator takes the result from the first
query, removes the rows selected by the second query and
gives the output. It is also referred to as MINUS.
Q.5 Which data types are supported in SAP HANA SQL
scripting?
Ans. There are eight categories of data types in SQL. Mostly, all
of the data types can be used in SAP HANA.
Binary data type: We can assign a binary data type to the data
values that store binary data bytes.
269
Boolean data type: The Boolean data type is for the values that
store Boolean values. The Boolean values are TRUE,
FALSE and UNKNOWN (also known as NULL). This data type
can also return 1 for TRUE and 0 for FALSE if the Boolean type
is not supported.
Numeric data type: The numeric data types are for the values to
store numeric information in different ways. Each data type has
a minimum and maximum value and any value less than the
minimum or greater than the maximum is not supported.
Characteristic string data type: The character string data type is for
such values that store values containing character strings.
There are two main types of character string data
types, VARCHAR and NVARCHAR.
Datetime data type: The values of the datetime data type stores
date and time information.
Large Object (LOB) data type: The values of LOB i.e. large object
data type contains a large amount of data like images or text
documents.
Multi-valued data type: The multi-valued data type is for the value
that stores a collection of values sharing the same data type.
The multi-valued data type values are also known as nested data
types. SAP HANA supports all basic data types in multi-valued
data type values such as FLOAT, DECIMAL, VARCHAR,
INTEGER. It does not support the complex ones like TEXT,
LOB and spatial data types.
Spatial data type: The spatial data type is used for the values
which store spatial data regarding spatial objects like points,
lines or polygons, etc.
Explore the features of SQL Data Types in SAP HANA
Note: Data types questions are very popular in SAP HANA
interview. Prepare it well.
Q.6 What is the difference between VARCHAR and NVARCHAR in SAP
HANA SQL?
Ans. Both VARCHAR and NVARCHAR are numeric data types
in SQL used in SAP HANA.
VARCHAR
The VARCHAR(<n>) data type assigns a character string of
variable length. It contains only the 7-bit ASCII character strings.
The length of the character string is <n> and has a limit of a
value between 1 and 5000.
271
For instance, you can see the list of items in the object
COUNTRYNAME, in the form of a bar chart representation,
a statistics box at the bottom, the count and distribution
percentage for the occurrence of each value. This helps in a
detailed analysis of the data from the source.
Also, you can select an item and view its data type, native data
type, column precision, column scale and row count in the statistics
box.
You can get each data column available in the list profiled by
clicking on its name.
Learn the concept and benefits of SAP HANA SQL Data Profiling
Q.9 What are JSON object expressions in SAP HANA?
Ans. The JSON Object expressions used in SAP HANA generate
a JSON object. A typical JSON object has two elements; Key
and Value.
A “<key>” is a string literal which must be in double quotes “”
always. And a <value> is an expression specific to a key and can
be a simple value (string, integer), JSON object enclosed in {}
braces or an array []. One can only use JSON object expressions
while working with the JSON collection tables. The reference
statements of JSON Object expressions are SELECT, INSERT
INTO, UPDATE or use with operators like +,-,/,*.
Example:
{“firstname”:’Aditya’, “lastname”:’Kapoor’, “age”:45, “address”:
{ ‘street’: ‘Flat no.512, wing B, Leela Residency’, ‘city’: ‘Mumbai’
}}
Q.10 What are SQL sequences in SAP HANA? What is the difference
between CURRVAL and NEXTVAL?
Ans. SQL sequences are integer values generated automatically
on executing a SQL statement. A sequence can be any trail of
numbers like 100, 101, 102, and so on. You can use SQL
sequences in SAP HANA databases and applications where
there is a need to generate a unique ID on every new record
entered in a database.
The sequence statement can return two values, current value or
next value. When you use the keyword CURRVAL, then you will
get the current value of a sequence as a result. But, when you
use keyword NEXTVAL, you will get the succeeding value (next
value) of the current value.
Q.11 What are SQL synonyms in SAP HANA? Explain its types.
Ans. SQL synonyms are alternate names given to a database
object residing in a particular schema in SAP HANA. That is,
synonyms are an alias of database objects. The SQL synonyms
are not database objects in themselves but are just used as
pointers to the real database objects. In SAP HANA, we can
272
create synonyms for several database objects like tables, views,
procedures, table functions, sequences, scalar functions, etc.
There are two types of SQL synonyms:
273
database structure), DROP (deletes or drops objects from the
database).
3. Data Control Language (DCL)
The DCL statements control user access and privileges to the
database. Commonly used DCL keywords are GRANT (to give
access privilege to database to the users), and REVOKE (to take
back the access privileges given using GRANT command).
Don’t miss the SAP HANA SQL Statements Tutorial
Q.14 What is the different between Synchronous, Synchronous in-
memory, and Synchronous full-sync replication modes?
Ans. Here is the different working of three replication modes:
Synchronous mode: In the synchronous mode of system
replication, the primary node waits and halts its transactions
till the time the secondary node sends an acknowledgment
indicating it has received the data log and persisted the log
volumes on its disk. The main advantage of using sync mode is
that it ensures and maintains consistency between the two nodes.
The primary node ensures that it will not commit any
transaction before the replication on the secondary node is
completed.
Synchronous in-memory mode: Synchronous in-memory mode is
the default replication mode. The primary node waits for a
confirmation message sent by the secondary node upon
receiving the log successfully. Until then, the primary
node/system commits no transactions. In other words, the
secondary system sends an acknowledgment back to the
primary system upon receiving the data successfully in its in-
memory.
Synchronous full sync mode: The full sync mode ensures complete
data protection i.e. zero data loss because it blocks the
transactions on the primary node until replication is
successfully completed on the secondary node. It blocks all the
operations on the primary node until the secondary node sends
an acknowledgment indicating that it has received the data logs
and persisted the log volumes on the disk.
Q.15 Explain run-length encoding compression used in SAP HANA?
Ans. We use data compression techniques to compress data
stored in column stores in HANA database. It is a necessary
step before storing data in HANA database to optimize SAP
HANA’s performance.
Run-length compression: In run-length encoding compression
method, it stores only one of the repeating value IDs along with
its start position. Suppose a data value with value ID 5 appears
3 times consecutively starting from position 0. Then the
compression will store only one instance off value ID 5 and the
274
start position as 0. Thus, we call it run length encoding because
it stores the start positions as run-length values.
Method type: RLE
Applied to: Main storage
Applied on: Several frequent column values
Q.16 What is SAP HANA sidecar?
Ans. SAP HANA sidecar is SAP HANA platform serving as a
secondary database and computing platform to a full-service,
already existing system with its own traditional database. SAP
HANA sidecar approach uses SAP HANA system for storage
and computational capabilities to carry out operations related
to the data and database objects of other systems.
Grasp the working of SAP HANA Sidecar in detail
Q.17 How is data imported/exported using Developer Mode in SAP
HANA?
Ans. The Developer Mode method is essentially used to
import/export individual database objects from a target system
to a location in the local client system. It is different from the
delivery unit method as in it, you have to export multiple
packages enclosed in a single unit and cannot export individual
files.
Q.18 What is SAP Support Mode?
Ans. We use the SAP Support Mode to export database objects
and data for SAP support purposes. Users use this export
method in case errors to seek help in troubleshooting and
debugging from the SAP Support team. In the SAP Support
Mode option, you simply have to select the data object facing
issues and add it into the Selected section. Then choose the
export location, i.e. to server or local client. Add required
details and click on Finish. It will export database object to the
support team’s system successfully.
Q.19 What are the potential risks to SAP HANA system?
Ans. There are some key risks to SAP HANA system against
which we implement security functionalities.
1. Web Applications
In a lot of SAP HANA scenarios, users use web browsers to
access applications deployed on SAP HANA system. Thus, a lot
of SAP HANA systems are easily available on the internet which
makes them prone to hacking. Also, unauthorized access is
possible through the web applications, where hackers can
interfere with HANA services. In addition to this, risks on SAP
HANA includes several web weaknesses such as XSS, SQL
injection, ABAP code injection, etc which makes intruding into
the system easy for the hackers.
2. RAM Scraping
In RAM scraping security threat, the malware or virus runs on
the in-memory along with the normal processes of SAP HANA.
275
This makes detecting the malware very difficult as the malware
also disappears as soon as the in-memory processes terminate
and leaves no footprint. RAM scraping poses the most
dangerous threat to SAP HANA as it uses in-memory virus
vectors because SAP HANA is also an in-memory technology.
We cannot encrypt the HANA in-memory processes on RAM
level as it would degrade the performance of the system.
3. Basis Security
In most scenarios, SAP HANA runs parallelly to other systems
in a system landscape which increases the overall complexity.
The entire system landscape becomes more prone to security
failures and glitches as multiple security processes and
functions related to SAP HANA are also involved in the system
environment.
276
Ans. SAP HANA users are broadly classified into two categories;
Technical (DBA) user and Database user.
1. Technical (DBA) User
The technical users are the ones that perform database
administration tasks in SAP HANA system. They are not the
usual users using HANA tools for accessing and transforming
data from the HANA database rather, they manage all the other
users. Some typical tasks performed by technical users are
to create database objects, assigning privileges to database users,
assigning privileges on packages and applications. SYSTEM, SYS,
and _SYS_REPO are the names of technical users that are
present in the SAP HANA system by default.
2. Database User
The database users are the actual users that interact with the
SAP HANA database to access and transform the data. Thus, it
is compulsory for every HANA user to have a database user
profile. We can create Database users either by SAP HANA
Studio GUI method or by SQL commands. The SQL statement for
creating a database user is CREATE USER (for standard user)
and CREATE RESTRICTED USER (for restricted user). Further,
there are two types of database users.
2.1. Standard Database User
The standard users are those who can create database objects
in the schemas owned by them and have read access for system
views.
2.2. Restricted Database User
The restricted database user type are the users who provision
other users using SAP HANA through client applications.
Initially, restricted users have no privileges and have limited
SQL access via SQL console. Usually one can assign
application-specific roles to a restricted user.
Note: The above question is most asked SAP HANA interview
question.
Q.23 What do you understand by roles in SAP HANA?
Ans. A ‘Role’ in SAP HANA is a collection of different privileges
granted as a single unit to a database user or another role in
runtime. The standard mechanism of granting privileges in SAP
HANA is through Roles.
By using roles instead of granting individual privileges, one can
pass on complex authorization concepts to users and
implement it in HANA system working. A role essentially
contains such collection of privileges using which the database
users can perform certain tasks like creating models and reports,
reading reports using client tools such as Microsoft
Excel, maintaining and operating databases and users, etc.
277
Have you checked the Analytic Privileges in SAP HANA article
Q.24 Enlist the scenarios in which object privileges are used in SAP
HANA.
Ans. Object privileges used in different scenarios are given
below:
We can use object privileges to authorize run time database
objects.
Object privileges are used as source privileges to authorize
the access of remote data sources connected to SAP HANA
through SAP HANA smart data access.
We can use object privileges to authorize activated
repository objects such as calculation views.
We can use object privileges to authorize schema
containing an activated repository object.
Q.25 Which privileges do you need to work on a schema, table or views in
SAP HANA?
Ans. An authenticated HANA system user requires the object
privileges listed below to have the permission to work on
schemas, tables or views.
ALL PRIVILEGES
CREATE ANY
CREATE VIRTUAL FUNCTION PACKAGE
ALTER
CREATE TEMPORARY TABLE
DEBUG
DELETE
DROP
EXECUTE
INDEX
INSERT
REFERENCES
SELECT
TRIGGER
UPDATE
Q.26 What are the most probable reasons for SAP HANA system
lockdown?
Ans. The most probable reasons for a system to go into a
lockdown mode are explained below:
Expiration of a temporary license which stays valid only for
90 days from SAP HANA database installation.
When you have not renewed a permanent license key and
the temporary key has also expired after 28 days.
The hardware key changes while using a temporary license
key.
When you have an enforced license key type and you exceed
the permitted memory usage on it.
278
When you delete all the existing license keys on your
system.
Q.27 What is the difference between unenforced and enforced licence
keys?
Ans. There are two types of permanent license keys; unenforced
license key and enforced license key.
Unenforced License Key: In the case of having an unenforced
license key, if you exceed memory usage of SAP HANA
system than what your license allows, it will not affect your
HANA system. The system will not get locked down,
instead, the user will receive a memory over usage message
warning. That is if you have a license for using 1 TB
memory, but you use 2 TB memory, then you will only get a
warning message for the exceeding usage of HANA
memory.
Enforced License Key: As opposed to the unenforced license
key, the enforced license key locks a HANA system if the
user exceeds the licensed memory usage. In this case, the
user needs to restart the system and request for a new
permanent license for installation with the same or
extended memory usage limit.
Do check the SAP HANA License Management Guide
Q.28 Which SQL statements will you use to check your current HANA
license details, install a new license and delete a license?
Ans. To check the license properties of your HANA system,
enter:
1. SELECT*FROM “SYS”.”M_LICENSE”;
To install a new license key, enter:
https://community.microstrategy.com/s/article/SAP-HANA-Best-Practices-for-
Performance?language=en_US
Title
Content
Query Optimization
Eliminates unused SQL passes, e.g. a temp table is created but not
referenced in a later pass
Reuses redundant SQL passes
E.g. exact same temp table is created multiple times single temp table is
created
Combines SQL passes where the SELECT list is different
o E.g. two temp tables have same FROM clause, same JOINs,
same WHERE clause, same GROUP BY SELECT lists are
combined into single SELECT statement
Combines SQL passes where the WHERE clause is different
280
o E.g. two temp tables have same SELECT list, same FROM
clause, same JOINs, same GROUP BY predicates from the
WHERE clause are moved into CASE statements in the SELECT
list.
The default setting for SAP HANA is to enable SQL Global Optimization at its
highest level. If your Database Instance is configured as an earlier version of SAP
HANA, you may have to enable this setting manually. For more information, see
the System Administration Guide.
Bulk Inserts
Parameterized inserts are supported by SAP HANA. MicroStrategy Developers
must configure the MicroStrategy Database Connection to enable the use of
parameterized inserts into SAP HANA.
281
Default VLDB Settings for SAP HANA
Intermediate Table
Tables True temporary table
Type
Intermediate Table
Indexing Don’t create an index
Index
UNION multiple
Select/Insert Do NOT USE UNION
INSERT
282
Distinct / Group By
Select/Insert Use DISTINCT
Option
GROUP BY Non-ID
Select/Insert Use Group by
Attribute
select <column_expressions>
from <tables_and_joins>
where <filter_expressions>
group by <column_expressions>[Select Post String][Select Statement Post
String]
284
join LU_MONTH a14
on (coalesce(pa11.MONTH_ID, pa12.MONTH_ID) = a14.MONTH_ID)) pa11
full outer join LU_YEAR a12
on (pa11.YEAR_ID = a12.YEAR_ID)
Query Generation
285
Reports that use Attribute qualification with M-M relationships, e.g. show
Revenue by Category, filter on Catalog
Reports that “raise the level” of a filter, e.g. dimensional metric at Region
level, but qualify on Store
Reports that use non-aggregatable metrics, e.g. inventory metrics
Reports that use Dimensional extensions
Reports that use Attribute to attribute comparison in the filter
The default setting for Sub Query Type for SAP HANA 1.0 SP2 is Option 2 –
“Where col1 in (select s1.col1…) falling back to EXISTS (select * …) for multiple
columns IN.” In most cases, the subquery expression will be generated with IN
syntax.
If the subquery logically requires more than one column, then an expression
using EXISTS syntax is generated.
The other settings are not likely to be advantageous with SAP HANA:
286
Option 3 – “Where (col1, col2) in (Select s1.col1, s1.col2…)”
SAP HANA supports multiple columns in an IN subquery, but the
performance does not show much improvement.
Option 4 – “Use temporary table falling back to [Option 0]
for correlated subqueries” IN performs better than EXISTS for. Option 6 is
better than Option 4 for SAP HANA
Option 5 – “WHERE col1 IN (select s1.col1), falling back to [Option 1] for
multiple columns” EXISTS (select * …) performs better than EXISTS
(select col1, col2), so Option 2 is a better choice than Option 5.
- Disable (default)
Parallel Query Execution - Enable for multiple data
Project, Query
Improvement Estimate in source reports only
Report Optimizations
SQL View - Enable for all reports that
support it
287
By default MicroStrategy submits all queries directly because of a small but real
overhead introduced by preparing statements. To better support clustered
deployments of SAP HANA, MicroStrategy Intelligence Server will submit all
queries as prepared statements if the following registry key is created on the
Intelligence Server machine:
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MicroStrategy\DSS
Suite\ConnectionLimit]
"UsePrepareStatement"=dword:00000001
Multi-Source
No SAP HANA specific customizations were made for this feature.
Aggregation
No SAP HANA specific customizations were made for this feature.
Normalization
No SAP HANA specific customizations were made for this feature.
Data Fetch
No SAP HANA specific customizations were made for this feature.
Partitioning
No SAP HANA specific customizations were made for this feature.
288