SAP HANA (HochleistungsANalyseAnwendung or High-performance ANalytic Application) is an
in-memory,
column-oriented,
relational database management system
A relational database (RDB) is a database based on the relational model of data, as proposed by E. F. Codd in 1970.
A Relational Database Management System (RDBMS) is a type of database management system that stores data in a structured for ...
developed and marketed by
SAP SE. Its primary function as the software running a
database server is to store and retrieve data as requested by the applications. In addition, it performs advanced analytics (
predictive analytics
Predictive analytics encompasses a variety of Statistics, statistical techniques from data mining, Predictive modelling, predictive modeling, and machine learning that analyze current and historical facts to make predictions about future or other ...
,
spatial data processing, text analytics, text search,
streaming analytics,
graph data processing) and includes
extract, transform, load (ETL) capabilities as well as an
application server.
History
SAP SE did not commercialize its own proprietary database technology. Many customers ran SAP applications on non-SAP databases from vendors such as
Oracle Corporation
Oracle Corporation is an American Multinational corporation, multinational computer technology company headquartered in Austin, Texas. Co-founded in 1977 in Santa Clara, California, by Larry Ellison, who remains executive chairman, Oracle was ...
and
Software AG.
During the early development of SAP HANA, a number of technologies were developed or acquired by SAP, including
TREX search engine (
in-memory column-oriented search engine), P*TIME (in-memory
online transaction processing (OLTP) Platform acquired by SAP in 2005), and
MaxDB with its in-memory liveCache engine.
The first major demonstration of the platform was in 2011: teams from
SAP SE, the
Hasso Plattner Institute and
Stanford University
Leland Stanford Junior University, commonly referred to as Stanford University, is a Private university, private research university in Stanford, California, United States. It was founded in 1885 by railroad magnate Leland Stanford (the eighth ...
demonstrated an application architecture for real-time analytics and aggregation using the name HYRISE. Former SAP SE executive,
Vishal Sikka, mentioned this architecture as "Hasso's New Architecture".
Before the name "HANA" stabilized, people referred to this product as "New Database". The software was previously called "SAP High-Performance Analytic Appliance".
A first research paper on HYRISE was published in November 2010. The research engine is later released open source in 2013, and was reengineered in 2016 to become HYRISE2 in 2017.
The first product shipped in late November 2010.
By mid-2011, the technology had attracted interest but more experienced business customers considered it to be "in early days".
HANA support for
SAP NetWeaver Business Warehouse (BW) was announced in September 2011 for availability by November.
In 2012, SAP promoted aspects of
cloud computing
Cloud computing is "a paradigm for enabling network access to a scalable and elastic pool of shareable physical or virtual resources with self-service provisioning and administration on-demand," according to International Organization for ...
. In October 2012, SAP announced a
platform as a service offering called the
SAP HANA Cloud Platform and a variant called SAP HANA One that used a smaller amount of memory.
In May 2013, a
managed private cloud offering called the HANA Enterprise Cloud service was announced.
In May 2013, Business Suite on HANA became available, enabling customers to run
SAP Enterprise Resource Planning functions on the HANA platform.
S/4HANA, released in 2015, written specifically for the HANA platform, combines functionality for
ERP,
CRM,
SRM and others into a single HANA system.
S/4HANA is intended to be a simplified business suite, replacing earlier generation
ERP systems.
While it is likely that SAP will focus its innovations on S/4HANA, some customers using non-HANA systems have raised concerns of being locked into SAP products. Since S/4HANA requires an SAP HANA system to run, customers running SAP business suite applications on hardware not certified by SAP would need to migrate to a SAP-certified HANA database should they choose the features offered by S/4HANA.
Rather than
versioning, the software utilizes
service packs, referred to as Support Package Stacks (SPS), for updates. Support Package Stacks are released every 6 months.
In November 2016 SAP announced SAP HANA 2, which offers enhancements to multiple areas such as database management and application management and includes two new cloud services: Text Analysis and Earth Observation Analysis.
HANA customers can upgrade to HANA 2 from SPS10 and above. Customers running SPS9 and below must first upgrade to SPS12 before upgrading to HANA 2 SPS01.
Architecture
Overview
The key distinctions between HANA and previous generation SAP systems are that it is a
column-oriented,
in-memory database, that combines
OLAP
In computing, online analytical processing (OLAP) (), is an approach to quickly answer multi-dimensional analytical (MDA) queries. The term ''OLAP'' was created as a slight modification of the traditional database term online transaction processi ...
and
OLTP operations into a single system; thus in general SAP HANA is an "online transaction and analytical processing" (OLTAP) system,
also known as a
hybrid transactional/analytical processing (HTAP). Storing data in
main memory
Computer data storage or digital data storage is a technology consisting of computer components and recording media that are used to retain digital data. It is a core function and fundamental component of computers.
The central processin ...
rather than on
disk provides faster data access and, by extension, faster querying and processing.
While storing data in-memory confers performance advantages, it is a more costly form of data storage. Observing data access patterns, up to 85% of data in an enterprise system may be infrequently accessed
therefore it can be cost-effective to store frequently accessed, or "hot", data in-memory while the less frequently accessed "warm" data is stored on disk, an approach SAP began to support in 2016 and termed "Dynamic tiering".
Column-oriented systems store all data for a single column in the same location, rather than storing all data for a single row in the same location (row-oriented systems). This can enable performance improvements for
OLAP
In computing, online analytical processing (OLAP) (), is an approach to quickly answer multi-dimensional analytical (MDA) queries. The term ''OLAP'' was created as a slight modification of the traditional database term online transaction processi ...
queries on large datasets and allows greater
vertical compression of similar types of data in a single column. If the read times for column-stored data is fast enough, consolidated views of the data can be performed
on the fly, removing the need for maintaining
aggregate views and its associated
data redundancy
In computer main memory, auxiliary storage and computer buses, data redundancy is the existence of data that is additional to the actual data and permits correction of errors in stored or transmitted data. The additional data can simply be a com ...
.
Although row-oriented systems have traditionally been favored for
OLTP, in-memory storage opens techniques to develop hybrid systems suitable for both
OLAP
In computing, online analytical processing (OLAP) (), is an approach to quickly answer multi-dimensional analytical (MDA) queries. The term ''OLAP'' was created as a slight modification of the traditional database term online transaction processi ...
and
OLTP capabilities,
removing the need to maintain separate systems for OLTP and OLAP operations.

The index server performs session management, authorization, transaction management and command processing. The database has both a row store and a columnar store. Users can create tables using either store, but the columnar store has more capabilities and is most frequently used. The index server also manages persistence between cached memory images of database objects, log files and permanent storage files. The XS engine allows web applications to be built.
SAP HANA Information Modeling (also known as SAP HANA Data Modeling) is a part of HANA application development. Modeling is the methodology to expose operational data to the end user. Reusable virtual objects (named calculation views) are used in the modelling process.
MVCC
SAP HANA manages
concurrency through the use of
multiversion concurrency control
Multiversion concurrency control (MCC or MVCC), is a non-locking concurrency control method commonly used by database management systems to provide concurrent access to the database and in programming languages to implement transactional memory.
...
(MVCC), which gives every transaction a snapshot of the database at a point in time. When an MVCC database needs to update an item of data, it will not overwrite the old data with new data, but will instead mark the old data as obsolete and add the newer version.
Big data
In a
scale-out environment, HANA can keep volumes of up to a petabyte of data in memory while returning query results in under a second. However, RAM is still much more expensive than disk space, so the scale-out approach is only feasible for certain time critical use cases.
Analytics
SAP HANA includes a number of analytic engines for various kinds of data processing. The Business Function Library includes a number of algorithms made available to address common business data processing algorithms such as asset
depreciation
In accountancy, depreciation refers to two aspects of the same concept: first, an actual reduction in the fair value of an asset, such as the decrease in value of factory equipment each year as it is used and wears, and second, the allocation i ...
,
rolling forecast and
moving average
In statistics, a moving average (rolling average or running average or moving mean or rolling mean) is a calculation to analyze data points by creating a series of averages of different selections of the full data set. Variations include: #Simpl ...
.
The Predictive Analytics Library includes native algorithms for calculating common statistical measures in areas such as
clustering,
classification
Classification is the activity of assigning objects to some pre-existing classes or categories. This is distinct from the task of establishing the classes themselves (for example through cluster analysis). Examples include diagnostic tests, identif ...
and
time series analysis
In mathematics, a time series is a series of data points indexed (or listed or graphed) in time order. Most commonly, a time series is a sequence taken at successive equally spaced points in time. Thus it is a sequence of discrete-time data. ...
.
HANA incorporates the open source statistical programming language
R as a supported language within
stored procedures.
The column-store database offers
graph database capabilities. The graph engine processes the
Cypher Query Language
Cypher is a declarative graph query language that allows for expressive and efficient data querying in a property graph.
Cypher was largely an invention of Andrés Taylor while working for Neo4j, Inc. (formerly Neo Technology) in 2011. Cypher wa ...
and also has a visual graph manipulation via a tool called Graph Viewer. Graph data structures are stored directly in relational tables in HANA's column store.
Pre-built algorithms in the graph engine include pattern matching, neighborhood search, single shortest path, and strongly connected components. Typical usage situations for the Graph Engine include examples like supply chain traceability, fraud detection, and logistics and route planning.
HANA also includes a
spatial database engine which implements spatial data types and SQL extensions for
CRUD operations on spatial data. HANA is certified by the
Open Geospatial Consortium
The Open Geospatial Consortium (OGC) is an international voluntary consensus standards organization that develops and maintains international standards for geospatial content and location-based services, sensor web, Internet of Things, Geographi ...
,
and it integrates with
ESRI's ArcGIS geographic information system.
In addition to numerical and statistical algorithms, HANA can perform text analytics and enterprise text search. HANA's search capability is based on “fuzzy” fault-tolerant search, much like modern web-based search engines. Results include a statistical measure for how relevant search results are, and search criteria can include a threshold of accuracy for results.
Analyses available include identifying entities such as people, dates, places, organizations, requests, problems, and more. Such entity extraction can be catered to specific use cases such as
Voice of the Customer (customer's preferences and expectations), Enterprise (i.e. mergers and acquisitions, products, organizations), and Public Sector (public persons, events, organizations).
Custom extraction and dictionaries can also be implemented.
Application development
Besides the database and data analytics capabilities, SAP HANA is a
web-based application server, hosting user-facing applications tightly integrated with the database and analytics engines of HANA. The "XS Advanced Engine" (XSA) natively works with
Node.js and
JavaEE languages and runtimes. XSA is based on
Cloud Foundry architecture and thus supports the notion of “Bring Your Own Language”, allowing developers to develop and deploy applications written in languages and in runtimes other than those XSA implements natively, as well as deploying applications as
microservices
In software engineering, a microservice architecture is an architectural pattern that organizes an application into a collection of loosely coupled, fine-grained services that communicate through lightweight protocols. This pattern is characterize ...
. XSA also allows
server-side JavaScript
JavaScript (), often abbreviated as JS, is a programming language and core technology of the World Wide Web, alongside HTML and CSS. Ninety-nine percent of websites use JavaScript on the client side for webpage behavior.
Web browsers have ...
with SAP HANA XS Javascript (XSJS).
Supporting the application server is a suite of application lifecycle management tools allowing development deployment and monitoring of user-facing applications.
Deployment
HANA can be deployed
on-premises or in the
cloud
In meteorology, a cloud is an aerosol consisting of a visible mass of miniature liquid droplets, frozen crystals, or other particles, suspended in the atmosphere of a planetary body or similar space. Water or various other chemicals may ...
from a number of
cloud service providers.
HANA can be deployed on-premises as a new appliance from a certified hardware vendor.
Alternatively, existing hardware components such as storage and network can be used as part of the implementation, an approach which SAP calls "Tailored Data Center Integration (TDI)".
HANA is certified to run on multiple
operating systems
An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ...
including
SUSE Linux Enterprise Server
and
Red Hat Enterprise Linux
Red Hat Enterprise Linux (RHEL) is a commercial Linux distribution developed by Red Hat. Red Hat Enterprise Linux is released in server versions for x86-64, Power ISA, ARM64, and IBM Z and a desktop version for x86-64. Fedora Linux and ...
.
Supported hardware platforms for on-premise deployment include
Intel 64 and
POWER Systems.
The system is designed to support both
horizontal and vertical scaling.
Multiple cloud providers offer SAP HANA on an
Infrastructure as a Service basis, including:
*
Amazon Web Services
Amazon Web Services, Inc. (AWS) is a subsidiary of Amazon.com, Amazon that provides Software as a service, on-demand cloud computing computing platform, platforms and Application programming interface, APIs to individuals, companies, and gover ...
*
Microsoft Azure
*
Google Cloud Platform
Google Cloud Platform (GCP) is a suite of cloud computing services offered by Google that provides a series of modular cloud services including computing, Computer data storage, data storage, Data analysis, data analytics, and machine learnin ...
*
IBM Softlayer
*
Huawei FusionSphere
SAP also offer their own cloud services in the form of:
* SAP HANA Enterprise Cloud, a
private managed cloud
*
SAP Business Technology Platform (previously known as SAP Cloud Platform and HANA Cloud Platform),
Platform as a service
Editions
SAP HANA licensing is primarily divided into two categories.
Runtime License:
Used to run SAP applications such as SAP Business Warehouse powered by SAP HANA and
SAP S/4HANA.
Full Use License:
Used to run both SAP and non-SAP applications. This licensing can be used to create custom applications.
As part of the full use license, features are grouped as editions targeting various use cases.
* Base Edition: Provides core database features and development tools but does not support SAP applications.
* Platform Edition: Base edition plus spatial, predictive, R server integration, search, text, analytics, graph engines and additional packaged business libraries.
* Enterprise Edition: Platform edition plus additional bundled components for some of the data loading capabilities and the rule framework.
In addition, capabilities such as streaming and ETL are licensed as additional options.
As of March 9, 2017, SAP HANA is available in an Express edition; a streamlined version which can run on laptops and other resource-limited environments. The license for SAP HANA, express edition is free of charge, even for productive use up to 32 GB of RAM. Additional capacity increases can be purchased up to 128 GB of RAM.
See also
*
Comparison of relational database management systems
*
Comparison of object-relational database management systems
*
Database management system
In computing, a database is an organized collection of data or a type of data store based on the use of a database management system (DBMS), the software that interacts with end users, applications, and the database itself to capture and an ...
*
List of relational database management systems
*
List of column-oriented DBMSes
*
List of in-memory databases
*
List of databases using MVCC
References
External links
* {{Official website
SAP HANA, Developer editionWhen to Use an In-Memory DatabaseSAP HANA on IBM Power SystemsSAP HANA : In-Memory made in SAPSAP S/4HANA Journey with Automation
SAP SE
2010 software
Proprietary database management systems
Big data products
Column-oriented DBMS software for Linux
Proprietary commercial software for Linux