Professional Documents
Culture Documents
It is a combination of hardware and software made to process massive real time data
Its best suited for performing real-time analytics, and developing and deploying realtime applications.
An in-memory database means all the data is stored in the memory (RAM). This is no time wasted in
loading the data from hard-disk to RAM or while processing keeping some data in RAM and temporary
some data on disk. Everything is in-memory all the time, which gives the CPUs quick access to data for
processing.
SAP HANA is equipped with multiengine query processing environment which supports relational as well as
graphical and text data within same system. It provides features that support significant processing speed,
Oracle/Microsoft/Teradata database but HANA is not just a database with bigger RAM.
It is a combination of a lot of hardware and software technologies. The way data is stored and processed
by the In-Memory Computing Engine (IMCE) is the true differentiator. Having that data available in RAM is
just the icing on the cake.
The table has a small number of rows (e. g. configuration tables, system tables).
processing is required. In row based tables all data in a row has to be read even though the
requirement may be to access data from a few columns.
Qs. What are the advantages of column-based tables?
Advantages:
o
Only affected columns have to be read during the selection process of a query. Any of the columns can
serve as an index.
o
Better Compression:
Columnar data storage allows highly efficient compression because the majority of the columns contain
only few distinct values (compared to number of rows).
o
In a column store, data is already vertically partitioned. This means that operations on different columns
can easily be processed in parallel. If multiple columns need to be searched or aggregated, each of these
operations can be assigned to a different processor core
In columnar tables, this information is stored physically next to each other, significantly increasing the
speed of certain data queries. Data is also compressed, enabling shorter loading times.
Conclusion:
To enable fast on-the-fly aggregations, ad-hoc reporting, and to benefit from compression mechanisms it is
recommended that transaction data is stored in a column-based table.
The SAP HANA data-base allows joining row-based tables with column-based tables. However, it is more
efficient to join tables that are located in the same row or column store. For example, master data that is
frequently joined with transaction data should also be stored in column-based tables.
Few more important points about column table:
1. HANA modeling views are only possible for column tables. Row based tables cannot be used in modeling
views.
2. For that reason Replication Server creates SAP HANA tables in column store by default.
3. Data Services also creates target tables in column store as default for SAP HANA database
4. The SQL command to create column table: CREATE COLUMN TABLE Table_Name...
5. The data storage type of a table can be modified from Row to Column storage with the SQL command
ALTER TABLE Table_Name COLUMN.
that can be processed by different processor cores. With the SAP HANA database, queries can be executed
rapidly and in parallel.
Qs. Why SAP HANA is fast?
The SAP HANA database is developed in C++ and runs on SUSE Linux Enterpise Server. SAP HANA
database consists of multiple servers and the most important component is the Index Server. SAP HANA
database consists of Index Server, Name Server, Statistics Server, Preprocessor Server and XS Engine.
Index Server:
o
It contains the actual data stores and the engines for processing the data.
The index server processes incoming SQL or MDX statements in the context of
authenticated sessions and transactions.
Persistence Layer:
The database persistence layer is responsible for durability and atomicity of transactions. It ensures that
the database can be restored to the most recent committed state after a restart and that transactions are
either completely executed or completely undone.
Preprocessor Server:
The index server uses the preprocessor server for analyzing text data and extracting the information on
which the text search capabilities are based.
Name Server:
The name server owns the information about the topology of SAP HANA system. In a distributed system,
the name server knows where the components are running and which data is located on which server.
Statistic Server:
The statistics server collects information about status, performance and resource consumption from the
other servers in the system.. The statistics server also provides a history of measurement data for further
analysis.
Session and Transaction Manager:
The Transaction manager coordinates database transactions, and keeps track of running and closed
transactions. When a transaction is committed or rolled back, the transaction manager informs the
involved storage engines about this event so they can execute necessary actions.
XS Engine:
XS Engine is an optional component. Using XS Engine clients can connect to SAP HANA database to fetch
data via HTTP.
The performance reduces dramatically if the user wants to do analysis on some data that is not already
pre-aggregated. With SAP HANA and its speedy engine, no pre-aggregation is required. The user can
perform any kind of operations in their reports and does not have to wait hours to get the data ready for
analysis.
Column Data Storage vs Row Data Storage: How Different are they Really?
Overview of Row Data Storage and Column Data Storage:
Relational databases typically use row-based data storage. However Column-based storage is more
suitable for many business applications. SAP HANA supports both row-based and column-based storage,
and is particularly optimized for column-based storage.
As shown in the figure below, a database table is conceptually a two-dimensional structure composed of
cells arranged in rows and columns.
Because computer memory is structured linearly, there are two options for the sequences of cell values
stored in contiguous memory locations:
Row Storage It stores table records in a sequence of rows.
Column Storage It stores table records in a sequence of columns i.e. the entries of a column is stored in
contiguous memory locations.
Traditional databases store data simply in rows. The HANA in-memory database stores data in both rows
and columns. It is this combination of both storage approaches that produces the speed, flexibility and
performance of the HANA database.
The table has a small number of rows (e. g. configuration tables, system
tables).
In case of analytic applications where aggregation are used and fast search
and processing is required. In row based tables all data in a row has to be read even though
the requirement may be to access data from a few columns.
In columnar tables, this information is stored physically next to each other, significantly increasing the
speed of certain data queries.
The following example shows the different usage of column and row storage, and positions them relative to
row and column queries. Column storage is most useful for OLAP queries (queries using any SQL aggregate
functions) because these queries get just a few attributes from every data entry. But for traditional OLTP
queries (queries not using any SQL aggregate functions), it is more advantageous to store all attributes
side-by-side in row tables. HANA combines the benefits of both row- and column-storage tables.
Conclusion: To enable fast on-the-fly aggregations, ad-hoc reporting, and to benefit from compression
mechanisms it is recommended that transaction data is stored in a column-based table.The SAP HANA
data-base allows joining row-based tables with column-based tables. However, it is more efficient to join
tables that are located in the same row or column store. For example, master data that is frequently joined
with transaction data should also be stored in column-based tables.
Qs:1 Which of the following nodes can you use when you create a calculation view with the
SAP HANA studio graphical interface? (Choose two)
A. Data Foundation
B. Aggregation
C. Join
D. Analytic Privilege
Answer
B,C
Qs:2 When table replication is suspended, what does the SAP Landscape Transformation (SLT)
server do?
A. It prevents the RFC connection from reading the source system logging tables.
B. It deletes the database triggers and the logging tables in the source system.
C. It stops the RFC connection and deletes the target tables in SAP HANA.
D. It keeps reading via the RFC connection from the source system but does not load the data into SAP
HANA.
Answer: A
Qs:3 Which of the following can be part of an analytic view? (Choose three)
A. Query transformation
B. Unions
C. Logical joins
D. Data foundation
E. Attributes
Answer: C,D,E
Qs:4 Which tool do you use for real-time data provisioning into SAP HANA?
A. SAP Landscape Transformation (SLT)
B. SAP BusinessObjects Data Federation Administration
C. SAP BusinessObjects Data Services
D. SAP Direct Extractor Connection (DXC)
Answer: A
Qs:5 You are experiencing performance problems with SAP BusinessObjects reports based on
SAP HANA data.
Which of the following can you do to increase performance? (Choose two)
A. Add only relevant data to the report queries.
B. Avoid aggregation and work on raw data.
C. Merge all relevant data into a consolidated report.
D. Use drill-down or linked reports.
Answer: A,D
Qs:6 You have set up replication from SAP ERP using SAP Landscape Transformation (SLT). You
notice that the information models do not show the latest data from ERP. What do you check
to investigate this? (Choose two)
A. Activation status of the information models
B. Transaction SAP ERP Data Modeler (SD11)
Qs:11 Your customer requires real-time replication. Where do you select the tables to be
replicated to SAP HANA?
A. In transaction LTR in SAP Landscape Transformation (SLT)
B. In the Import dialog of the Quick Launch of SAP HANA studio
C. In transaction SAP ERP Tables and Indexes Monitor (DB02)
D. In the Data Provisioning dialog of SAP HANA studio
Answer: D
Qs:12 Which of the following can you use as a source for a graphical calculation view? (Choose
three)
A. Calculation view
B. SQL view
C. Decision table
D. Table
E. Procedure
Answer: A,C,D
Qs:13 Which of the following can you check to investigate the query time in SAP HANA?
(Choose three)
A. The SQL plan cache
B. The Central Management Console
C. The expensive statements trace
D. The statistics server warning for long running statements
E. The System information tab of the Administration console
Answer: A,C,D
A. Recreate the role with the command CREATE ROLE InfoUser.
B. Recreate user PETER with GRANT OPTION.
C. Grant the role the WITH ADMIN OPTION.
D. Recreate the role with the command CREATE ROLE INFOUSER.
E. Grant the role with the command GRANT InfoUser to PETER.
Answer: A,D,E
Qs:15 Which of the following can you set up to enable the extraction of data from SAP
Business Warehouse (BW) into SAP HANA? (Choose three)
A. SAP System Landscape Directory (SLD)
B. SAP BusinessObjects Data Services
C. SAP Landscape Transformation (SLT)
D. Open hub
E. SAP HANA Direct Extractor Connection (DXC)
Answer: B,D,E
Qs:16 Which of the following does an SAP BusinessObjects universe use to communicate with
SAP HANA?
A. ABAP
B. SQL
C. MDX
D. BICS
Answer: B
Qs:17 Which of the following must you do in order to use SAP BusinessObjects Explorer on SAP
HANA data? (Choose two)
A. Create a delivery unit.
B. Create a business layer.
C. Create an information model.
D. Create an information space.
Answer: C,D
Qs:18 Where is the physical data stored, on which a calculation view is based?
A. In the _SYS_BI schema
B. In a schema
DXC leverages SAP Delivered Business Content DataSources , which are existing foundational data
models for key entities in SAP Business Suite systems
DXC provides a special In-Memory DataStore Object (IMDSO) to handle delta processing as available
in SAP BW.
DXC utilizes the embedded BW to enable extraction, which exists inside all NetWeaver 7.0 or higher
ABAP-based systems
Qs. What is the system view which contains Direct extractor connection (DXC) status
information?
M_EXTRACTORS
Qs. What is SAP HANA Extended Application Services (XS)?
It provides lightweight application services that are fully integrated into SAP HANA.
It allows clients to access the SAP HANA system via HTTP. Controller applications can run
completely natively on SAP HANA, without the need for an additional external application server.
No data is stored in the SAP HANA XS server itself. To read tables or views, to modify data or
to execute SQLScript database procedures and calculations, it connects to the index server (or
servers, in case of a distributed system).
Microsoft Windows x32 and x64 versions of: Windows XP, Windows Vista, Windows 7
Note: For Mac OS, HANA studio is available but there is no HANA client for that.
Qs. What are the system requirements for HANA studio?
Java JRE 1.6 or 1.7 must be installed to run the SAP HANA studio. The Java runtime must be specified in the
PATH variable. Make sure to choose the correct Java variant for installation of SAP HANA studio:
1.
Enter HANA system details, i.e. the Hostname & Instance Number and click Next.
1.
1.
Enter the database username & password to connect to the SAP HANA database.
Click on Next and then Finish.
Catalog:
The Catalog represents SAP HANAs data dictionary, i. e. all data structures, tables, and data which can be
used.
All the physical tables and views can be found under the Catalog node.
Content:
The Content represents the design-time repository which holds all information of data models created with
the Modeler.
Physically these models are stored in database tables which are also visible under Catalog. The Models are
organized in Packages. The Contents node just provides a different view on the same physical data.
The created Column Views are always located in schema _SYS_BIC, their metadata in schema _SYS_BI.
Qs. Does 32 bit version of HANA client work with SAP HANA repository and SAP HANA
Development perspective?
There is no 32 bit version of the repository client.
If you want to make use of the repository integration features, for example, in the Project Explorer view in
the SAP HANA Development perspective, you must install the 64 bit version of the repository client.
Qs. How can we set path to the repository client in HANA Studio?
1. In SAP HANA studio, choose Window > Preferences > SAP HANA Development > Repository Access
2. Choose Browse and enter the path to the SAP HANA client executable, regi.exe. For example, C:\Program
Files\sap\hdbclient\regi.exe
3. Choose Apply to enable the new setting.
4. Choose OK to save the settings.
SLT Replication
Qs. What are the different types of replication techniques?
There are 3 types of replication techniques:
1. SAP Landscape Transformation (SLT)
2. SAP Business Objects Data Services (BODS)
3. SAP HANA Direct Extractor Connection (DXC)
Note: There is one more replication technique called Sybase replication. It was part of initial offering for
HANA replication, but not positioned / supported anymore due to licensing issues and complexity and
mostly because SLT provides the same features.
Qs. What is SLT?
The SAP Landscape Transformation (LT) Replication Server is the SAP technology that allows us to load and
replicate data in real-time from SAP source systems and non-SAP source systems to an SAP HANA
environment.
The SAP LT Replication Server uses a trigger-based replication approach to pass data from the source
system to the target system.
Qs. Is there any pre-requisite before creating the configuration and replication?
For SAP source systems:
1.
2.
An RFC connection between the SAP source system and the SAP LT Replication Server
has to be established.
3.
User for RFC connection must have the role IUUC_REPL_REMOTE assigned.
4.
2.
3.
Ensure the database-specific library components for the SAP 7.20 REL or EXT kernel
are installed in the SAP LT Replication Server.
Adjusting the number of jobs (and reading type) to accelerate the load/replication
process
A rule specified in the Advanced Replication settings transaction for source tables such that data is
transformed during the replication process. Example you can specify rule to
Convert fields
Skip records
Creating synonyms
Writing new entries in admin tables in SLT server when a new table is
loaded/replicated
Qs. If you set the parameter data transfer jobs to 04 in a configuration SCHEMA1, a mass
transfer ID 001 is assigned. Then what jobs should be in the system?
1 Master job (IUUC_MONITOR_SCHEMA1)
1 Master Controller job (IUUC_REPL_CNTR_001_0001)
At most 4 parallel jobs for MT_ID 001 (DTL_MT_DATA_LOAD_001_ 01/~02/~03/~04)
Qs. What happens after the SLT replication is over?
The SLT replication server creates 1 user, 4 roles, 2 stored procedures and 8 tables.
1 User
1 Privilege
4 Roles
<REPLICATION SCHEMA>_DATA_PROV
<REPLICATION_SCHEMA>_POWER_USER
<REPLICATION_SCHEMA>_USER_ADMIN
<REPLICATION_SCHEMA>_SELECT
2 Stored procedures
RS_GRANT_ACCESS
RS_REVOKE_ACCESS
8 Tables
DD02L
DD02T
RS_LOG_FILES
RS_MESSAGES
RS_ORDER
RS_ORDER_EXT
RS_SCHEMA_MAP
RS_STATUS
Qs. What are the different replication scenarios?
Different replication scenarios are:
Load, Replicate, Stop, Suspend and Resume.
Load:
Starts an initial load of replication data from the source system. The procedure is a one-time event. After it
is completed, further changes to the source system database will not be replicated.
For the initial load procedure, neither database triggers nor logging tables are created in the source
system. Default settings use reading type 3 (DB_SETGET) with up to 3 background jobs in parallel to load
tables in parallel or subsequently into the HANA system.
Replicate:
Combines an initial load procedure and the subsequent replication procedure (real time or scheduled).
Before the initial load procedure will start, database trigger and related logging table are created for each
table in the source system as well as in SLT replication server.
Stop:
Stops any current load or replication process of a table.
The stop function will remove the database trigger and related logging tables completely. Only use this
function if you do want to continue a selected table otherwise you must initially load the table again to
ensure data consistency.
Suspend:
Pauses a table from a running replication. The database trigger will not be deleted from the source system.
The recording of changes will continue and related information is stored in the related logging tables in the
source system.
If you suspend tables for a long time the size of logging tables may increase and adjust the table space if
required.
Resume:
Restarts the application for a suspended table. The previous suspended replication will be resumed (no
new initial load required).
Qs. What happens if the replication is suspended for a long period of time or system outage of
SLT or HANA system?
The size of the logging tables increases.
Qs. How to avoid unnecessary logging information from being stored?
Pause the replication by stopping the schema-related jobs.
Qs. Will the table size in SAP HANA database and in the source system the same?
No. As HANA database supports compression, the table size in SAP HANA may be decreased.
Qs. When to go for table partitioning?
If the table size in HANA database exceeds 2 billion records, split the table by using portioning features by
using Advanced replication settings (transaction IUUC_REPL_CONT, tab page IUUC_REPL_TABSTG).
Qs. Where do you define transformation rules?
By using Advanced replication settings (transaction IUUC_REPL_CONT, tab page IUUC ASS RULE MAP)
Qs. Are there any special considerations if the source system is non-SAP system?
The concept of trigger-based replication is actually meant for SAP source systems. The main differences
are:
There will be a database connection between non-SAP source and SLT system instead of RFC.
Source must have primary key
Tables DD02L, DD02T which contains metadata are just initially loaded but not replicated.
The read modules reside on SLT system.
Tables with database specific formats may need transformation rules before they are replicated.
Only SAP supported databases are supported as non-SAP source systems.
Qs. Does SLT for SAP HANA support data compression like SAP HANA database?
Yes, this is automatically covered by the RFC connection used for data replication from the SAP source
system.
System Generated Schemas in SAP HANA
A database schema is a way to logically group objects such as tables, views, stored procedures etc. Think
of a schema as a container of objects.
There are 3 types of schemas.
1. User Defined Schema
2. System Defined Schema
_SYS_BIC: This schema contains all the columns views of activated objects. When the user activates the
Attribute View/Analytic View/Calculation View/Analytic Privilege /Procedure, the respective run-time objects
are created under _SYS_BIC->Column Views.
_SYS_REPO: Whatever the objects are there in the system is available in repository. This schema contains
the list of Activated objects, Inactive Objects, Package details and Runtime Objects information etc. Also
_SYS_REPO user must have SELECT privilege with grant option on the data schama.
_SYS_BI: This schema stores all the metadata of created column Views. It contains the tables for created
Variables, Time Data (Fiscal, Gregorian), Schema Mapping and Content Mapping tables.
_SYS_STATISTICS: This schema contains all the system configurations and parameters