Presented By
Abhishek Sur Solution Architect, InSync Solutions
Microsoft MVP
Agenda • Introduction to SAP HANA • Architecture • Key benefits which lead to SAP HANA as backend database system. • Difference between SAP HANA with other traditional RDBMS
• Few use Cases • Column Store vs Row based storage • Multiple Engines • Limitations
Introduction • SAP HANA is the in-memory analytic product which can help companies to do ad hoc analysis of business data in real time. • HANA is designed to deliver data in real time after analyzing large volumes of data. • It is completely re-imagined for real time business. • HANA transforms business by streamlining transaction, analytics, planning and predictive data processing on a single in-memory database so that the business can operate in real time.
• SAP HANA is developed in C++ and runs on SUSE Linux Enterprise Server
HANA Architecture SQL Passed either directly or using HANA Client Library
Index Server • This is the most important server that SAP HANA should have. This is mandatory server component. • Deals with Actual data stores and data processing engine • Deals with Persistent storage to selectively store data and transaction logs in background. • Contains Processing engine which processes and validates SQL or MDX statements in the context of authenticated session and transactions.
SAP HANA Database Index Server
Components Persistent Layer
Relational Data Engine
• This layer is to ensure durability and
• Relational data engine is responsible of
atomicity of transactions • Keeps track of committed state and writes to disk.
• During restart this layer restores the most recent committed transaction state and clears uncommitted transactions. • Capable of storing transaction logs during or after transaction is committed or completely
undone.
determining the storage mechanism of data. • It either chooses Row store or Column store for
data storage.
Components Connection and Session Management
Authorization maangement
• Authenticates a client to generate session.
• Invoked by HANA to check whether the user has
• Maintains a set of parameters per session like auto-commit, current transaction, isolation level etc. • Authentication based either by HANA database itself or can be delegated to
external providers.
required priviledges for requested resource. • Allows to grant permission for operation or for specific object to an user. • Can also restrict by dimension attribute
Components Planning Engine
Calc Engine
• Planning engine is capable of
• Creates logical plan for calculation
determining the data planning during transformation. • For example, during new year, the
planning engine can generate a copy of the data object while applying filters. • Determining different aggregation levels
during query execution. • It creates calculation models from domain specific models. • The calculation engine is responsible for accuracy of data.
Pre-Processor Server • Preprocessor server is used for analyzing textual data. • For any request, the Preprocessor server analyses the data to extract information from text data.
Name Server • Maintains System landscape information of the HANA System • It handles the topology of the server for a distributed database. • It decreases the time for re-indexing as it holds which data is on which server.
Statistical Server • Checks and analyzes the health of all components in HANA. • Statistical server is responsible for collecting data related to system resources, allocation of resources, consumption of resources and also checks overall performance of the system. • It stores historical data related to system performance which can be fetched
for analysis purpose.
Benefits of SAP HANA • Best suited for Analytics data. • Best in breed for In-memory computing • Empowers business users as opposed to developer. • Because most of the data reside in memory, it is said to be 3600 times faster than traditional databases. • It is a popular choice as a backend for SAP systems. • SAP HANA is also available in Cloud. • Compression is in-built which reduces the space requirements dramatically in HANA.
Difference Between HANA and Traditional Databases HANA Database
Traditional Database
•
Entire data is loaded in memory
•
Entire data is stored in disk
•
Allows column based as well as row based data storage
•
All data is in row based data storage.
•
Support massive parallel processing.
•
Generally only one core is responsible for one query execution.
•
OLAP queries performs best in HANA.
•
OLAP queries require to load all data to perform operation.
•
Performance is gained normally for analytical data
•
Performance is gained by de-normalizing and redundancy of data for
analytical purposes.
Use Cases of HANA Sales Reporting (CRM) •
Quickly identify top customers and products by channel – with real –time sales reporting. Improve order fulfillment rates and accelerate.
•
Key sales processes at the same time, with instant analysis of credit memo and billing list.
Financial Reporting (FICO) •
Obtain immediate insights across your business into review, accounts payable and receivable, open and overdue items.
•
Top general ledger transaction and days sales outstanding. Make the right financial decision, armed with real time information.
Shipping Reporting (LE – SHP) •
•
Rely on real-time shipping reporting for complete stock overview analysis. One can better plan/monitor outbound delivery. Assess and optimize stock levels – with accurate information at one’s fingertip
Purchase Reporting (P2P/SRM) •
Gain timely insights into purchase orders, vendors, and the movement of goods- with real time purchase reporting.
•
Make better purchasing decisions based on a complete analysis of order history.
Master Data Reporting (DG / MDM) •
Obtain real time reporting on main master data, including customer, vendor, and material lists for improved productivity and accuracy.
Different storage options Column Store
Row Store
• All columnar data is stored in contiguous location.
• Data from same row is stored in contiguous location.
• Columnar store is read optimized.
• Row store is write optimized.
• Only required data could be loaded. This
• All record needs to be loaded while primary key and indexes performs a vital role.
is called data stripping. • Optimization of data could be made based on data type of a particular column
• Optimization based on data type is not possible.
Multiple Engines • HANA has multiple engines inside its computing engine for better performance. • HANA Supports both SQL & OLAP reporting tools, there are separate engines to
perform operation respectively. • Each request is broken into multiple pieces and the same is sent to specific engine for processing. The HANA SQL Engine acts as a controller to parse and send the same to multiple engines for request processing.
Demo
Disadvantages of using SAP HANA • Its too expensive. • You cannot hold a lot of data in it. It would not be practical. It is recommended when data volume is less than 16 TB.
• SAP HANA have very strict hardware design guidelines, so you cannot your own system architecture to install SAP HANA. • There is no way to migrate the data back to standard RDBMS from SAP HANA.
• There is no PITR (Point in time recovery) option available.
Thank you For more such webinars ,visit : WWW.appseconnect.com/webinars
/appseconnect
/company/insync
/InSyncSolutions