Introduction
SAP HANA is an in memory, column oriented, relational
database management system developed and marketed by SAP.
SAP HANA is an in memory platform for processing high
volumes of operational and transactional data in real-time.
SAP HANA allows data analysis to query large volumes of data
in real-time.
SAP HANA is an in-memory database and application platform,
which is for many operations 10-1000x faster than a regular database like
Oracle on the same hardware. Customers
can finally begin to reduce IT complexity by removing the need for separate and
multiple Application Servers, Operational Data Stores, Datamarts and complex BI
Tool implementations.
History
Come from TREX search engine (in memory column oriented
search engine), then P*TIME (in memory OLTP database), and MaxDB (in-memory
liveCache engine). In 2008, SAP SE
working with Hasso Platter Institute and Stanford University demonstrated an
application architecture for real time analytics and aggregation, mentioned as “HAsso’s
New Architecture”.
In 2012, SAP promoted aspect of cloud computing. In October 2012,
SAP announced HANA One, that used a smaller amount of memory on Amazon Web
Services for an hourly fee.
In January 2013, SAP Enterprise Resource Planning software
from its Business Suite was announced for HANA, and become available by May.
In May 2013, a software as service offering called the HANA
Enterprise Cloud service.
SAP HANA stores all data in-memory, in columnar format and
compressed. Because SAP HANA is so fast, sums, indexes, materialized views and
aggregates are not required, and this can reduce the database footprint by 95%.
Everything is calculated on-demand, on the fly, in memory. This makes it
possible for companies to run OLTP and analytics applications on the same
instance at the same time, and to allow for any type of real-time, ad hoc
queries and analyses.
Application
Development
HANA also includes a programming component that allows a
company’s IT department to create and run customized application program on top
of HANA.
Application are developed using a plugin to the Eclipse IDE
called HANA Studio. Using this environment, the database can be managed and application
can be developed. Database objects (tables, views, stored procedure, etc) can
be created, deployed and debugged using HANA Studio. Extended Services
applications can be written, deployed and debugged using HANA Studio. Database
functions such as database creation, user account management, backups, and data
import/export can be performed from HANA studio.
The HANA server includes a version management system called
the repository. Applications developed in HANA Studio are deployed via the
repository within maintains a version history of each deployment artifact
(table, view, procedure, JavaScript file, etc).
Application may be moved from one server to another by
creating a Delivery Unit (DU). DU are essentially compressed archives of the
files that make up an application. They can be created, exported and imported
using HANA Studio.
While traditional client-server or multitier applications
are supported via JDBC, SAP is recommending that business logic contained in
the client or middle tier application be moved to the HANA Server as XS
applications. This tends to increase performance by reducing the amount of data
transmitted from the database server to the middle tier.
Physical Deployment
HANA is available as an appliance (hardware with software
preloaded) from a number of vendors such as Dell, HP, and IBM. HANA is also
available as a cloud appliance (called HANA One) from a number of cloud service
providers such as Amazon and Microsoft Azure. A free developer’s edition is available
from several cloud providers. HANA is not available as software alone.
A SAP account is required to deploy SAP HANA and machine. To
deploy a HANA instance, you must log into your SAP account and initiate the
development from there. When all requirements are met at the SAP site, virtual
machine(s) will be created by SAP on the selected cloud service provider. This
is in contrast to the more conventional approach where virtual machines are
created directly on the cloud service provider’s web site.
HANA can be deployed on a single machine or in
high-availability cluster. A single machine can run multiple instance of HANA.
SAP HANA using Operating System Linux (SUSE and Redhat).
What happen if the
power goes out?
SAP HANA is a completely ACID-compliant database which is
designed to have a low Recovery Point Objective (RPO). HANA writes savepoints
to disk at frequent intervals, which contain a snapshot of what is in memory.
In-between savepoints, HANA saves a log of each database change to a fast flash
disk.
If the power goes out, HANA loads the last savepoint and
then plays the log back, to ensure consistency.
What client software
does SAP HANA support?
SAP HANA has a wide range of interface, SAP BI Suite,
Lumira, Design Studio, and Analysis for Office software all have native HANA
connectors. Likewise, many third party applications like Tableau, Qlik and
Microstrategy all have HANA connectors.
SAP HANA has open standards support for ODBC, JDBC, ODBO, and
MDX as well as raw SQL client, hdbsql. In addition, there are Phyton libraries
for HANA.
Integration support is possible using the XS Engine for
OData and Server Side JavaScript.
In Addition, ETL software like Data Services and Informatica
is supported, as well as System Landscape Transformation (SLT) and Sybase Replication
Server (SRS) for real-time replication.