The latest venture by SAP is the high-performance analytic appliance, or HANA, and is the latest buzz in town. The demand for this is increasing in the market today and job opportunities for aspirants looks promising. Before looking into any SAP HANA tutorial, it would be helpful if one gets a brief understanding of what exactly it is in the first place.
Being an atomicity consistency isolation durability (ACID) data base that is parallel and also full in-memory, it has taken advantage of some large parallel processing and massive primary memories that reside in some multi-core CPUs. This database can handle all sorts of workloads no matter how diverse, like the on-line analytical processing (OLAP) and on-line transaction processing (OLTP) or even some structured and unstructured along with some complex and simple data, in one single instance.
SAP built another database. Why?
Dwelling into the historical developments, HANA is just a realisation of the German businessman, Hasso Plattner’s thought of a single in-memory columnar database that can be used for OLTP AND OLAP projects. Hasso theorised that if it were to be built, a zero-response time database could revolutionise the way the IT field runs by simplifying and eventually speeding it up, albeit with some fundamentally different ways of realising some business applications.
OK, so what exactly makes SAP HANA so different?
- HANA explores and takes full advantage of the modern hardware used in computer systems. Namely the fact that large primary memories are used, along with massive parallel processing capabilities on multi-core CPUs which can lead to huge developments. These properties severely cut down access speeds and also almost completely remove any response times in these systems.
- Using some clever encoding schemes, all the data in the memory are stored in columns. Logically speaking, at least. In the actual hardware implementation, it can be stored both row and column-wise. This columnar structure proves to speed up any transactions like aggregations. This arguably simple change reduces the database footprint by a massive, 95%.
- Since every operation in HANA is performed on demand inside memory, any OLTP or analytics application would be easily run in just a single instance.
- The bonus features of row-level insert, delta storage, and update performance just seems like icing on the cake.
- Data virtualisation, text analysis, search, etc. are also some more functionality added along too.
So, what services can HANA provide?
These can be, but are not limited to:
- Processing Services: Can be either spatial, graph or text
- Database Services: As mentioned earlier, the OLTP and OLAP
- Application Services: Both 2 and 3-tier
- Integration Services: Data consumption options having some built in ETL as well
Great! So where can this be used?
Some places where this has found some use are:
- In performing optimisation in business operations
- Dashboards, analytics and operational reports
- Operational intelligence in real-time
- Data marts and data warehousing
- Almost any big data application
- Automation, simulation and some automation.
So, to summarise, SAP HANA is not only a database, it is also a platform that is deployable in premises and on the cloud.