SAP HANA is an innovative in-memory data platform that is deployable on-premise as an appliance, in the cloud, or as a hybrid of the two. SAP HANA is the ideal platform for performing advanced, real-time analytics while simultaneously handling real-time transaction workloads. SAP HANA is unique in its ability to converge database and application logic within the in-memory engine to transform transactions, analytics, text analysis, predictive and spatial processing.
We invite you to explore SAP HANA features and understand how & why SAP HANA is so different.
SAP HANA stores a table in the column store as a sequence of columns in contiguous memory locations. This storage organization maximizes the spatial locality of table columns. In case of aggregating functions it allows extremely high CPU execution speeds to full scan a table column, since data is being accessed consecutively by the CPU without internal waits for memory address operations. Additionally, columnar table storage allows high data compression rates, since ordered table columns containing the same value in many rows can be ideally compressed, if they are stored in contiguous memory locations.
The column store allows for the efficient compression of data. This makes it less costly for the SAP HANA database to keep data in main memory. It also speeds up searches and calculations. Data in column tables can have a two-fold compression:
When using Information Views, SAP HANA does not decompress data to partition prune or process predicates, but rather it will decompress and aggregate in the CPU cache only when required. For instance this is not required for COUNTS, or for data pruning.
The opportunity to run SAP HANA in a customer’s tailored server and storage combinations to reduce hardware and operational costs at installed base customers, mitigate risk and optimize time-to-value, and gain additional flexibility in hardware vendor selection.
SAP HANA virtualization with VMware Vsphere 5.1 is an important means to enable automation of operations in data centers and reduce cost. Non-productive use in a limited setup has been released and is being offered as a pre-installed appliance by several hardware partners. In the course of the SAP HANA Tailored Data Center Initiative also virtualized installations can be managed by customers. For the future, bigger installations and productive use are being evaluated.
SAP HANA was designed to perform calculations in parallel (shared-nothing MPP). Often it uses hundreds of cores at the same time, fully utilizing the available computing resources of distributed systems. 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 addition, operations on one column can be parallelized by partitioning the column into multiple sections that can be processed by different processor cores. Super-computer SIMD (single instruction - multiple data) instructions are also used to further optimize performance.
The SQLscript processor analyzes statements within the procedure and automatically executes statements, which have no dependencies, in parallel without impacting the programming model.
SAP HANA provides a sophisticated columnar storage design that allows a mixed OLAP-OLTP workload on single copy of data. SAP HANA provides specialized read optimized and write optimized data stores in-memory for each columnar table. It allows concurrent user requests (read+write) on the single copy of data. At the same time SAP HANA ensures always a consistent view on the data for each user and transaction. This advanced architecture saves redundant systems and copies of data for specialized OLAP and OLTP systems in customer’s landscape.
SAP HANA is designed for a highly optimized query execution. The SAP HANA query optimizer contains algorithms to build a cost-based, optimized execution plan to ensure the best access path to data. Further, only those that are accessed which are really required (filter pushdown, query pruning). Finally, the query is optimized to be executed in parallel, i.e. non-depended execution parts of a query (e.g. data selects for join-queries) are executed in parallel by multiple cpu-cores.
Today’s businesses already use HA & DR with their classical database setups and expect HANA to offer similar options. A lot of these options are already available or on their way to be available in first versions. These options are extended step by step with more features and functions with every SP. Major features are SAP HANA System Replication as a hardware independent option to allow also nice feature like Near Zero Downtime Maintenance, asynchrony data transfer of hardware changes on the fly.
The SAP HANA database holds the bulk of its data in memory for maximum performance, but it still uses persistent storage to provide a fallback in case of failure. After a power failure, the database can be restarted like any disk-based database and returns to its last consistent state. To protect against data loss resulting from hardware failure, backups are required. Both native backup/recovery functions and an interface for connecting 3rd party backup tools are available for SAP HANA. Backups save the payload (that is, the actual data) as well as the redo log. They are performed while the database is running: users can continue to work normally, and impact on system performance is negligible. For recovery, SAP HANA offers many different options, including point-in-time recovery.
In the context of SAP HANA scalability has two dimensions – scale-up (increase hardware size on one database server) and scale-out (increase number of database servers in one database system). SAP HANA supports both scalability options, whereas the scale-up approach is limited due to available hardware. For the scale-out approach, SAP HANA provides a mechanism to distribute data and orchestrate the query execution over the main memories of multiple database servers in the same (distributed) database system. SAP HANA follows the shared-nothing principle to provide high scalability and ensures that each database server can work independently on its own set of data by minimizing cross-server data transfer at the same time.
To monitor the system health is one of the key tasks for an administrator in a company. The SAP HANA studio is both the central development environment and the main administration tool for the SAP HANA database. It includes several tools for monitoring your systems:
The System Monitor provides you with an overview of all your SAP HANA systems at a glance, including system availability and current resource usage information. From the System Monitor you can drill down into each individual system in the Administration editor.
The Monitoring Dashboard is a Web-browser based view that visualizes key aspects of system health and configuration on a single screen with the option to drill down to more detailed views.
The Administration editor provides detailed information about resource usage, current alerts, system performance, system configuration, as well as tools for analyzing and troubleshooting issues in your system.
To analyze problems, the SAP HANA studio provides diagnosis files that include log and trace files, as well as a mixture of other diagnosis, error, and information files. In the event of problems with the SAP HANA database, you can check these diagnosis files for errors. You can also filter, merge, delete, and download diagnosis files. The database trace also records information about activity in the components of the SAP HANA database. You can use this information to analyze performance and to diagnose and debug errors.
Protecting a company’s or organization’s critical data from unauthorized access and ensuring compliance with the growing number of rules and regulations is becoming increasingly important for SAP customers. SAP HANA offers capabilities and benefits for customers in many important applications and scenarios and will therefore play an increasingly important part in many customers critical IT and application infrastructures.
SAP HANA sizing consists of:
If you plan to migrate an existing SAP system running on any database to SAP HANA, get an overview of available migration path options, a general recommendation, and further aspects and guidance how to identify the best procedure for your requirements on the Migration of SAP Systems to SAP HANA page in SAP Community Network.
For most of the other software logistics aspects (such as implementation, copy, maintenance, upgrade), SAP systems running on the SAP HANA platform are treated like normal SAP systems. Therefore, see the following general information sources on the Software Logistics space in SAP Community Network:
The platform lifecycle management aspects enable you to install, customize, and update SAP HANA.
Installation and update of SAP HANA
SAP HANA is available either as an appliance (where you get pre-configured hardware with pre-installed software from your SAP HANA certified hardware partner) or via SAP HANA tailored data center integration delivery model (where you gain more flexibility concerning reuse of your hardware and are responsible for the installation and validation of SAP HANA in your landscape).
For the installation and update the SAP HANA lifecycle management command line tool hdblcm and a graphical user interface tool hdblcmgui is available as of SAP HANA SPS 07. With the SAP HANA tailored data center integration program, it is now possible to perform the installation by yourself. As prerequisite for installing SAP HANA systems on your own, you have to pass an SAP HANA Installation Certification Exam – for more information, check out the SAP HANA Education: Course & Certification Program.
Customization of SAP HANA
No matter how you provision SAP HANA, you’ll have the ability to customize platform lifecycle management aspects of your SAP HANA system by using the SAP HANA lifecycle management tools:
Building and providing an application based on SAP HANA requires Lifecycle Management features, like applications based on other technologies: You have to define the structure and metadata of your application, while considering various aspects such as dependencies. You need support to be able to track changes and to bundle your development artefacts, especially when working in bigger or distributed development teams. Additionally, you need options to move or transport your code and objects through your system landscape: from development to test and ultimately, on to production. Furthermore, when you plan to deliver an application you develop, you require the ability to package or assemble the components of a product in a manner which provides a consistent container for the delivery. This is where automated functionality supporting the final assemble process is beneficial. When you build and deliver an SAP HANA application, it often requires not only the pure installation itself, but sometimes you need to configure several parts in order to get it up and running. In which case, it makes sense to include configuration elements in your shipment.
SAP HANA Application Lifecycle Management is an XS application which is part of your SAP HANA platform installation (starting with SPS 06), which aims to support the various facets of the lifecycle of an application as described above. To get all the details about SAP HANA Application Lifecycle Management please refer to the presentation SAP HANA Application Lifecycle Management (HALM).The presentation SAP HANA SPS 08 - What’s New? SAP HANA Application Lifecycle Management provides information about what is new in HALM in SAP HANA SPS 08.
SAP HANA Developer Guide provides information on modeling applications (chapter 3) and implementing Lifecycle Management (chapter 12).
For an introduction to Change Management and Transports, please refer to
SAP HANA Application Lifecycle Management.
Detailed guides for integrating SAP HANA with CTS+ are available on SCN:
SAP HANA in the Cloud is one of the most exciting and evolving areas in HANA. A complete portfolio of product offerings for different audiences, purposes and markets is being offered.
SAP HANA One as a public cloud offering targets the small and medium businesses or projects, for a big portion the non-ERP market. The public cloud SAP HANA Developer Edition targets developer audiences offering dev environments, free trial versions and tutorials.
The SAP HANA Cloud Platform is geared at big customer development projects on a JAVA platform that need enterprise-grade services (portal, mobile, analytics, security, integration...). The heart of it is the HANA data platform to enable fast processing of big data.
Finally, SAP HANA Enterprise Cloud is the enterprise-class cloud offering for running mission critical SAP ERP on HANA with global 24 x 7 operation and cloud elasticity.
On-Premise: SAP HANA can be deployed as an on-premise appliance.
SAP HANA Hybrid Cloud usage scenarios are the most widely spread usage of SAP HANA in the cloud. Everybody tailors the setup of SAP HANA to his/her own landscape needs. In addition, there is a multitude of SAP and non-SAP products which make sense in a combined cloud-on-premise setup.
Data Provisioning can be divided into different types for provisioning data into SAP HANA:
The smart data access feature enables organizations to create virtual tables in SAP HANA that point to virtual tables on remote sources, such as SAP Sybase ASE, SAP Sybase IQ, Hadoop, and Teradata. One virtual tables are defined using the SAP HANA studio, queries can be executed against them. Query execution is pushed down to the remote server. Only a minimal amount of data is retrieved from the remote server to complete the query on SAP HANA. As a result, organizations can perform queries across a variety of data sources without the cost and effort of moving the data.
SAP HANA unleashes the potential of Big Data with its ability to handle large volumes of data from a variety of data sources including Apache Hadoop. Organizations can discover new signals by combining relevant information from Hadoop with structured data stored in SAP HANA to gain unprecedented insight. Organizations can access data from Hadoop in several ways including:
SAP HANA Direct Extractor Connection (DXC) is available as a simple option in batch mode for data replication from existing SAP Data Source extractors (SAP Business Suite) to Target (SAP HANA) for stand alone data mart scenarios.
SAP HANA supports adding new columns to existing database tables which dramatically simplifies a wide range of customization projects that customers of enterprise software are often required to do. When physically storing consecutive tuples in row-store pages, all pages belonging to a database table must be re-organized when adding a new column to the table. In a column store database, such as SAP HANA, all columns are stored in physical separation from one another. This allows for a simple implementation of column extensibility, which does not need to update any other existing columns of the table. This reduces a schema change to a pure metadata operation, allowing for flexible and real-time schema extensions.
As an In-Memory database HANA also needs a performing disk storage layer named persistence where data and log can be stored without slowing down the in-memory processes above. With the persistent store of data and log information HANA can overcome a system restart or failure without data loss. During restart with both information pools in place HANA can ensure that every committed information within transactions is restorable and not lost. The general construction method is comparable with the shadow memory concept. On the other hand, a performing persistence plays also an important part in backup and recovery scenarios and fulfills prerequisite to be able to offer short backup and recovery times.
Partitioning supports the creation of very large tables (billions of rows) by breaking them into smaller chunks that can be placed on different machines. Partitioning is transparent for most SQL queries and other data manipulations. The partitioning feature of the SAP HANA database makes it possible to split column-store tables horizontally into disjunctive sub-tables or partitions. Various partitioning methods are available.
SAP HANA is a full transactional, ACID compliant and relational database. SAP HANA ensures that each transaction is all or nothing in every situation of the system (atomicity), it ensures that the database is always in a consistent state, including constraints, triggers, cascades etc. (consistency), it ensures an isolation of concurrent transactions (isolation) and the durability of data once a transaction has been committed (durability).
By keeping all relevant data in main memory (RAM), data processing operations are significantly accelerated. Column tables are loaded into memory column-by-column by the SAP HANA database only upon use. This is sometimes called “lazy loading”. Hence, columns that are never used will not be loaded, which avoids memory waste. SAP HANA carefully manages and tracks its own consumption of memory. For this purpose, the SAP HANA database pre-allocates and manages its own data memory pool. The memory pool is used for storing in-memory tables, for thread stacks, and for temporary computations, intermediate results and other data structures. At any given time, parts of the pool are in use for temporary computations. SAP refers to the total amount of memory in use as the SAP HANA Used Memory. This is the most precise indicator of the amount of memory that the SAP HANA database uses. Since the code and program stack size are less than 3 GB, almost all of the Used Memory is in fact used for storing tables and for computations. The SAP HANA database maintains many monitoring views and memory indicators, to provide a precise way to monitor and understand the SAP HANA memory utilization.
Modeling in SAP HANA implies building specialized views and calculations on top of In-Memory tables. These views are classified as Attribute Views (Master data), Analytical Views (Cube-like aggregations) and Calculation Views (custom calculation flows), and are consumed by reporting clients or applications. At run-time these views make implicit use of optimized SAP HANA In-Memory calculation engines and thus enable optimal performance.
SAP HANA Information Composer is a Web-based environment which allows business users to upload data to the SAP HANA database and to manipulate that data in order to extract new business insights.
Users can upload their own data, preview and cleanse this data, and create a physical table in the SAP HANA database. They can then combine this data with another uploaded table, or with content already existing in the HANA database, resulting in an information view, which can be consumed by SAP BusinessObjects tools. SAP HANA Information Composer differs from SAP HANA Modeler, in that the modeler is targeted at expert users with extensive knowledge of modeling and data analysis tools, whereas SAP HANA Information Composer is targeted at the business users with little or no technical knowledge.
SAP Sybase PowerDesigner brings Information and Enterprise Architecture modeling to SAP HANA Platform. It models everything from business requirements to process and data concepts aligned all the way down to technical specifications, to facilitate end-to-end planning, architecting, designing and implementing of SAP HANA based systems and applications. Fully integrated with SAP HANA Studio, seamless transition from design to implementation is achieved.
SAP HANA provides complete support for planning applications, many SAP Enterprise Performance Management applications run on SAP HANA. SAP HANA has native planning support inside the DB with the planning engine. The planning engine is used by planning applications to execute planning operations much more efficiently inside the database management system.
The Predictive Analysis Library (PAL) is a built-in and native SAP HANA library to perform in-database data mining and statistical calculations, designed to provide excellent performance on large data in real-time applications. Its functions can be consumed through SQLScript or utilized via modeling tools like the Application Function Modeler or SAP Predictive Analysis which is a popular and visually appealing tool for predictive experts.
Application Function Library (AFL) – what is it? Pre-delivered commonly utilized business, predictive and other types of algorithms for use in projects or solutions that run on SAP HANA. The technology framework enabling the use of these algorithms is called the Application Function Library. AFL functions run in the core of SAP HANA in-memory DB.
What are it’s benefits? These algorithms can be leveraged directly in development projects, speeding up projects by avoiding writing custom complex algorithms from scratch. AFL operations also offer very fast performance, as AFL functions run in the core of SAP HANA in-memory DB, where they have been specifically optimized for performance.
Planning operators like disaggregation, copy and others are part of the relational algebra inside SAP HANA. Additionally we support the SAP planning language FOX natively inside the DB.
SAP HANA released Geospatial with SPS 06 and with this you have the ability to store, process, and visualize Geo data like points, lines, and polygons.
Within SAP HANA, text analysis provides access to unstructured textual information for linguistically aware indexing and searching, semantic searching and transformation of unstructured into structured information for analytics and correlation with structured data sets. Via Natural Language Processing (NLP) it automatically extracts entities, including people, dates, places, organizations, etc. Text analysis also classifies relationships among entities such as in the case of sentiment analysis.
SAP HANA’s Text Search capabilities enables unstructured content for Fulltext Search and Fuzzy Search. The built-in search engine can process plain text and binary file like .pdf, .doc etc. HANA Studio graphical modeling tools are used to define search models which can be queried in a “Google-like” manner. HANA’s native search capabilities lets you exploit unstructured content in SAP HANA without additional cost. Structured and unstructured information can be combined, analyzed and accessed in one place – avoiding data duplication and movement.
Smart Data Access combines SAP HANA data with other heterogeneous data sources like Teradata, Hadoop/HIVE, SAP Sybase ASE and SAP Sybase IQ without having to copy data from remote sources into HANA.
R is an open source programming language and software environment for statistical computing and graphics. The R language has become very popular among statisticians and data miners for developing statistical software and is widely used for advanced data analysis.
The goal of the integration of the SAP HANA database with R is to enable the embedding of R code in the SAP HANA database context. That is, the SAP HANA database allows R code to be processed in-line as part of the overall query execution plan. This scenario is suitable when an SAP HANA-based modeling and consumption application wants to use the R environment for specific statistical functions.
An efficient data exchange mechanism supports the transfer of intermediate database tables directly into the vector-oriented data structures of R. This offers a performance advantage compared to standard SQL interfaces, which are tuple based and, therefore, require an additional data copy on the R side.
SQL (Structured Query Language) is a language designed especially for access to relational database systems and is the most significant database language in existence. SAP HANA SQL implementation is based on the ANSI SQL-92 and ANSI SQL-99 standard. Additionally, SAP HANA offers several SQL extensions on top of these standards, specifically for processing column-based in-memory tables. Most prominent examples are extended SQL views (Join views, OLAP views, Calculation views, and Hierarchy views), defining and querying temporal tables or full text search on tables.
The HANA Application Function Modeler (AFM) has just been released as a new editor within SAP HANA Studio SPS 06. It supports HANA-based application development scenarios by making it easier to consume e.g. Predictive Analysis Library (PAL) procedures with a graphical modeling tool, i.e. it replaces the effort of manual SQLScript coding. Furthermore the AFM provides design-time objects for PAL procedures as transportable objects.
SAP HANA supports the Multidimensional Expression Language (MDX) which is a powerful language to define data selections, calculations, and the layout of the resultset used in queries with OLAP databases. MDX in SAP HANA is able to consume HANA models like AnalyticalViews and CalculationViews which are exposed as Cubes in MDX. AttributeViews are visible as Dimensions. As a first class citizen of SAP HANA, MDX is tightly integrated into the HANA database and an ideal match for multi-dimensional reporting scenarios on HANA. Clients like MS Excel PivotTables are using MDX as a query language to leverage the power of SAP HANA.
SAP HANA provides client interfaces for connecting applications, so they can retrieve and update data. SAP HANA provides many methods for applications to access its data. For example, a spreadsheet application could use ODBO to consume analytic views and enable users to create pivot tables, or a Web application could use OData interfaces to access the data and display it. SAP HANA can expose data with the following interfaces:
There are various integration points for SAP HANA and SAP Analytics. The SAP BI4.x platform and other Analytics tools like SAP Lumira, Design Studio, and Predictive Analytics perfectly interact with SAP HANA, and deliver compelling visualization and dashboarding capabilities combines with Predictive and Spatial processing.
XS is a small-footprint application server, web server, and basis for an application development platform - that lives inside SAP HANA. The rationale for XS is mainly twofold: enable SAP HANA-based application development and deployment while minimizing architectural layers; and performance - tight integration with the SAP HANA DB ensures optimal performance. With XS, you have the ability to create applications that have an http-based end-user UI (e.g., browser, mobile apps), which run directly on SAP HANA, without additional external servers or system landscape components. This simplified system architecture means low TCO, as complexity of administering or dealing with other heterogeneous components is eliminated. Furthermore, advantages such as efficient inter-process communication inside one overall system, same data types, etc. provide performance advantages that no other application server can match when SAP HANA is the DB.
Various new capabilities of the SQLScript language have been introduced in SPS 06, including support for array operations, dynamic filtering, and scalar user-defined functions.
SAP HANA Interactive Education, or SHINE, is a demo application that makes it easy to learn how to build native SAP HANA applications. The demo application, delivered with SAP HANA in a special delivery unit (DU), comes complete with sample data and design-time developer objects for the application's database tables, data views, stored procedures, OData, and user interface. The delivery unit defines the following applications:
The HANA Healthcare platform will provide healthcare-specific content (e.g. data models, algorithms) to enable the integration of all relevant medical data that will help a doctor provide more personalized treatment. The three main types of data includes:
SAP will provide the framework to integrate these datasets, in order to enable real-time personalized medicine. This platform is still under development, and we are also building applications on top of this platform.
The two applications that are currently the furthest along are: Medical Explorer and Genome Analysis (names of these applications are not finalized). Medical Explorer is an application that enables real-time filtering and analyses on structured and unstructured clinical datasets. Genome Analysis is an application that enables real-time analyses of genome variant data, and also provides a framework to process raw DNA data through the genome pipeline before analyzing variant data.
In order to support rapid application development and reuse of code in SQLScript procedures, we have introduced the concept of procedure templates which allows the developer to create a template, and then create procedures based on those templates. The SQLScript debugger has been enhanced to allow developers to debug procedures with input parameters and also to debug from an external session, such as ABAP.
SAP HANA comes with a built-in repository that allows management and persistence of most kinds of development artifacts and other application-specific objects such as web content exposed via XS server. The repository provides the basis for concepts like namespaces (through packages), versioning, transport in system landscapes, and software component delivery from SAP to customers.
SAP River is a new development language and programming model for rapidly developing a complete SAP HANA backend application. SAP River is based on a new, highly expressive development language, that allows a developer to design and specify all the semantic elements of a business application, including its data model, business logic and access control, within a single, coherent and integrated program specification. Applications are then cross-compiled to run natively in SAP HANA, and exposed via Odata. The language syntax is familiar, declarative, object-oriented and modular. It is fully compatible with existing SAP HANA objects, like tables, views, and stored procedures.
SAP River is released part of HANA SPS 07 under an early adoption program.
For HANA users, SAP HANA Answers is the fastest path to HANA information and expertise in the cloud, directly accessible from HANA Studio, and optimized for your current context. HANA Answers provides a single point of entry into the world of HANA documentation and collaboration helping you to learn, implement and troubleshoot all things HANA.
SAP Experts are here to help.
Our website has a rich support section designed to help you get the highest quality answers quickly and easily. Please take a look at the options below to get you answers from the SAP experts.
If you have technical questions:
If you're looking for training materials or have training questions:
If you have certification questions: