Professional Documents
Culture Documents
Sizing Guide
June 10, 2015
Contents
Document Update History ............................................................................................................................ 4
Who should use this document? .................................................................................................................. 5
Prerequisites for Sizing ................................................................................................................................. 5
Terminology .................................................................................................................................................. 6
Think time ............................................................................................................................................. 6
Users ..................................................................................................................................................... 6
Sizing SAP Lumira, Server for teams and SAP Lumira, Server for BI Platform .............................................. 8
Understanding Memory Management ..................................................................................................... 8
Sizing Lumira, Server for BI Platform ........................................................................................................ 9
Lumira, Server for BI Platform Architecture ....................................................................................... 10
Sizing Lumira, Server for teams .............................................................................................................. 12
Sizing SAP Lumira, Desktop Edition............................................................................................................. 13
Memory Settings ..................................................................................................................................... 13
Multi-User Sizing ..................................................................................................................................... 13
Sizing Memory (RAM) ......................................................................................................................... 13
Sizing Disk (User Profile) ..................................................................................................................... 13
Sizing SAP Lumira, Server for HANA............................................................................................................ 14
Lumira, Server for HANA Pre-Sizing Checklist ......................................................................................... 14
Getting Started with HANA and Lumira, Server for HANA ..................................................................... 15
Understanding Lumira, Server for HANA Processing .............................................................................. 15
Lumira, Server for HANA Sizing Methodology ........................................................................................ 16
Sizing Steps and Methodology ............................................................................................................ 16
Assumptions ........................................................................................................................................ 16
Prerequisites ....................................................................................................................................... 16
HANA Cluster Considerations ............................................................................................................. 18
Sizing Calculation ................................................................................................................................ 18
Tuning Options ........................................................................................................................................ 20
Appendix: Obtaining CPU Processing Time using HANA Studio ................................................................. 21
Find the Performance Information ......................................................................................................... 21
Calculation .............................................................................................................................................. 23
Appendix: Sizing SAP HANA ........................................................................................................................ 24
Details
May 2013
Initial document.
April 8, 2014
Sizing Methodology for Lumira Server updated. Sizing for Lumira Desktop removed.
Removed sample sizing calculation.
Added Getting Started with HANA and Lumira Server section, which provides
general sizing guidance for customers who dont yet have HANA systems. Changed
typical user think times to 10 seconds (from 600) to account for more typical
Lumira-style workflow.
Dec 3, 2014
March 9, 2015
June 8 2015
Added Lumira, Server for BI Platform section to reflect the Lumira 1.25 release.
Added Terminology section, updated product names, and re-organized few
sections for a better flow.
Terminology
The following terms are used throughout this guide. You must understand clearly how these terms, as
defined below, map to your organizations setup in order to derive your sizing estimate.
Think time
Refers to the time a user takes between actions that cause a load on a system. Normally a user does not
constantly click on an application. The amount of time a user spends on processing the information
displayed on screen before taking any subsequent action is referred to as think time.
Users
When sizing Lumira in terms of users, there are two dimensions to consider:
User Class: relates to the load in the system generated by user workflow.
User Types: helps you anticipate the concurrency ratio of users in the system.
User Class
Lumira workflows are divided into two user categories: Consumer and Analyst. Typically consumers will
utilize less system resources because their activities are principally related to viewing existing
documents.
Consumers: generally use the system to view cached data presented as information, drill, filter, and
occasionally refresh the data when a document is opened. Multiple consumers in a system would view
the same Lumira document created and distributed by analysts.
Analysts: perform more resource-intensive operations including ad-hoc analysis and customizing
content as required. Analysts use their own exclusive and detail-rich Lumira documents that contain the
most up-to-date data. A typical analyst workflow might involve opening a Lumira document, refreshing
the data, and editing visualizations.
Both consumers and analysts typically spend an average of 10 seconds think time in between on screen
actions.
You should use think time in conjunction with user classes to reach the most accurate sizing estimates.
User classes help you quantify and distinguish system usage and the subsequent load generation for the
two Lumira user categories. In your sizing exercise, workflows by a certain user class may have a
different think time between operations compared to other system users.
Active Concurrent Users
Although users are collectively the total number of user accounts in your system, only some users will be
actively using your system together. Other users will be mainly idle after they log on. For sizing
purposes, you need to determine how many of the active users will be concurrently generating loads on
system resources; this user subset is referred to as active concurrent users.
The following example illustrates how to estimate the active concurrent users.
Lets assume your organization has 3,500 users with accounts for Lumira Server products. You estimate
that only 20% of these users will actually log on to Lumira server. However, these 700 active users will
use Lumira server for only part of their tasks. Lets assume that 20% of the active users will concurrently
view, edit, refresh Lumira documents. Our example would therefore have 140 active concurrent users.
In our example, 3,500 users translated to 140 active concurrent users - a 4% concurrency ratio. Typical
concurrency recommendations vary depending on the size of the deployment and other factors
including the kind of workflows users perform.
When sizing Lumira Server products, specify your inputs in terms of active concurrent users.
If you expect a concurrency ratio that is higher than normal, you should expect a heavier load and would
need to compensate accordingly. If you require guidance to estimate the user concurrency ratio in your
organization, please consult your SAP representative.
Sizing SAP Lumira, Server for teams and SAP Lumira, Server for BI Platform
The following are common sizing recommendations for Lumira, Server for teams / BI Platform; they are
based on the same underlying BI Platform architecture.
1. A CPU core refers to a physical (not hyper-threaded) core on a physical machine. In a virtual
machine, this is the equivalent to a logical processor.
2. Merged data sets are more complex to process, and can require more memory and processing
resources.
3. The refresh and edit workflows are memory-intensive operations requiring new copies of the
data to be loaded in the in-memory data engine.
4. It is recommended that you build your system to have at most an average 65% CPU utilization
rate to support potential bursts in activity. Performance of both physical and virtual systems can
degrade when the CPU utilization rate exceeds 80%.
5. The maximum memory utilized should not exceed the physical memory available. Refer to the
FRS disk recommendations mentioned in the BI 4 Sizing Guide.
SAP strongly recommends that BI virtual machines have reservations for the memory
and logical CPUs assigned to them.
For more in-depth information on BI and Virtualization, please refer to the SAP BI 4
Virtualization section at www.sap.com/bivirtualization.
Note: The recommendations outlined in this section do not apply to Lumira Desktop or Lumira, Server
for HANA as they have different architectures.
60,000,000
10
12
15
700,000
15
25
35
32
48
64
24
24
Lumira Server:
The Lumira Server processes Lumira content on BI Platform. This server hosts the in-memory data
engine which is used as an offline data processing engine for Lumira. It is a separate product from HANA
but borrows many concepts such as in-memory, column store, parallelization, and compression. Like
other documents in BI Platform, Lumira documents are also saved in the Input / Output File Repository
servers. The data is loaded into the in-memory data engine only when a user opens a Lumira document.
Lumira Scheduling Service:
10
Lumira Scheduling Service is a service within the Adaptive Job Server. This server enables the scheduling
of Lumira documents.
Lumira Web Application:
The BI Launchpad and CMC applications are embedded in the Lumira Web Application to allow access to
Lumira content in the BI applications.
Lumira Restful Web services:
Lumira Restful Web Services provides the web services required by Lumira Desktop to interact with the
BI Platform such as login or to save Lumira document.
Refer to the following links for more Lumira, Server for BI Platform details.
http://scn.sap.com/docs/DOC-63551: contains the latest information regarding Lumira, Server
for BI Platform functionalities and support statements.
http://scn.sap.com/docs/DOC-26507: refer to the Architecture Process Flow section for a step
by step explanation of how Lumira user loads are processed within a BI Platform deployment.
11
Minimum memory
required (RAM in GB)
Recommended Active
Concurrent Users
10,000
8GB
500,000
32GB
10
100,000,000
32GB
The recommendations listed in Table 3 are necessary to support the following user load:
Typical Analyst Workflow
Log into Lumira, Server for teams
List available documents
View his/her document
Refresh current document
Save current document
Close Lumira Document (Navigate back to listing page)
Log out
Table 4: Typical Analyst workflow used for Lumira, Server for teams sizing tests
For the workflows used, all users view different document and then refresh. We have factored in an
average idle think time of 10 seconds in between each operation. The workflow involves loading and
updating data into the in-memory data engine.
12
Multi-User Sizing
SAP Lumira, Desktop Edition supports deployment in multi-user environments such as Citrix and
Windows Remote Desktop Services. Be sure to check the SAP Lumira, Desktop Edition PAM for
supported platforms.
There are two general approaches to multi-user application delivery: multiple sessions in the same
machine or per-user virtual machines. Lumira works with both configurations and the sizing is identical.
Sizing in general for multi-user environments is to multiply the memory requirement by the number of
expected concurrent users. For disk storage, multiply the total number of expected users assigned to a
server by the disk storage requirement.
Sizing Memory (RAM)
Each users session requires memory in which to operate. Sizing of a multi-user deployment follows the
single-user machine specifications in the PAM: 4GB of RAM. Be sure to check the PAM for up-to-date
platform specifications and requirements.
Sizing Disk (User Profile)
Each Desktop Edition user has preferences and per-user configuration that needs to be saved. This
information is stored in the users profile on disk. The amount for sizing purposes is 100MB of disk
storage per user. This amount doesnt account for saved document storage. As an administrator, you
may or may not allow users to store Lumira or other types of documents in their user profile on the
server. If you do, you should account for this additional storage requirement.
13
How many active concurrent users need to be supported by the deployment? See Active
Concurrent Users for more information.
What types of users will be using each tool? Consumers (consumption workflow) and Analysts
(design workflow)? See User Class for more information.
Do you know how users will use Lumira? Do they require always up-to-date data or can they
operate with cached results? How users use the tools affects the workload they produce.
What types of data sources will your users access? Is your data located on a HANA server for
testing?
How will you measure user workflow impact on HANA? Will you measure the user workflow via
Lumira Desktop or Lumira, Server for HANA?
How many HANA machines are to be involved in the Lumira analytics? Do you have a cluster of
HANA machines with data distributed among the nodes?
14
What are the basic CPU and memory capabilities of each HANA machine involved in the Lumira
analytics?
15
Clustering
If you have a cluster of HANA machines, its important to know that the analytic impact depends on
where the data is stored. For example, if machine A has Lumira, Server for HANA installed and the data
being analyzed is stored on machine B, the impact of the Lumira analytics will be on machine B since
that is where the data is and that is the HANA node that will be doing the processing of the queries on
that data.
In-Memory Multi-User Computing
HANA runs data analytics and queries in-memory. This makes sizing different since the processing is
CPU-oriented. When HANA runs a significantly complex analytic query, the processing is spread across
all the CPUs in the machine in order to complete the processing with the greatest speed.
In a multi-user scenario, queries are executed concurrently via multiple threads. In situations where a
complex query takes notable time to process, any subsequent queries may need to wait until the
complex query is processed if all threads / CPUs are not available. See the Tuning Options section below
for performance-related tips.
Workflow: Common user workflows are necessary to know. Expected user workflows need to be
accounted for since that is the load that needs to be accommodated. If you expect users to open five
documents and refresh them all at the same time, that is five times the load of one user. Knowing how
the users will actually use the system is important.
It is very important to know if the common workflow of the users is going to include refreshing
documents and if so, how frequently. Thats an important part of the load prediction and thus the sizing
estimate. The use of query result caching in HANA is an important factor here. Caching can significantly
help reduce load on the system if it is acceptable and allowed in the business context. I.e., it may be fine
for users to see slightly outdated data (seconds or minutes old). Conversely, if all users have a unique
security context that prevents query sharing, then caching will not have much effect on performance.
The following diagram demonstrates how various user workflows may fit together to form the overall
load on a HANA system.
Average Query Response Time: The amount of time it takes to run representative queries against your
data is required. Average and/or 90th percentile response time needs to be measured using
representative data sets from the customer.
Tip: HANA Studio can be used to obtain query execution time. The best method for measuring query
performance is done with Lumira, Server for HANA, using user simulation scripts run by Apache JMeter
or HP LoadRunner. However, in the absence of Lumira, Server for HANA, prediction and simulation can
be done using Lumira Desktop connected to a HANA system.
Scripts should be written to simulate expected workflows of users. User simulation is meant to
approximate the actions of users, incorporating the steps they take through the product. Be sure to
allow for think time at the appropriate places in the workflow. Once user workflows are modelled, the
goal is typically to have the ability to instantiate multiple script sessions to simulate multiple users. You
then analyze the performance of the system as load is increased.
17
Sizing Calculation
Sizing Lumira, Server for HANA is done by factoring together the number of users, the user types and
their expected activity frequency and the time required to execute an average query.
Step 1: Workflow Analysis
In this step you measure the single-user execution time of each step of the identified workflows.
This can be done in one of two ways:
1. Using Lumira Desktop with HANA
requires Lumira 1.16 or newer.
2. Using Lumira, Server for HANA on HANA
Query execution times are measured by turning on Query Tracing in HANA Studio to determine how
much time is spent querying data for a given step of a workflow.
For more information on Query Tracing, see the Performance Trace tool, documented in the HANA
Admin Guide.
For each step of a workflow, make sure to allow enough time for the completion of the step so that all
the data has been delivered to the browser. Waiting for one minute between steps is generally
recommended.
For Each Workflow
Measure the CPU processing time
Step 2: Processing Load Calculation
In this step, determine the percentage of processing capacity that each workflow consumes, taking into
account the users role type and associated think time. The CPU processing time for the workflow is
measured by HANA and shown using HANA Studio. Finally, determine how much of the total processing
capacity is consumed as a percentage.
18
Note: CPU Time is the amount of processing power available during a period of time. For example, if a
system has 10 CPUs and the workflow to be measured takes 60 seconds, the system sitting idle would
be assumed to have 60 x 10 = 600 seconds of CPU time available. When HANA Studio reports CPU usage,
it reports it as a measure of CPU time used.
For Each Workflow:
Divide the full user time for the workflow by the CPU processing time to get the percentage of
system load produced.
Note: calculate the full user time as the amount of time all the CPUs provide during the user
workflow time. E.g., if the workflow takes 60 seconds and the machine is a 10 CPU system, that
HANA system will have had 600 seconds of CPU time available during that time period.
Multiply the number of required active users by the system load percentage to determine the
full system impact of this workflow
If the load on the HANA system is nearing its limit, you need to consider changes to
accommodate the load (by obtaining more HANA resources, changing the workflows,
redistributing the data in a cluster, etc.).
19
Tuning Options
The following aspects of queries can have a significant influence on performance. You may choose to
investigate these topics when attempting efforts to make your HANA usage as efficient as possible:
20
Find the tables node and open the table HOST_SERVICE_STATISTICS, as shown here
21
The next step is to determine the baseline idle CPU usage for the Index Server. Find two points in time
that define an idle period as shown below:
Scrolling farther to the right, locate the PROCESS_CPU_TIME column and make note of the CPU time at
the start and end of the time period, as shown below:
22
Calculation
Overall Time Duration: 4:04 to 4:05 60 seconds
The number of seconds of CPU time is determined by multiplying the number of seconds times the
number of CPUs in the system. For a 10 CPU system in this example: 60 * 10 = 600 seconds of CPU
time
CPU Time used: 76,725,080 76,723,740 = 1340 ms 1.3 seconds
Percentage of HANA processing power used: 1.3s 600s = 0.002166 0.22%
23
An additional HANA Sizing resource on the SAP Community Network is the article, SAP HANA Sizing.
24