SAP HANA is an in-memory, column-oriented, relational database management system developed and marketed by SAP SE. Its primary function as a database server is to store and retrieve data as requested by the applications. In addition, it performs advanced analytics (predictive analytics, spatial data processing, text analytics, text search, streaming analytics, graph data processing) and includes ETL capabilities as well as an application server.
Video SAP HANA
History
During the early development of SAP HANA, a number of technologies were developed or acquired by SAP SE. These included TREX search engine (in-memory column-oriented search engine), P*TIME (in-memory OLTP Platform acquired by SAP in 2005), and MaxDB with its in-memory liveCache engine. The first major demonstration of the platform was in 2008: teams from SAP SE, the Hasso Plattner Institute and Stanford University demonstrated an application architecture for real-time analytics and aggregation. 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".
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 was announced in September 2011 for availability by November.
In 2012, SAP promoted aspects of cloud computing. 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.
Maps SAP HANA
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 and OLTP operations into a single system; thus in general SAP HANA is an OLTAP system. Storing data in main memory 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 have 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 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.
Although row-oriented systems have traditionally been favored for OLTP, in-memory storage opens techniques to develop hybrid systems suitable for both OLAP 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 (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.
Streaming and Data Virtualization
Data Virtualization is available via a tool named Smart Data Access. Streaming data, for example from Internet of things devices, is available via a tool named Smart Data Streaming. Dedicated streaming analytics, (predictive analytics) can be employed against data ingested by Smart Data Streaming.
Big Data
In a scale-out environment, HANA can support volumes of up to a petabyte of data in-memory while returning query results in under a second. In order to balance the tradeoff of the cost of large in-memory systems (notably, the cost of RAM versus solid state or disk-based hard drives) with performance, HANA has capabilities to manage data tiering, i.e. offloading less frequently-accessed data to disk-based storage. HANA's Data Lifecycle Management is a data administration feature that allows database administrators to define rules for when records in a table should be offloaded from memory to either a disk-based column store on the same HANA server, i.e. "warm data" storage, or to offload data from memory or disk to a separate Hadoop server, i.e. "cold" data storage.
SAP offers a separate but related product referred to as Vora for tight integration of big data stored in Hadoop with enterprise data in HANA. Vora leverages some of the same concepts from HANA, namely, in-memory storage, query pushdown, and massive parallelization.
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, rolling forecast and moving average. The Predictive Analytics Library includes native algorithms for calculating common statistical measures in areas such as clustering, classification and time series analysis.
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 supports the Cypher Query Language as well as 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. Use cases for the Graph Engine include things like supply chain traceability, fraud detection, and logistics and route planning.
HANA also includes a spatial database engine which supports spatial data types and SQL extensions for CRUD operations on spatial data. HANA is certified by the Open Geospatial Consortium. and 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 an 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 supports 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 natively supported within XSA, as well as deploying applications as microservices. XSA also supports server-side 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-premise or in the cloud from a number of cloud service providers.
HANA can be deployed on-premise 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 including Red Hat Enterprise Linux and SUSE Linux Enterprise Server. 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
- Microsoft Azure
- Google Cloud Platform
- IBM Softlayer
- Huawei FusionSphere
- HP Helion
SAP also offer their own cloud services in the form of:
- SAP HANA Enterprise Cloud, a private managed cloud
- SAP Cloud Platform (previously known as 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. This edition is primarily aimed at students, and is free to use for in-memory databases of up to 32GB.
See also
- Comparison of relational database management systems
- Comparison of object-relational database management systems
- Database management system
- 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 edition
- When to Use an In-Memory Database
Source of article : Wikipedia