HA100SPS12

July 16, 2017 | Author: jaimin | Category: Cloud Computing, Sap Se, Computer Data Storage, Databases, Software As A Service
Share Embed Donate


Short Description

HANA SPS12 latest version...

Description

HA100 SAP HANA Introduction

. .

PARTICIPANT HANDBOOK INSTRUCTOR-LED TRAINING . Course Version: 12 Course Duration: 2 Day(s) e-book Duration: 13 Hours 25 Minutes Material Number: 50135962

Typographic Conventions American English is the standard used in this handbook. The following typographic conventions are also used.

This information is displayed in the instructor’s presentation

Demonstration

Procedure

Warning or Caution

Hint

Related or Additional Information

Facilitated Discussion

User interface control

Example text

Window title

Example text

© Copyright. All rights reserved.

iii

Contents vii

Course Overview

1

Unit 1:

2 27

Introduction to SAP HANA Lesson: Describing SAP HANA

Unit 2:

28

Architecture of SAP HANA Lesson: Outlining the Main Components of an SAP HANA Landscape

33

Lesson: Working with Interfaces for Administrators and Developers

47

Exercise 1: Getting Started with SAP HANA Studio

55

Lesson: Understanding the Key Architectural Features of the SAP HANA Database

61

Exercise 2: Working with the SAP HANA Database

65

Lesson: Describing the Main Characteristics of High Availability

68

Lesson: Describing the Main Security Features of SAP HANA

81

Unit 3:

Modeling and Data Processing with SAP HANA

82

Lesson: Creating Information Models

86

Lesson: Describing SAP HANA Live and Core Data Services

92

Lesson: Defining SAP HANA Spatial Processing

95

Lesson: Defining Text Search and Analysis

99

Lesson: Explaining Predictive Modeling

102

Lesson: Describing Graph Processing

109

Unit 4:

Data Provisioning in SAP HANA

110

Lesson: Describing SAP HANA Data Provisioning

113

Lesson: Describing Data Provisioning Tools

119

Exercise 3: Replicate Data Using SLT

131

Exercise 4: Import a flat file into SAP HANA

135

Lesson: Describing SAP HANA Vora

© Copyright. All rights reserved.

v

143

Unit 5:

144

Running Applications on SAP HANA Lesson: Describing the Types of Applications you can run on SAP HANA

149

Lesson: Connecting SAP Business Intelligence Tools to SAP HANA

155

Exercise 5: Create a Report with SAP BusinessObjects Analysis for Microsoft Excel

163

Lesson: Outlining SAP Business Warehouse on SAP HANA

167

Lesson: Describing SAP HANA Data Warehousing Foundation

171

Lesson: Describing the Basics of XS Applications

173

Exercise 6: Write Data into SAP HANA Using an XS Engine Application

179 185

vi

Lesson: Describing the Purpose of the Business Function Library Unit 6:

Continuing your Learning Journey

186

Lesson: Developing your SAP HANA Knowledge

193

Lesson: Outling SAP HANA Interactive Education (SHINE)

© Copyright. All rights reserved.

Course Overview

TARGET AUDIENCE This course is intended for the following audiences: ●

Application Consultant



Project Stakeholder

© Copyright. All rights reserved.

vii

UNIT 1

Introduction to SAP HANA

Lesson 1 Describing SAP HANA

2

UNIT OBJECTIVES ●

Describe SAP HANA



Describe SAP HANA use cases

© Copyright. All rights reserved.

1

Unit 1 Lesson 1 Describing SAP HANA

LESSON OVERVIEW You want to develop a high level understanding of SAP HANA so that you can assess its potential for transforming existing application and developing new ones. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe SAP HANA



Describe SAP HANA use cases

A Changing World In a changing world we are more connected than ever before, with more valuable data being generated every minute of every day. More and more services are moving online and this is set to grow exponentially. Forward thinking organizations are already taking steps to adapt to the new digital world and grow their businesses.

Figure 1: The Growth of the Digital World

The exponential proliferation of mobile devices, social media, cloud technologies, and the large amount of data they generate has transformed the way we live and work. Sixty one percent of companies report that the majority of their people use smart devices for everything from email to project management to content creation. All of this creates unprecedented opportunities for all organizations to grow their businesses by exploiting the connectivity of consumers and business partners, tapping into the depth and variety of new types of data, acquiring this data in real time for real-time decision making, and developing innovative new applications quickly. Consumerization is driving expectations of what business IT should offer for its users. As users become familiar with smart consumer applications they also demand real time applications, and new, innovative applications that enable deep insight and provide proactive decision support in their jobs.

2

© Copyright. All rights reserved.

Lesson: Describing SAP HANA

However, current business systems cannot cope with the increasing demands of the digital world. We cannot just keep adding more complexity to existing IT landscapes in the hope we can keep pace with trends. What is needed is a fresh start, time to start with a blank canvas and rebuild the business systems from the bottom up using only the latest technologies aligned to the modern digital world. This is exactly what SAP have done by developing SAP HANA, a platform built for the digital world.

IT Complexity is Stifling Growth

Figure 2: The Problem with Current Landscapes

Typical IT landscapes have developed over time into multiple complex arrangements of purchased, acquired with developed applications, powered by multiple platforms. These platforms can be based on incompatible hardware from different vendors, with different operating systems and different databases, and even different development languages. To try and pull together these different applications we added extra applications. The IT department has been responsible for the integration of these systems. Moving, harmonizing, and cleaning data, results in multiple copies of that data. We have placed huge demands on system resources during batch processing and expect users to wait for long running processes such as financial close, consolidations, and Materials Requirement Planning (MRP). Complex landscapes create fragmented business views of data. To obtain a holistic view, users are required to wait until consolidation is complete. Developing new applications in a complex landscape is also difficult, it takes time and is expensive to build and maintain. There is too much IT complexity in most organizations, complex landscapes are costly to maintain with multiple skills needed. Complexity is stifling growth and suppresses agility and innovation, which is critical in today’s digital world in order to survive.

© Copyright. All rights reserved.

3

Unit 1: Introduction to SAP HANA

One Platform for all Applications

Figure 3: One Platform for all Applications

The answer is to have all applications powered by one high performance platform. This means a common architecture with only one store for all data regardless of type. Data is available to all applications in real time, no more data movement and no more management of multiple data stores. A key objective of SAP HANA is to remove all redundancies. This means only one copy of data is needed for any type of access. Traditionally, systems were either optimized for transactions or analysis. Transactions were managed in systems where the hardware architecture and database design and the data models were built around fast read/write at the record level. Analysis systems took on a different design approach. The hardware, database and data models were built around batch loading, aggregated storage and a focus on read intensive queries. SAP HANA takes on the challenges of transactional and analysis requirements all in one platform.

Figure 4: OLTP and OLAP Back Together

4

© Copyright. All rights reserved.

Lesson: Describing SAP HANA

SAP HANA takes on the challenges of transactional and analysis requirements in one platform. The database, hardware, and data model of SAP HANA are built for combined transactional and analysis purposes. No movement of data is necessary and we always work from the same single copy of the data for any requirement, whether transactional or analytical.

Advances in Technology How can one platform handle all applications and why did we not do this earlier?

Figure 5: Recent Advances in Technology

SAP HANA takes full advantage of the recent trends in hardware evolution to ensure it is able to handle such an ambitious challenge. Let’s start with memory. Historically, the high cost of memory meant that only small amounts were available to use. This caused a serious bottleneck in the flow of data from the disk all the way to CPU. It did not matter how fast the processor was if the data can reach it quickly. We now have access to huge amounts of cheap memory. SAP HANA runs on hardware with many terabytes of memory. With so much memory available we can store the entire database, of even large organizations, completely inside memory so we have instant access to all data and we eliminate wait times. We can lose the mechanical spinning disk and the latency it brings and rely on memory to provide all data instantly. Memory is no longer the bottleneck it once was. To address large amounts of memory we need 64 bit operating systems. 32 bit operating systems cannot address large amounts of memory. Let’s now consider the CPU. In addition to huge memory, processors continue to improve at a phenomenal rate. We now have high speed multi–core processors that can take on complex tasks and process them in parallel. This means response times for even the most complex analytical tasks, such as predictive analysis can be carried out in real-time. So if we have multiple CPUs each with multiple cores we have access to huge processing power to consume and process huge volumes of data in a minimal time. Advances in the design of on-board cache means that data can pass between memory and CPU cores rapidly. In the past, even with large amounts of memory, this was still a bottleneck as the hungry CPUs were demanding more data and the journey from memory to CPU was not optimal. We now have sophisticated on board CPU cache that keep the most useful data closest to the CPU. And with modern blade server architecture, we can now easily slot in more RAM and more CPUs into our landscape to add more processing power or memory in order to scale up to any size.

© Copyright. All rights reserved.

5

Unit 1: Introduction to SAP HANA

SAP could have just kept same business application software that was written 20 years ago along with the traditional databases that supported them and installed all this on the new hardware. There would be some gains but traditional databases and applications were designed around old, restricted hardware architecture. This means they would not be able to fully exploit the power of the new hardware with all the new developments we mentioned earlier. Put simply, the business software needed to catch up with advances in hardware technology, and so a complete rewrite of the platform was required. SAP built SAP HANA to fully exploit the new hardware. SAP worked closely with leading hardware partners who shared their designs of their new CPU architectures so that SAP knew how to develop SAP HANA to extract every last drop of power.

Time to Rebuild the Platform

Figure 6: Introducing SAP HANA Platform

SAP HANA is a platform that is built on modern hardware. The platform is the software side of the equation that was built entirely by SAP. The SAP HANA platform combines all key components: database, data processing, app development, lifecycle management,, and data integration that can be used to power any application, both SAP and non-SAP. The following are some of the key capabilities of SAP HANA: ●

Application Services: As well as a database, SAP HANA also provides many application services. This means many applications are built in a two tier model, rather than a three tier model. For example, imagine an application that allows a project manager to quickly check all team members have competed their time sheets. This could easily be developed as a web application where only a web browser and SAP HANA is required, no application server is needed. This is because SAP HANA can handle the business logic as well as the database services. SAP HANA provides a full development environment with productivity tool supplied in the box. Everything the developer needs at design time is there, and what is needed at run time is also there.



6

Processing Services:

© Copyright. All rights reserved.

Lesson: Describing SAP HANA

SAP HANA can handle many new types of data. This includes text, spatial, graphic, and more. However, it is not enough to simply store these new data types, we need to be able to build applications that can process and integrate this data with traditional data types, such as business transactions. SAP HANA provides native in-memory engines that process any types of data in real time. ●

Integration Services: SAP HANA has multiple data consumption options built in as follows: ­

Continual streaming data analysis

­

Read data remotely in any data source

­

Read from Big Data stores such as Hadoop

­

Synchronizes in both directions with remote databases and devices that collect data (IoT)

SAP HANA has built in Extraction, Transformation and Loading (ETL) capabilities so that separate software is no longer needed to clean, enrich, and profile data from any sources. ●

Database Services: SAP HANA is a full in-memory column and row store database that can support both OLTP and OLAP requirements and is built to run on high end hardware. It stores data optimally using automatic compression and is able to manage data on different storage tiers to support data aging strategies. It has built in high availability functions that keep the database running and ensure mission critical applications are never down.

Data Footprint Reductions

Figure 7: Reducing the Data Footprint

Tables in SAP HANA are automatically compressed so we can store huge amounts of data in a small amount of space. Further data footprint reductions are achieved because, we removed unnecessary tables and indexes. We also reduce the in-memory data footprint by implementing data aging strategies.

© Copyright. All rights reserved.

7

Unit 1: Introduction to SAP HANA

SAP HANA can split data across an in-memory tier (we call this HOT storage) and a disk based tier (we call this WARM storage). A developer does not need to know where the data is physically located, this is handled internally by SAP HANA. The benefit of this is that data that is used less frequently can be moved automatically from HOT to WARM store so we are not filling memory with data that is less useful. However, this data is still available whenever it is needed. Data Management Built In

Figure 8: Data Management Built In

Even with massive compression of data within SAP HANA, we know the digital world is creating huge amounts of data. So shall we just keep loading this data to SAP HANA and storing it forever? Technically we could do that, but it would not be efficient. Most business applications refer to only a small subset of data for their day to day running, and that is typically the most recently created data. We should not be filling up SAP HANA’s in-memory database with data that is old and rarely used. SAP HANA allows us to classify our data as active and passive. We also use temperatures as an easy way to describe where data fits on the scale of usefulness. Active or hot data is the data that is very recent, or perhaps data that, although old, is the focus of a current analysis and is being processed. Hot data is stored in the memory of SAP HANA. Passive data, usually called warm data, is useful data but less used. Warm data is stored on the disk layer within SAP HANA. Cold data is rarely, if ever, used. Cold data is usually stored in archives, either permanently connected to SAP HANA or disconnected. In traditional systems data was either hot (in the database) or cold (archived outside the database). There were usually never multiple temperatures of data due to the limitations of the technology at that time. With SAP HANA, there are many options for data storage depending on the temperature. Even for very large data stores we can provide access to SAP HANA without storing this data in the HANA database. Big Data is a term often used, and this refers to the staggering amounts of data that is being collected, especially by machines, sensors, social media, and so on. In recent years, solutions have been developed for the storage of this type of data. One of the most popular solutions is called Hadoop. Hadoop is a Big Data framework that utilizes cheap (commodity) hardware

8

© Copyright. All rights reserved.

Lesson: Describing SAP HANA

and an open source software platform to store massive amounts of data in a simple format. Hadoop is not a relational database, and its key role is to provide data storage and access to systems that require the data. This data is then made available to SAP HANA using connectors provided with SAP HANA. To SAP HANA, Big Data is as readily available as the data stored inside the HANA database. Hadoop and other Big Data solutions should be considered in the overall planning for data management. Push Down Processing to SAP HANA

Figure 9: Push Down Processing to SAP HANA

In the past, the key job of the database layer was to listen out for requests for data from the application server and then send that data to the application server for processing. Once the data had been processed the results would be sent back down to the database layer for storage. SAP HANA is capable of taking over many of the processing tasks from the application server. Data related task such as aggregation, filters, sort, and calculate can be handled by SAP HANA. So now the application layer tells SAP HANA what it requires to be done, SAP HANA will process the data and only send the results. This is done quickly using in-memory. The application layer is still needed with SAP S/4HANA to handle the complex business logic that must be programmed in a business programming language. In the case of S/4HANA, this is ABAP.

© Copyright. All rights reserved.

9

Unit 1: Introduction to SAP HANA

Traditional Approach to Data Model and Application Code

Figure 10: Traditional Approach to Data Model and Application Code

Traditional applications were built on a hierarchical data model. Detailed data was summarized into higher level layers of aggregates to help system performance. On top of aggregates, we built more aggregates and special versions of the database tables to support special applications. As well as storing the extra copies of data, we also had to build application code to maintain extra tables and keep it up to date. A backup to these extra tables was also required, so even the IT operations were impacted. In addition to aggregates, we have another inefficiency that we need to remove. Database indexes improve access speed because they are based on common access paths to data. But they need to be constantly dropped and rebuilt each time the tables are updated. So again, more code is needed to manage this process. The traditional data model is complex, and this causes the application code to be complex. 70% of application code is built specifically for performance of an application and adds no value to the core business function. With a complex data model and complex code, integration with other applications and also enhancements are difficult, and simply not agile enough for today’s fast moving environment. Eliminate Complexity of Applications when Built on SAP HANA

Figure 11: Eliminate Complexity of Applications when Built on SAP HANA

10

© Copyright. All rights reserved.

Lesson: Describing SAP HANA

Using the power of SAP HANA, we can aggregate on the fly from any line item table. We do not need pre-built aggregates. SAP HANA can generate any view of the data at run time, all from the same source tables. SAP HANA organizes data using column stores, which means that indexes are usually not needed - they can still be created but offer little improvement. As well as removing the aggregates and indexes from the database, we can also remove huge amounts of application code that deals with aggregates and indexes. We are left with a simplified core data model and also simplified application code. Now it is much easier to enhance the applications and integrate additional functions. Choice of Configurations

Figure 12: Choice of Configurations

For on-premise deployments, SAP HANA is delivered as a brand new, all-in-the-box application where all software and hardware is provided and fully configured by certified partners. There are many different configuration options available to suit all sizes of organization. Alternatively, SAP HANA can be installed flexibly on mixed vendor hardware components that appear on the approved list from SAP. Many customers already have hardware components and also software licenses that they would like to re-purpose and so this flexible approach ensures implementation costs are kept to a minimum.

Note: Only certified SAP HANA technical consultants are allowed to install SAP HANA for production purposes (refer to exam E_HANAINS at training.sap.com to become certified). This restriction does not apply for non-production installations, for example, development, sandbox. SAP HANA runs on the Linux operating system. The following versions of Linux are supported: ●

SUSE

© Copyright. All rights reserved.

11

Unit 1: Introduction to SAP HANA



Red Hat

Currently, SAP HANA runs on Intel x86 based hardware and also IBM Power Systems hardware. Flexible Deployment Options

Figure 13: Flexible Deployment Options

SAP HANA is available on-premise as well as in the cloud. On-premise means the entire solution, the software, network, hardware is installed and managed by the customer. A cloud deployment is managed by SAP and other hosting partners and this means customers do not have to be concerned with managing the infrastructure, they can simply get on with using and developing applications with SAP HANA. Another advantage of the cloud deployment is that all existing SAP cloud solutions such as Ariba and Concur are already connected with SAP HANA in the cloud. Another possibility is a hybrid approach where a combination of on-premise and cloud is used. For example, a customer wants to have an on-premise deployment of SAP HANA to run their ERP solution. But they are also developing new applications that require more complex SAP HANA services and infrastructure than they currently have in-house (for example, IoT streaming data), so they use a cloud version of SAP HANA to run these applications. But a key point to remember is that a hybrid solution brings together applications in the cloud and onpremise, and there should be no barriers to developing applications that cross both.

SAP HANA Scenarios SAP HANA is central to SAP’s strategy of providing a modern digital platform that can power existing and new applications. SAP HANA is capable of handling any type of application from analytical, transactional, consumer facing, back office, real-time, predictive, and cloud and more.

12

© Copyright. All rights reserved.

Lesson: Describing SAP HANA

Figure 14: SAP HANA is Central to SAP’s Strategy

With a single, scalable platform powering all applications, customers have an opportunity to simplify their landscapes and also to develop new, innovative applications that cover all data sources and data types. SAP Supplied Virtual Data Models One of the earliest, and still a very popular use case for SAP HANA, is to power real time operational analytics. Many customers have deployed SAP HANA as a data mart to capture data from various operational systems, including SAP enterprise systems. SAP HANA is ready to connect to a huge number of reporting tools using industry standard connectors. So reporting on SAP HANA can begin immediately. One of the most appealing aspects of SAP HANA in this use case is that SAP HANA comes with extensive built-in virtual data models that provide real time business ready views of all SAP operational data based on the tables of either SAP Business Suite or SAP S/4HANA. SAP have developed and maintain these comprehensive virtual data models to expose live operational tables from all areas of SAP Business Suite and SAP S/4HANA so that any application that requires easy to consume views of business data has it immediately. The real value in the virtual data models is the business semantics added by SAP. Raw database tables are combined and filters and calculations added to expose business views ready for immediate consumption with no additional modeling needed. So instead of having to refer to multiple raw tables in your reporting tool, creating joins and unions manually, applying filters to add meaning to the data, you simply call a view from the virtual data model and the data is exposed. For SAP Business Suite the virtual data model is called SAP HANA Live and is specifically built for SAP Business Suite tables. For SAP S/4HANA, the virtual data model is delivered using Core Data Services, often referred to as simply CDS. CDS is delivered with SAP S/4HANA as part of Embedded Analytics and is based specifically on the simplified table schema of SAP S/4HANA. Whilst they are different technical approaches, they both deliver the same outcome, a virtual data model that exposes live operational data for analytics.

© Copyright. All rights reserved.

13

Unit 1: Introduction to SAP HANA

Figure 15: SAP Supplied Virtual Data Models

For customers who run SAP Business Suite on SAP HANA or AnyDB, they can get started immediately with SAP HANA Live. Customers do not need to convert their SAP Business Suite to run on SAP HANA to use SAP HANA Live. Customers can continue to use their existing SAP Business Suite applications on AnyDB and SAP HANA Live can be installed on a side-by-side SAP HANA platform. This means data must then be replicated from the source tables from AnyDB into SAP HANA, preferably in real time. This could be achieved in a variety of ways using standard SAP data replication tools. For customers already running SAP Business Suite on SAP HANA, no data replication is needed because SAP HANA Live is installed on the same SAP HANA platform used to power SAP Business Suite. This means SAP HANA Live has access to the same tables used by the transactional applications. To get started with the virtual data model built with Core Data Services, customers must implement SAP S/4HANA, as the virtual data model is supplied only with SAP S/4HANA Embedded Analytics. Use Cases for SAP HANA So where can SAP HANA be used?

14

© Copyright. All rights reserved.

Lesson: Describing SAP HANA

Figure 16: Scenarios for SAP HANA

There are many use cases and scenarios for SAP HANA: ●

Wherever a database is needed.



As a data warehouse or data mart.



To power enterprise suites such a S/4HANA and Business Suite.



As an embedded data processing engine in partners’ applications.





To accelerate read access for processes that are notoriously slow such as MRP, or customer segmentation. To power line of business packaged applications that are built just to run on SAP HANA.

Architecture of SAP HANA Scenarios

Figure 17: Architecture of SAP HANA Scenarios

The versatility of SAP HANA is shown in the figure, Architecture of SAP HANA Scenarios. SAP HANA can be deployed as a key component in many different landscapes. SAP HANA can be used to power, enable, accelerate, and run applications. And don’t forget a single deployment of SAP HANA can be used for simultaneous use cases. SAP HANA can be the single platform to power all applications, SAP and non-SAP. Connecting Internet of Things (IoT) with Core Business Processes Another exciting use case for SAP HANA is to connect the Internet of Things (IoT) to core business processes.

© Copyright. All rights reserved.

15

Unit 1: Introduction to SAP HANA

Figure 18: Connect IoT with Core Business Processes

Traditional business systems are simply not ready to support the massive growth in device connectivity that is proposed by the Internet of Things (IoT). The demands of large scale device connectivity and real-time data streaming requires modern, high powered platforms such as SAP HANA. SAP HANA can provide real time data to core business processes from any device and at any scale. Imagine having access to detailed machine data a few clicks away from a business transaction. Let’s consider this scenario: A customer is disputing an item on their invoice and complains that the paint we supplied is too lumpy. So we drill down from the invoice, discover the actual line that relates to the paint problem, we drill down to the batch that we supplied, then we drill down to the shop floor data to check the recipe for the paint was correct. But wait, when we drill down to examine the data generated from the paint mixing machine we see it did report overheating problems between 2.05pm and 2.10pm, the precise time the customer’s paint batch was created. We now need to talk to the engineers on the shop floor to find out why this was not detected and get back to the customer with a fast solution. Not Just for Traditional Businesses SAP HANA is not just for traditional businesses. SAP HANA is used to power many other exciting and innovative applications in all types of environments.

16

© Copyright. All rights reserved.

Lesson: Describing SAP HANA

Figure 19: SAP HANA also Powers Non-Traditional Business Applications

These include the following: Sport Analytics — Provide fans with real time in game statistics in order to fully engage them. The NBA is already up and running with this, and many other sports bodies and teams have similar platforms. Online Gaming Analytics — Provide online gaming providers with real time analytics to help up sell/cross sell in-game purchases and identify patterns of play to help develop new ideas. Human Genome Analysis — Provide medical experts with key information from a patient’s tumor sample in order to support personalized treatment plans. Building New Applications with SAP HANA

Figure 20: Not Just for SAP Applications

SAP HANA is not just for SAP applications. A large development community is busy building innovative applications powered by SAP HANA. Also, many well known and established best of breed applications are now fully integrated with SAP HANA. SAP offers a certification

© Copyright. All rights reserved.

17

Unit 1: Introduction to SAP HANA

programme so vendors can demonstrate that their applications meet the high standard of integration and compatibility demanded by SAP.

SAP HANA in the Cloud SAP HANA is used in many different cloud scenarios. These include the following: ●









Infrastructure as a service (IaaS) — SAP provides all hardware and you bring your software (in this case SAP HANA based applications) but it’s the customer’s responsibility to manage the solution Managed Cloud as a service (MCaaS) — SAP provides all hardware, you bring your software and SAP or an SAP hosting partner manages the entire solution Database as a service (DBaaS) — SAP provides all hardware and an empty SAP HANA system, customers just add their own applications and manage their solution Platform as a service (PaaS) — SAP provide all hardware and an empty SAP HANA system but includes a full development tool set to build and run new applications. SAP manage the hardware and SAP HANA but customers manage their own applications built on this platform Software as a service (SaaS) — SAP provide all hardware and a wide selection of SAP HANA powered ready to run line of business applications. SAP manages the entire solution. Customers just provide the business users!

.

Figure 21: SAP HANA in the Cloud

Customers can run their SAP HANA powered solutions such an SAP BW, SAP Business Suite, completely in the cloud. Customers can also develop new applications powered by SAP HANA in the cloud. There are also many ready built applications from SAP and partners that are powered by SAP HANA and are available in the cloud and can be used standalone or integrated with existing applications. SAP HANA Cloud Platform SAP HANA Cloud Platform (HCP) is SAP’s open platform as a service (PaaS) for developing cloud business applications. In very simple terms, SAP have installed a fully featured SAP HANA system in the cloud with a full set of development tools. HCP can be used by absolutely anyone who wants to develop and run applications powered by SAP HANA.

18

© Copyright. All rights reserved.

Lesson: Describing SAP HANA

Figure 22: SAP HANA Cloud Platform

You can use all of the following programming models to develop applications: ●

Java SAP HANA Cloud Platform is Java EE 6 Web Profile certified. You can develop Java applications just like for any application server. You can also easily run your existing Java applications on the platform.



SAP HANA You can use the SAP HANA development tools to create comprehensive analytical models and build applications with SAP HANA programmatic interfaces and integrated development environment.



HTML5 You can easily develop and run lightweight HTML5 applications in a cloud environment.



SAPUI5 Use the UI Development Toolkit for HTML5 (SAPUI5) for developing rich user interfaces for modern Web business applications.



Also SAP HANA has a built-in application server called XS. This is used to develop 2 tier applications and XS supports HTML, JavaScript, and CSS.

SAP HANA Enterprise Cloud SAP HANA Enterprise Cloud (HEC) is a virtual private cloud with a single tenancy infrastructure. It is not public and is for dedicated customers and their applications. You can consider HEC as an extension to a corporate network. HEC falls into the IaaS and MCaaS categories

© Copyright. All rights reserved.

19

Unit 1: Introduction to SAP HANA

Figure 23: SAP HEC

The following are the key components of HEC: ●

Infrastructure (the hardware and network)



SAP HANA



Applications powered by SAP HANA (such as BW)



Services (to keep it all running)

The pricing model for all SAP HANA cloud solutions is subscription based. So, customers pay for what they need and do not have to worry about procuring expensive hardware, software and skills to run their SAP HANA powered applications.

Note: We did not focus on software as a service (SaaS) here, we touched on HEC and HCP. SAP and their partners have created many ready to use applications powered by SAP HANA available to run in the cloud. You may have heard of SAP SuccessFactors, this is a full cloud service and is an example of Software as a Service (SaaS). This is the ultimate in-cloud based computing — no hardware or software to install and manage, no SAP HANA skills needed. Just bring your business users and any devices.

LESSON SUMMARY You should now be able to:

20



Describe SAP HANA



Describe SAP HANA use cases

© Copyright. All rights reserved.

Unit 1 Learning Assessment

1. Which recent technology advances have made SAP HANA possible? Choose the correct answers. X

A Faster internet speeds

X

B Large and cheaper memory

X

C Multi-core processors

X

D Faster disk speeds

2. What are key features of SAP HANA? Choose the correct answers. X

A In-memory database

X

B Automatic compression of data

X

C Removes the need for cache

X

D Combined OLTP and OLAP processing on one platform

3. Which are true statements? Choose the correct answers. X

A SAP HANA runs on Intel x86 and SPARC hardware platforms

X

B SAP HANA runs on Unix

X

C SAP HANA can be installed only by certified engineers for production purposes

X

D Customers can re-use their own certified hardware components in an SAP HANA system

X

E SAP HANA is available in the cloud or on premise or a combination of both

© Copyright. All rights reserved.

21

Unit 1: Learning Assessment

4. What are the four SAP HANA platform services? Choose the correct answers. X

A Processing Services

X

B Database Services

X

C Application Services

X

D Security Services

X

E Integration Services

5. What is SAP HANA Live? Choose the correct answer. X

A Consumption ready views of operational data that is sourced from SAP Business Suite tables

X

B Out of the box reports that support key business processes

X

C Consumption ready views of operational data that is sourced from SAP S/4HANA tables

X

D An annual event where SAP showcases new SAP HANA features

6. SAP HANA can be used in which scenarios? Choose the correct answers. X

A To power Enterprise Suites

X

B To replace ABAP

X

C As a general purpose database

X

D For OEM partners to embed SAP HANA into their applications

X

E As a data warehouse

7. True or false? SAP HANA uses aggregates to ensure great read performance. Choose the correct answer.

22

X

A True

X

B False

© Copyright. All rights reserved.

Unit 1: Learning Assessment

8. How is SAP HANA used as an Accelerator? Choose the correct answer. X

A To reduce the time it takes to develop and deploy an application on SAP HANA

X

B To provide a way to vary the speed of SAP HANA in order to reduce resources

X

C To improve the speed of data loading to SAP HANA

X

D To work alongside a disk based database in order to speed up the read access for existing SAP applications

© Copyright. All rights reserved.

23

Unit 1 Learning Assessment - Answers

1. Which recent technology advances have made SAP HANA possible? Choose the correct answers. X

A Faster internet speeds

X

B Large and cheaper memory

X

C Multi-core processors

X

D Faster disk speeds

2. What are key features of SAP HANA? Choose the correct answers. X

A In-memory database

X

B Automatic compression of data

X

C Removes the need for cache

X

D Combined OLTP and OLAP processing on one platform

3. Which are true statements? Choose the correct answers.

24

X

A SAP HANA runs on Intel x86 and SPARC hardware platforms

X

B SAP HANA runs on Unix

X

C SAP HANA can be installed only by certified engineers for production purposes

X

D Customers can re-use their own certified hardware components in an SAP HANA system

X

E SAP HANA is available in the cloud or on premise or a combination of both

© Copyright. All rights reserved.

Unit 1: Learning Assessment - Answers

4. What are the four SAP HANA platform services? Choose the correct answers. X

A Processing Services

X

B Database Services

X

C Application Services

X

D Security Services

X

E Integration Services

5. What is SAP HANA Live? Choose the correct answer. X

A Consumption ready views of operational data that is sourced from SAP Business Suite tables

X

B Out of the box reports that support key business processes

X

C Consumption ready views of operational data that is sourced from SAP S/4HANA tables

X

D An annual event where SAP showcases new SAP HANA features

6. SAP HANA can be used in which scenarios? Choose the correct answers. X

A To power Enterprise Suites

X

B To replace ABAP

X

C As a general purpose database

X

D For OEM partners to embed SAP HANA into their applications

X

E As a data warehouse

7. True or false? SAP HANA uses aggregates to ensure great read performance. Choose the correct answer. X

A True

X

B False

© Copyright. All rights reserved.

25

Unit 1: Learning Assessment - Answers

8. How is SAP HANA used as an Accelerator? Choose the correct answer.

26

X

A To reduce the time it takes to develop and deploy an application on SAP HANA

X

B To provide a way to vary the speed of SAP HANA in order to reduce resources

X

C To improve the speed of data loading to SAP HANA

X

D To work alongside a disk based database in order to speed up the read access for existing SAP applications

© Copyright. All rights reserved.

UNIT 2

Architecture of SAP HANA

Lesson 1 Outlining the Main Components of an SAP HANA Landscape

28

Lesson 2 Working with Interfaces for Administrators and Developers

33

Exercise 1: Getting Started with SAP HANA Studio

47

Lesson 3 Understanding the Key Architectural Features of the SAP HANA Database

55

Exercise 2: Working with the SAP HANA Database

61

Lesson 4 Describing the Main Characteristics of High Availability

65

Lesson 5 Describing the Main Security Features of SAP HANA

68

UNIT OBJECTIVES ●

Outline the main components of an SAP HANA landscape



Work with the SAP HANA Studio



Describe the SAP Web Development Workbench



Understand the key architectural features of the SAP HANA database



Describe the main characteristics of high availability



Describe the main security features of SAP HANA

© Copyright. All rights reserved.

27

Unit 2 Lesson 1 Outlining the Main Components of an SAP HANA Landscape

LESSON OVERVIEW This lesson provides an overview of the key components in an SAP HANA landscape. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Outline the main components of an SAP HANA landscape

Key SAP HANA Components SAP HANA contains many internal components, some are fundamental to SAP HANA, and some are optional. Surrounding SAP HANA are other landscape components, and again, some of these are essential, some are optional and their use will depend on the use case for SAP HANA. Let’s take a look around a typical SAP HANA landscape and the internal and external components.

Figure 24: Key Components of a Typical SAP HANA Landscape

Firstly. let’s focus on the internal components of SAP HANA. At the heart of SAP HANA is the database. SAP HANA uses a row and column store database and the physical storage can be either in-memory, on disk, or a combination of both. The database is a fundamental component of SAP HANA and is therefore a mandatory part of the landscape. Also within SAP HANA are the processing engines, these dedicated engines provide the number crunching capabilities. They interact closely with the database to produce fast results without the data leaving SAP HANA. There are a large number of engines available. SAP HANA provides relational access to the database via SQL and multidimensional access via

28

© Copyright. All rights reserved.

Lesson: Outlining the Main Components of an SAP HANA Landscape

MDX and there are dedicated processors to handle these query requests. The calculation engine is able to take on complex query tasks such as hierarchical and deep OLAP queries and work with SQL and MDX processors to produce the fastest possible results. The Application Function Library (AFL) is a repository of ready made common business functions and predictive algorithms that developers can use in their applications. These functions run in SAP HANA are optimized for best performance. AFL is an optional part of SAP HANA and is only installed when required. SAP HANA has its own built in Enterprise Information Management (EIM) component. This is used to Extract, Transform and Load (ETL) any data to SAP HANA in real-time and batch. This subcomponent of EIM is Smart Data Integration (SDI). EIM enhances and cleanses data during the loading, this EIM subcomponent is Smart Data Quality (SDQ). EIM is optional and is only installed if required. SAP HANA natively connects to other SAP data provisioning tools such as SAP Landscape Transformation Replication Server (SAP LT Replication Server) and SAP Data Services. These optional components are used to acquire data from SAP and non SAP sources in real-time and batch. The recent addition of EIM means that customers no longer need to install and use these additional components for loading. Customers simplify their landscapes by using the built-in EIM capabilities. SAP HANA can consume data from remote sources without having to persists this data. Using Smart Data Access (SDA) data can remain in the remote sources, such as Hadoop, Sybase IQ and data archives but is still available to applications. SDA enables the management of data at different temperatures. The SAP HANA Studio and SAP Web IDE provide the front end interfaces for developers and administrators who logon directly to SAP HANA to access the development tools and perform administration duties. A Typical Three Tier Landscape

Figure 25: A Typical Three Tier Landscape

SAP HANA powers many enterprise applications including SAP S/4HANA, Business Suite and SAP Business Warehouse (SAP BW). In this scenario, SAP HANA provides the database and data processing services. On top of SAP HANA is the application server. In the case of SAP applications this is usually SAP NetWeaver. SAP NetWeaver is still required to provide the business layer, the flow logic and the connectivity and orchestration with other applications. The data is generated by the application and so there may not be a need for external

© Copyright. All rights reserved.

29

Unit 2: Architecture of SAP HANA

connection to other data sources as we saw in the figure, Key Components of a Typical SAP HANA Landscape. Wherever possible, the application layer always passes the processing down to SAP HANA in order to speed up the task. SAP applications are always optimized to run on SAP HANA and the application code is carefully tweaked by SAP to ensure SAP HANA does all the heavy lifting work where it can. Simplified Two Tier Landscape for BI Cases

Figure 26: Simplified Two Tier Landscape for BI Cases

For customers who use SAP HANA to provide reporting services then a simple two tier landscape is required. The figure, Simplified Two Tier Landscape for BI Cases, shows that we have removed the application layer as the communication takes places directly between the front end reporting tool and SAP HANA. SAP HANA connects to any SAP BI tool using either JDBC, ODBC or BICS. Of course, data has to be acquired and you may use the built-in EIM components or external data provisioning tools as mentioned earlier, in addition to remote sources. An important internal component of SAP HANA is the Extended Application Services engine (XS). This component is optionally used to support light, web based applications where a full application server and all its capabilities would be overkill. Application Services with SAP HANA XS

Figure 27: Application Services with SAP HANA XS

30

© Copyright. All rights reserved.

Lesson: Outlining the Main Components of an SAP HANA Landscape

For example, imagine you wanted to build a simple stock checking application for mobile device users in the warehouse. XS provides all the application services you need to access the required data from with SAP HANA’s database, call the data processing engines and also the application logic. SAP HANA takes care of communication to the users’ devices. XS has a built-in web server so applications are easily web enabled. Javascript is the application language used with XS. SAP HANA comes with all the development and testing tools required to build, deploy, and manage complete applications. Evolution of the XS Engine

Figure 28: Evolution of the XS Engine

Since SPS11, SAP delivers a more powerful version of XS. This new version is called XS Advanced and provides even more application services, employs open standards, and is capable of supporting larger and more complex applications written in many more languages. For backward compatibility, the existing XS engine is still provided but has been renamed to ‘classic’ and everything developed under the classic environment still works. Classic XS is tied to the database server and so it was not possible to scale up the XS component separately. With XS Advanced it is possible to scale only that component, so more power can be given to the application processor and the database remains unaffected. All new development objects are now created in the new XS Advanced architecture. The SAP HANA Cloud Platform (HCP) has moved to Cloud Foundry for the management of the development lifecycle using open source standards and micro services architecture. XS Classic does not use Cloud Foundry, so customers with XS classic do not have the resources to develop a single application for use in the cloud and also on-premise. XS Advanced also uses Cloud Foundry architecture and so applications can be written once and deployed either on-premise or in cloud with no redevelopment. XS Advanced is based on JAVA as well as Javascript. It also supports the C++ runtime. It is easy to port existing JAVA (TomEE) applications and move them to XS Advanced. An important architectural change — SAP HANA is moving to a micro services architecture. This means applications are divided up into small chunks to allow the developer to choose the development language. It also means that it is possible to configure each part of application to consume more or less resources as needed. This is known as elastic computing. XS Advanced is built on a micro services architecture. XS Advanced is integrated with Git / GitHub to enable the use of industry standard source code versioning and open source promotion.

© Copyright. All rights reserved.

31

Unit 2: Architecture of SAP HANA

In the future there will be a shift completely to XS Advanced and all existing objects will be migrated to the new environment. But for now, SAP supports both Classic and Advanced XS. LESSON SUMMARY You should now be able to: ●

32

Outline the main components of an SAP HANA landscape

© Copyright. All rights reserved.

Unit 2 Lesson 2 Working with Interfaces for Administrators and Developers

LESSON OVERVIEW This lesson covers the interfaces used by administrators and developers. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Work with the SAP HANA Studio



Describe the SAP Web Development Workbench

Connectivity to SAP HANA There are various interfaces that are used to access SAP HANA for installation, administration, and development purposes. SAP HANA Studio and SAP HANA Web Workbench are two important user interfaces used by administrators and developers to access SAP HANA. The SAP HANA Studio was developed with the first version of SAP HANA and is used by administrators and developers. For many people, it is the only interface they need. It is installed locally and is based on Eclipse and is developed in Java. The SAP HANA Web Workbench came along later and was targeted at developers who needed only a light and portable interface for application development where the SAP HANA Studio was considered too complex and heavy. A third interface is called SAP HANA Cockpit and is based on the SAP Fiori design. With each new release more of the administration features that are available in SAP HANA Studio are finding their way to SAP Cockpit. SAP Fiori provides an excellent interface for SAP HANA Cockpit and is able to quickly present system KPIs and alerts to the administrators. So the need to install SAP HANA Studio will continue to reduce and eventually access by administrators and developers will become browser based. However, for now SAP HANA Studio continues to be extremely popular and is an excellent interface for us to use in this overview course as it provides 100% of the features we need to cover and this means we do not have to jump around different interfaces to reach all the areas where we go. Connecting SAP HANA Studio to SAP HANA Workbench To get started with SAP HANA Studio you must first create a connection to the SAP HANA target system that you want to work with.

Note: When using the SAP HANA Web Workbench the connection information is part of the URL so you do not need to create connections. See separate lesson later for details.

© Copyright. All rights reserved.

33

Unit 2: Architecture of SAP HANA

Figure 29: Connecting SAP HANA Studio to SAP HANA Systems

When defining the connection you will be asked to specify two important pieces of information: 1. The host and instance (this pair of details identifies the exact target system) 2. A valid SAP HANA user and password that has previously been created on the target system You can create as many connections as you wish. This means you can open the SAP HANA Studio once and then navigate between SAP HANA systems easily. You can optionally give each connection a description so it is easy to identify to purpose of each system when the list of connections becomes long. When you log back on to the SAP HANA Studio where connection already exists you will need to provide the passwords for each connection again. It is possible to export the list of connections to a file so these can be imported by others so they do not have to manually define the connections. Of course the user credentials are not saved. You can also use the exported list of connections and share them as a central store. Each user creates a link to this central store and does not need to either create their own connections or import connections. This means all connection information is managed centrally so any changes are made in just one place.

SAP HANA Studio Let’s look in detail at the SAP HANA Studio.

34

© Copyright. All rights reserved.

Lesson: Working with Interfaces for Administrators and Developers

Figure 30: SAP HANA Studio

The SAP HANA Studio is delivered as part of the SAP HANA installation package, and provides an environment for administration, modeling, development and data provisioning. It can be installed on any client PC that has a connection to the SAP HANA system. The SAP HANA studio is a Java-based application that runs on the Eclipse platform. For more information on the Eclipse IDE (Integrated Development Environment): http:// www.eclipse.org ).

Perspectives in the SAP HANA Studio When you start the SAP HANA Studio for the first time, you must choose a perspective. Perspectives are predefined User Interface (UI) layouts that contain several views. One or several perspectives address the needs of a particular SAP HANA user role. For example, a System Administrator uses the SAP HANA Administration Console perspective. A view is a pane of varying sizes within a perspective that provides specific information, such as a Where Used list. Each view can be moved around via drag and drop. You can also customize a perspective by adding or removing views. Views can appear in multiple perspectives, for example, the System view is used in most perspectives as it presents a hierarchical list of objects in each SAP HANA system that is useful to everyone.

© Copyright. All rights reserved.

35

Unit 2: Architecture of SAP HANA

Figure 31: Perspectives are Based on Views

Example of Perspectives Here is an example of some perspectives that are available in the SAP HANA Studio. ●

SAP HANA Modeler The SAP HANA Modeler perspective is used by Data Architects to create Information Models, as a combination of attributes, dimensions, and measures, included in different types of modeling views.



Administration Console The Administration Console perspective is used by SAP HANA Administrators to administrate and monitor the whole SAP HANA system.



Resources The Resources perspective is used to organize files, such as text files, sql scripts, and so on, by project.



Other perspectives Some perspectives in the SAP HANA Studio are designed for SAP HANA applications development, Java development and Lifecycle Management.

36

© Copyright. All rights reserved.

Lesson: Working with Interfaces for Administrators and Developers

Opening a Perspective

Figure 32: Opening a Perspective

To open a perspective, choose Windows→ Open Perspective, then select a perspective from the list, or choose Other... . It is possible to have several perspective open at the same time, and to switch from one perspective to another. To do so, in the perspective switcher in the upper-right corner of the screen, choose the perspective you want to open. Adding a View to a Perspective

Figure 33: Adding a View to a Perspective

© Copyright. All rights reserved.

37

Unit 2: Architecture of SAP HANA

To add a view to a perspective, choose Windows→ Show View, then select a view from the list, or choose Other... .

Note: The SAP HANA Studio is based on Eclipse. Eclipse is an industry standard open source software product and comes with many ready made views. You will find many of these very useful when working with SAP HANA, but there are many views that you may never need to use. For this reason, you will see a lot of views in the Show View dialog box. SAP have delivered many views that are specifically designed to work with SAP HANA and these are located in the following folders: ●

SAP HANA



SAP HANA Modeler



Help (Cheat Sheets and Help views)



General (Project Explorer and Properties views)

Customizing the Systems View

Figure 34: Customizing the Systems View

Some views can be customized. This includes the Systems view. To customize a view, choose the View Menu button, and choose Customize View... .

38

© Copyright. All rights reserved.

Lesson: Working with Interfaces for Administrators and Developers

Resetting a Perspective

Figure 35: Resetting a Perspective

Any perspective can be reset to its default layout in order to restore the default views in their original positions and sizes. To do so, choose Window→ Reset Perspective... .

Adding a System to the SAP HANA Studio When you start the SAP HANA Studio for the first time, there is no connection to any SAP HANA system available. You must create a first connection to an SAP HANA system. To add a system to SAP HANA Studio, you must open a perspective where the Systems view is included. For example: ●

The SAP HANA Administration Console perspective.



The SAP HANA Modeler perspective.

To add an SAP HANA system, you need the following information: ●



The name of the server that runs the SAP HANA Engine. The instance number. This is a two-digit number that determines the communication port to the SAP HANA system. For example, if you connect to an SAP HANA system with instance 00, the port used to communicate with the server will be 30015.



The credentials of a user that is defined in the SAP HANA system. This user must be active.

© Copyright. All rights reserved.

39

Unit 2: Architecture of SAP HANA

Note: ●



It is possible to connect to several SAP HANA systems within one single instance of the SAP HANA Studio. You can connect to the same SAP HANA system with two different users.

There are two methods to add a system to the SAP HANA Studio: ●

Manually With this method, you add one SAP HANA system at a time.



­

In the Systems view, right-click any blank area and choose Add system....

­

Fill in the server name, instance number and system description, and choose Next.

­

Fill in the user name and password, and choose Finish.

By importing a Landscape This method allows you to connect to several SAP HANA systems at the same time, by importing an XML file generated previously by a landscape export from the SAP HANA Studio installed on your computer or another one. ­

­

Choose File→ Import and choose SAP HANA→ Landscape. Specify the landscape file location, the destination folder for the import, and choose Finish.

Note: The landscape XML file does not contain a password. You will have to specify the user and password for any system added to the Systems view.

40

© Copyright. All rights reserved.

Lesson: Working with Interfaces for Administrators and Developers

Systems View

Figure 36: The Systems View

The Systems view lists all the systems that have been registered (manually, or by a landscape import). For each system, the content is organized as follows: In the SAP HANA Studio, one central point of access is the Systems view, which is usually placed on the left side of the screen. ●

Catalog As in many database structures, the catalog contains tables, views, and indexes. All these objects are organized into schemas. Schemas are used to categorize a database content according to customer defined groupings that have a particular meaning for users. Schemas also help to define access rights to the database objects.

Note: From a modeling standpoint, schemas can help to identify which tables to use when defining information models. But a model can incorporate tables from multiple schemas. Schemas do not limit your modeling capabilities. The column views that you create are always located in schema _SYS_BIC , their metadata in schema _SYS_BI . If you run an SAP Application directly on SAP HANA, then the schema will always be SAP. For example, if your productive CRM System is called CRP, the corresponding schema will be SAPCRP. ●

Content

© Copyright. All rights reserved.

41

Unit 2: Architecture of SAP HANA

The Content folder of the catalog is where you store all the HANA-specific modeling objects.

Note: The physical tables are the only storage area for data within SAP HANA. All the information models that will be created in the modeler will result in database views. As such, SAP HANA does not persist redundant data for each model, and does not create materialized aggregates.



Provisioning The Provisioning folder is related to Smart Data Access, a data provisioning approach in which you can combine data from remote sources (Hadoop, SAP ASE, SAP IQ) with data of your SAP HANA physical tables, by exposing them as virtual tables.



Security In the Security folder, the System Administrators define users and roles.

System Administration and Monitoring To administer and monitor one or several SAP HANA systems, you can use the following views: ●

The System Monitor view



The Administration view

The System Monitor View

Figure 37: The System Monitor View

The System Monitor view gives you a summarized view of the system landscape. By default, all the systems that are listed in the Systems view appear in the System Monitor view. You get the most important information about system status, alerts, as well as disk space, memory and CPU usage. You can customize this view by adding or removing columns. To do so, choose the Configure Viewer button. Alternatively, you can right-click in the System Monitor view and choose Configure Table . If you want to filter the list of systems that are shown in the view. right-click in the System Monitor view and choose System Filter .

42

© Copyright. All rights reserved.

Lesson: Working with Interfaces for Administrators and Developers

Administration View

Figure 38: The SAP HANA Administration Console Perspective

The SAP HANA Administration Console is a perspective that is pre-delivered by SAP. This is the main view to administrate SAP HANA systems. In this view, you can do the following tasks: ●

Start and stop a system



Configure a system



Monitor a system



Backup and restore a system



Perform a problem analysis

To open the Administration view, you can: ●

Double-click the system in the System Monitor view



Double-click the system in the Systems view

SAP HANA Modeler Perspective To create Information Models in the SAP HANA Studio, open (or switch to) the SAP HANA Modeler perspective. To do so, choose Window→ Open Perspective→ SAP HANA Modeler. The Quick View is a practical entry point, dedicated to the modeler perspective. From this view, you can create, manage and transport information models (packages, views), define or execute data provisioning and define schema mapping, and so on.

© Copyright. All rights reserved.

43

Unit 2: Architecture of SAP HANA

Note: You can define your favorite actions (for example, Export, Import, and Validate, and display only a custom list of these favorites.

Figure 39: The SAP HANA Modeler Perspective

Quick View When you want to perform an action from the Quick View, you must first select the SAP HANA system on which the action will be executed.

Note: You actually select both a System and a User logged on to the System. If you are logged on to the same SAP HANA system with two (or more) different users, the action will be authorized based on the privileges of the user you have selected. The SAP HANA Studio offers other perspectives for debugging, resource, team synchronizing and more. If you have closed the Quick View and want to reopen it, you can do one of the following actions:

44



Choose Help→ Quick View.



Reset the Modeler perspective.

© Copyright. All rights reserved.

Lesson: Working with Interfaces for Administrators and Developers

Note: The Quick View only displays within the Modeler perspective. Systems View – Modeling Content

Figure 40: The Systems View – Modeling Content

The Content node of the Systems view displays the data from a data modeling perspective. The information views, along with other modeling objects such as analytic privileges or procedures, are organized in packages. Each package is a repository that you can assign to a delivery unit in order to transport the objects it contains. What would you find in a package? X

A Information Views

X

B Analytic Privileges

X

C Procedures

X

D Tables

SAP HANA Development Perspective The SAP HANA Studio includes a development perspective. This is used by application developers. For example, here is where you would create Javascript and HTML that will be used in your applications. There are plenty of tools to support the developer including trace, debug, code prompts, check-in, and check-out.

© Copyright. All rights reserved.

45

Unit 2: Architecture of SAP HANA

Figure 41: The SAP HANA Development Perspective

46

© Copyright. All rights reserved.

Unit 2 Exercise 1 Getting Started with SAP HANA Studio

The purpose of this exercise is to set up and then become familiar with the SAP HANA Studio user interface. You will perform the following tasks: ●

Start SAP HANA Studio



Add an SAP HANA connection to the Systems view



Define SAP HANA Studio preferences



Work with Views and Perspectives

Business Example You are working on a customer project where SAP HANA is installed, and need to get familiar with SAP HANA Studio, in order to connect to the SAP HANA system, browse the database catalog objects as well as the repository. 1. Launch the SAP HANA Studio. If you are prompted to choose a folder to store settings, use the default location and choose Submit. If you are prompted to choose a workspace folder, leave the defaults unchanged and choose OK. If you are asked to create a password hint (in case you forget your password), choose No. 2. From the Welcome page, open the SAP HANA Administration Console perspective. 3. Connect your SAP HANA Studio to the SAP HANA training system using the following information: Field

Value

Host name

wdflbmt7215.wdf.sap.corp

Instance number

00

Description

My SAP HANA Training system

4. Enter your credentials as given in the following table: Field

Value

User

STUDENT## (don't forget to swap ## for your 2 digit number)

Password

Training1

5. Set your SAP HANA Studio preferences using the values in the following table:

© Copyright. All rights reserved.

47

Unit 2: Architecture of SAP HANA

Path and parameter

Value

General > Network Settings > Active Provider

Direct

General > Web Browser > Use External Web Browser

Internet Explorer

6. You are currently working in the SAP HANA Administrator perspective, switch to the SAP HANA Modeler perspective. 7. Switch back to the SAP HANA Administration Console perspective for the next tasks. 8. Explore the Systems view by expanding the nodes. ●

Catalog



Content



Provisioning



Security

Note: In the Catalog node, the System has automatically created a schema for you. The schema name is the same as your user name and is the default schema whenever you work with database objects such as tables. 9. Open the Administration view for your SAP HANA system.

48

© Copyright. All rights reserved.

Unit 2 Solution 1 Getting Started with SAP HANA Studio

The purpose of this exercise is to set up and then become familiar with the SAP HANA Studio user interface. You will perform the following tasks: ●

Start SAP HANA Studio



Add an SAP HANA connection to the Systems view



Define SAP HANA Studio preferences



Work with Views and Perspectives

Business Example You are working on a customer project where SAP HANA is installed, and need to get familiar with SAP HANA Studio, in order to connect to the SAP HANA system, browse the database catalog objects as well as the repository. 1. Launch the SAP HANA Studio. If you are prompted to choose a folder to store settings, use the default location and choose Submit. If you are prompted to choose a workspace folder, leave the defaults unchanged and choose OK. If you are asked to create a password hint (in case you forget your password), choose No. a) Locate and launch SAP HANA Studio with the default settings as described above. 2. From the Welcome page, open the SAP HANA Administration Console perspective. a) Choose Open SAP HANA Administration Console . 3. Connect your SAP HANA Studio to the SAP HANA training system using the following information: Field

Value

Host name

wdflbmt7215.wdf.sap.corp

Instance number

00

Description

My SAP HANA Training system

a) In the Systems view, right-click in the blank area and choose Add System . b) Enter the Host Name and Instance Number provided in the table. c) In the Description field, enter My SAP HANA Training system . d) Choose Next. 4. Enter your credentials as given in the following table:

© Copyright. All rights reserved.

49

Unit 2: Architecture of SAP HANA

Field

Value

User

STUDENT## (don't forget to swap ## for your 2 digit number)

Password

Training1

a) Enter your user name and password as provided in the table. b) Choose Finish. 5. Set your SAP HANA Studio preferences using the values in the following table: Path and parameter

Value

General > Network Settings > Active Provider

Direct

General > Web Browser > Use External Web Browser

Internet Explorer

a) Choose Window→ Preferences and follow the path provided in the table above to set the values. 6. You are currently working in the SAP HANA Administrator perspective, switch to the SAP HANA Modeler perspective. a) Choose Window→ Perspective→ Open Perspective→ Other to display all the available perspectives. b) Choose the SAP HANA Modeler perspective and notice the layout changes slightly to provide features that a modeler uses. 7. Switch back to the SAP HANA Administration Console perspective for the next tasks. a) Using In the perspective switcher buttons located in the upper-right corner of the screen, choose SAP HANA Administration Console. 8. Explore the Systems view by expanding the nodes. ●

Catalog



Content



Provisioning



Security

Note: In the Catalog node, the System has automatically created a schema for you. The schema name is the same as your user name and is the default schema whenever you work with database objects such as tables. a) Click on the arrow to the left of each node to expand the details and explore the tree. 9. Open the Administration view for your SAP HANA system.

50

© Copyright. All rights reserved.

Lesson: Working with Interfaces for Administrators and Developers

a) In the Systems view, select the H00 (STUDENT##) system. b) Click on the hammer and wrench icon in the toolbar at the top of the System view c) Explore the system information.

© Copyright. All rights reserved.

51

Unit 2: Architecture of SAP HANA

SAP HANA Web Development Workbench In addition to SAP HANA Studio, there is the SAP HANA Web Development Workbench. This interface was originally aimed at developers and coders as an alternative to using the heavier SAP HANA Studio. The SAP HANA Web Development Workbench focused on the features needed by application developers. The SAP HANA Web Development Workbench is evolving to become the main interface not just for developers but anyone who needs to access SAP HANA, this includes administrators and modelers. However, it should be noted that there are still some feature gaps between the SAP HANA Web Development Workbench and SAP HANA Studio that will be closed in later versions. So for now, it may mean SAP HANA Studio is needed alongside SAP HANA Web Development Workbench. But the majority of developers will prefer to work with the SAP HANA Web Development Workbench due to its simplicity and portability.

Note: One of the motivational factors for SAP moving towards the SAP HANA Web Development Workbench as the main interface for SAP HANA is because of the importance of cloud computing where 100% of the tools needed are cloud based and available through a browser. SAP HANA Studio is not a browser based tool, it is installed as a local client. This course uses the SAP HANA Studio. SAP HANA Logon Screen

Figure 42: SAP HANA Logon Screen

In order to get started with the SAP Web Development Workbench, open a web browser and enter the following URL: http://:80/sap/hana/xs/ide Substitute the two placeholders with your system details. Enter your user and password and choose LOG ON.

52

© Copyright. All rights reserved.

Lesson: Working with Interfaces for Administrators and Developers

SAP Web Development Workbench

Figure 43: SAP Web-Based Development Workbench

To view the panel to access the SAP HANA repository of existing artifacts such as views and procedures, choose Editor. If you want to work with tables and other database objects, choose Catalog. Modeling with the SAP HANA Web-Based Development Workbench

Figure 44: Modeling with the SAP HANA Web-Based Development Workbench

Note: It is important to note that some features are only available in SAP HANA Studio and not in SAP Web Development Workbench and vice versa. But in each release of SAP HANA the gap closes.

© Copyright. All rights reserved.

53

Unit 2: Architecture of SAP HANA

LESSON SUMMARY You should now be able to:

54



Work with the SAP HANA Studio



Describe the SAP Web Development Workbench

© Copyright. All rights reserved.

Unit 2 Lesson 3 Understanding the Key Architectural Features of the SAP HANA Database

LESSON OVERVIEW This lesson will introduce you to the various aspects of the SAP HANA database. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Understand the key architectural features of the SAP HANA database

Row and Column Stores In this lesson we turn our attention to the heart of SAP HANA; the in-memory database. SAP HANA includes an Atomicity, Consistency, Isolation, Durabilit (ACID) compliant database. This is a requirement of a database that is built to be 100% reliable for mission critical applications by guaranteeing data accuracy and integrity during lots of simultaneous updates to a database where there are many tables. Most traditional enterprise relational databases are row based because this is regarded as the optimal design for a transactional system. But SAP HANA also handles analytics where a column store database is optimal. SAP HANA database is both row based and also column based. Both table storage types are needed in a system that handles both transactional and analytical applications in the same database.

Figure 45: Column and Row Store

The figure, Column and Row Store, shows that the key difference between row and column store is the way the same data is organized. Column store tables are efficient for analytical applications where requests for sets of data are not predictable. Queries from analytical applications that are sent to the database often

© Copyright. All rights reserved.

55

Unit 2: Architecture of SAP HANA

require only a subset of the overall data in the table. Usually only limited columns are required. With column store, only the required columns are loaded to memory so we avoid using up memory with columns that will never be used. Also the data is arranged efficiently with all values of a column appearing one after another. This continuous sequencing of the column values is preferred by the CPU which is able to scan the values efficiently without having to skip over values. A few more positive aspects of column store: with column store, SAP HANA scans columns of data so quickly that additional indexes are usually not required. This helps to reduce the complexity by avoiding the need to constantly create drop and rebuilding indexes. It is easy to alter column store tables without dropping and reloading data. Column store tables are optimal for parallel processing with each core able to work on a different column. The downside to column store is the cost of reconstructing complete records from the individual column store if all columns are required by the application. This is the case when the application is transaction based and so all fields are usually needed for a record update and must all be retrieved. This would be possible with column store but would be slower than if the storage was row based where all the columns are always held together and can be read quickly. Row storage is still needed to support transaction processing where all columns need to be retrieved. Often an application is both transactional and also analytical. In this case you must decide which is the best storage method to use. You cannot have a table that is both row and column storage. It is easy to convert a table from row to column and vice versa, and you do not lose the data when doing this. SAP S/4HANA combines transactional and analytical applications and so utilizes both column and row store tables.

Reducing the Data Footprint The data in the SAP HANA column store tables is automatically compressed in order to reduce the data footprint.

Figure 46: Compression

There are a number of benefits to a reduced data footprint: ●

56

It means we can get more data into CPU cache and therefore reduce main memory access in order to maintain high performance.



It means we can fit entire enterprise databases into memory and avoid disk access.



Operations such as backup and restore are speeded up as we deal with a smaller data size.

© Copyright. All rights reserved.

Lesson: Understanding the Key Architectural Features of the SAP HANA Database

The amount by which data reduction can take place is driven by the shape of the business data. Compression is most impressive when there is a lot of repetition in the data values. For example, a huge sales order table where the customer type A, B or C is stored on each customer order. In this case the customer type would appear a huge number of times in the column. Compression strips out the repetition and stores only each unique value once in a dictionary store. SAP HANA then uses integers to represent the business values in the original store as this takes up far less space and is also very efficient for scanning. SAP HANA links the dictionary entries to the actual table using special reference stores that identify the position of where the original value was and its corresponding business value from the dictionary store. This mechanism is deeply embedded in the SAP HANA database. The processing happens invisibly.

Parallel Processing of Data A key theme of SAP HANA is parallel processing. With the new hardware architecture, especially utilizing the new multi-core processors we can ensure instant responses by spreading out the processing task across the cores.

Figure 47: Parallel Processing

SAP HANA automatically spreads the workload across all cores and ensures all parts of the hardware are contributing to the throughput. SAP HANA is scalable, which means you can easily add more processors as required in order to increase the parallelization and therefore the speed of processing. In order to take advantage of the built-in parallel processing capabilities of SAP HANA you can use column store tables. Column store tables are automatically processed in parallel. Each column can be processed by one core. The more cores you add to the SAP HANA landscape, the more parallelization occurs. For column store, tables you can define partitions on each column. This means that only the required partitions are read to memory. For example, if a query requested only current year data, then all other years in the column would be ignored. Partitions can be created based on known popular business values or by simply allowing SAP HANA to split up large columns in an arbitrary way. Note: Up to and including SAP HANA SPS09 the maximum number of partitions was 1,000 per column table. Since SPS10 this has increased dramatically to 16,000 partitions per column table.

© Copyright. All rights reserved.

57

Unit 2: Architecture of SAP HANA

Parallel processing is a key enabler for real-time processing for any application powered by SAP HANA and by using column store tables with well designed partitioning you can expect excellent performance from the database.

Data temperatures

Figure 48: Data distribution

SAP HANA is often described as an in-memory database. Although this is true, we must also remember that SAP HANA does have a persistent storage layer too. The persistence storage layer is disk based and is a mandatory part of SAP HANA. It is not a separate component. There are two reasons we need the disk layer: 1. To provide an area to unload less important data when memory is full. We call this inactive data. 2. To enable data recovery if the power fails. We will cover reason 2 later when we discuss high availability. For now let’s focus on reason 1. It is possible to fit an entire organization’s data completely in memory if the SAP HANA memory is sized large enough. However, most organizations will size their SAP HANA system with only enough memory to hold the core data and will utilize disk to store the remaining data. This means that there will be competition with the data for memory. When memory is full the data that is used less often is automatically moved to disk to make way for new data. The larger the memory, the less displacement is needed. Remember also that some space is needed in memory as a working space for calculations. Even if it was possible to store an entire organization’s data set completely in memory, it would not make sense. An organization usually values their recent data higher than older data, and often find themselves accessing the recent data more frequently than the older data. Conceptually, data can be classified into temperatures. For data that is accessed frequently, we call this hot data. Data that is accessed less frequently is called warm data. Data that is rarely accessed (often retained only for legal purposes) is called cold data. SAP HANA stores hot data in memory and warm data is stored in the persistent layer and for cold data we can implement other data storage solutions that take the data outside SAP HANA. For now, we will focus on hot and warm data.

58

© Copyright. All rights reserved.

Lesson: Understanding the Key Architectural Features of the SAP HANA Database

But how do we decide what is hot and what is warm data and how does the data move between these layers? Well actually, SAP HANA takes care of that. Quite simply, any data that is accessed by any application always comes from memory. So this means that if the table is sitting in the persistent layer, the moment it is needed, the table is then automatically loaded to memory. Column tables can be partitioned and SAP HANA is smart enough to know only to load the required columns and partitions to memory and leave the unwanted columns and partitions in the persistent layer.

Maintaining Good Read Performance with Frequent Database Updates

Figure 49: Delta Merge

Updating and inserting data into a compressed and sorted column store table is a costly activity. This is because each column has to be uncompressed, the new records are inserted and then recompressed again, and thus the whole table is reorganized each time. For this reason, SAP has separated these tables into a Main Store (read-optimized, sorted columns) and Delta Store (write-optimized, non sorted columns or rows). There is a regular automated database activity that merges the delta stores into the main store. This activity is called Delta Merge. Queries always run against both main and delta storage simultaneously. The main storage is the largest one, but because its data is compressed and sorted, it is also the fastest one. Delta storage is very fast for insert, but much slower for read queries, and therefore kept relatively small by running the delta merge frequently. The delta merge can be triggered based on conditions that you can set. For example, you could define a condition that checks if the delta size is greater than 5% of the main size. If this is true then the delta merge is triggered. Delta merge can also be triggered by an application. For example, SAP BW is able to suggest to SAP HANA that after a large data load, a delta merge would be a good idea. Staying on top of the delta merge is critical to maintaining good performance of SAP HANA and the administrator is responsible for this.

Note: Refer to training course HA200 to learn more about delta merge.

© Copyright. All rights reserved.

59

Unit 2: Architecture of SAP HANA

Multi Tenancy SAP HANA can run multiple, isolated applications within the same system. This is called multitenancy.

Figure 50: Multi Tenancy

With multi-tenancy there is a strong separation of business data and also users who must be kept apart. Each tenant has its own isolated database. Business users would have no idea that they are sharing a system with others running different applications. The system layer is used to manage the system-wide settings and cross-tenant operations such as backups. The benefit of a multi-tenancy platform is that we can host multiple applications on one single SAP HANA infrastructure and share common resources in order to simplify and reduce costs. Multi tenancy is the basis for cost-efficient cloud computing.

60

© Copyright. All rights reserved.

Unit 2 Exercise 2 Working with the SAP HANA Database

Exercise Objectives After completing this exercise, you will be able to: ●

Locate a table in the database



Display the metadata of a table



Identify the number of records in a table



Preview the content of a table

Business Example You are an IT system administrator. You need to be able to explore the SAP HANA database. During this exercise, you will use two tables from the TRAINING schema: ●

MARA — This is the table that contains the product master data in an SAP ERP database



HANA_SEARCH_DATA — This is a table of selected customers and their information 1. Start the SAP HANA Studio and log on to the SAP HANA system. You can skip this step if you have already logged on. For this exercise, you can use either the SAP HANA Administration Console perspective or the SAP HANA Modeler perspective.

2. Locate the table MARA by using a filter on the tables node. 3. Open the definition of table MARA and identify whether the table is row or column store. 4. Identify the key columns of table MARA. 5. Identify the number of records loaded to the table and also the storage used by the main and delta areas. 6. Preview the data of table MARA. Use one of the two following options: 7. Open the definition of table HANA_SEARCH_DATA and identify the tables storage type and indexes. Why is there no delta storage value for this table and why are there no partitions available? There is no delta storage value for this table because this is a row table and delta storage is only relevant for column tables. There are no partitions available because this is a row table and only column tables have partitions.

© Copyright. All rights reserved.

61

Unit 2 Solution 2 Working with the SAP HANA Database

Exercise Objectives After completing this exercise, you will be able to: ●

Locate a table in the database



Display the metadata of a table



Identify the number of records in a table



Preview the content of a table

Business Example You are an IT system administrator. You need to be able to explore the SAP HANA database. During this exercise, you will use two tables from the TRAINING schema: ●

MARA — This is the table that contains the product master data in an SAP ERP database



HANA_SEARCH_DATA — This is a table of selected customers and their information 1. Start the SAP HANA Studio and log on to the SAP HANA system. You can skip this step if you have already logged on. For this exercise, you can use either the SAP HANA Administration Console perspective or the SAP HANA Modeler perspective.

2. Locate the table MARA by using a filter on the tables node. a) In the Systems view, expand the catalog folder to find the TRAINING schema to see the Tables node. b) Right-click the Tables node and choose Filters. c) Enter the filter pattern MA and choose OK. d) Expand the Tables node. The table list is now filtered and displays the table MARA in the filtered list. Notice the icon for the table represents column store as this is a column store table. 3. Open the definition of table MARA and identify whether the table is row or column store. a) Right-click the table MARA and choose Open Definition and take note of the following elements: ●



This screen shows the table structure with all columns, their data types, and length. The type of table is column store. This information is provided in the top-right corner of the screen.

4. Identify the key columns of table MARA.

62

© Copyright. All rights reserved.

Lesson: Understanding the Key Architectural Features of the SAP HANA Database

a) The key fields of the table are marked in the Key column. For table MARA, the key columns are MANDT (client) and MATNR (material number). 5. Identify the number of records loaded to the table and also the storage used by the main and delta areas. a) Choose the Runtime Information tab to see the number of records. b) Look for the Memory Consumption figures on the left side of the screen. 6. Preview the data of table MARA. Use one of the two following options: a) Right click on the table name and choose Open Content to display the table content. b) Right-click on the table name and choose Open Data Preview to explore the table contents as raw data (flat table view), analyze distinct values, or build a quick analysis using a chart or a table. 7. Open the definition of table HANA_SEARCH_DATA and identify the tables storage type and indexes. Why is there no delta storage value for this table and why are there no partitions available? a) Right-click the Tables node and choose Filters. b) Enter the filter pattern HANA and choose OK. c) Expand the Tables node to view the filtered table list. d) Right-click table HANA_SEARCH_DATA and choose Open Definition. e) Identify the storage type of the HANA_SEARCH_DATA table. f) Select the Indexes tab to display the list of indexes created on the table. g) Verify that the table is a row-store table and that no indexes are defined. There is no delta storage value for this table because this is a row table and delta storage is only relevant for column tables. There are no partitions available because this is a row table and only column tables have partitions.

© Copyright. All rights reserved.

63

Unit 2: Architecture of SAP HANA

LESSON SUMMARY You should now be able to: ●

64

Understand the key architectural features of the SAP HANA database

© Copyright. All rights reserved.

Unit 2 Lesson 4 Describing the Main Characteristics of High Availability

LESSON OVERVIEW In this lesson we will explain how SAP HANA keeps running during power outages. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe the main characteristics of high availability

Keeping SAP HANA Running SAP HANA utilizes memory for storage, once the power is gone all of the data in memory is lost. How does SAP HANA ensure we do not lose data when the power goes?

Figure 51: High Availability — Power Interruption

Every few minutes SAP HANA automatically takes a snapshot of the entire memory and stores this on the disk layer. This is called a savepoint. The frequency of savepoints is configurable and really depends on how frequently the database changes due to updates, inserts, and deletes. When power is restored SAP HANA automatically reloads memory from the last savepoint. But savepoints take place every few minutes, what happens if the power goes off after we have added some new records and we did not yet reach the next savepoint? Do we lose this data?

© Copyright. All rights reserved.

65

Unit 2: Architecture of SAP HANA

No, we never lose any data. Between savepoints, every committed transaction is also saved to a log area. This log area is often based on flash memory (SSD) to ensure ultra fast access. So we capture every update to the database. When power is restored, SAP HANA automatically reads the last savepoint and then also reapplies the committed transactions from the log since the savepoint. This ensures the system is exactly where it was when we lost the power. This all happens automatically in the background. Auto Recovery When a Server Fails

Figure 52: High Availability — Server Down

SAP HANA can be installed across multiple nodes. We call this scale-out. Scale out is often used to spread the processing load across multiple servers in order to improve performance. Scale-out is also used to provide redundant servers that are on stand-by in case active servers fail. If a server fails, SAP HANA can automatically swap out to a standby server in order to ensure downtime is minimized or even eliminated. A standby server can be on warm standby which means that it is in a near-ready state and does not need to be started from cold. Standby servers can also be on hot standby. In this case, the standby server continuously replays the database log so that the databases are always in sync and ready to go. In this case there is almost no downtime when switching to the standby server. This approach would be necessary for a mission critical operation where down-time would be harmful to the business. SAP HANA simply uses the savepoints and logs, described earlier, to bring the standby server up to date with the very latest data. For mission critical applications, and where SLAs are implemented, we can ensure customers’ systems are always running by implementing these ‘fail-over’ solutions.

Note: For much more information on all high-availability please refer to course HA200.

66

© Copyright. All rights reserved.

Lesson: Describing the Main Characteristics of High Availability

LESSON SUMMARY You should now be able to: ●

Describe the main characteristics of high availability

© Copyright. All rights reserved.

67

Unit 2 Lesson 5 Describing the Main Security Features of SAP HANA

LESSON OVERVIEW This lesson covers the key security features of SAP HANA. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe the main security features of SAP HANA

Keeping SAP HANA Secure

Figure 53: Security Features of SAP HANA

Authentication — or logging on, to use a simpler term. No user or application is allowed to consume content from SAP HANA without first providing validated credentials. SAP HANA can handle many forms of authentication including user and password entry or various single sign-on techniques using industry standards (Kerberos, SAML). Users / Roles — define roles and users and then assign them to each other to create an easy to maintain authorization concept that is reusable. There are many role templates provided that align to common jobs in SAP HANA. Authorization — for each role or user, grant and revoke access to business data, database objects, system actions, development objects, projects and more. Encryption — encryption services to ensure your data is stored securely and also allow you to set up encryption for secure communication between SAP HANA components.

68

© Copyright. All rights reserved.

Lesson: Describing the Main Security Features of SAP HANA

Audit logging — SAP HANA keeps track of all accesses to any resources, data and functions. The logged data can be stored outside of SAP HANA to ensure even SAP HANA administrators cannot access and modify this data. Administration of SAP HANA Security

Figure 54: Administration of SAP HANA Security

Users and roles are managed from the SAP HANA Studio. Open any perspective where the Systems view is available and look for the node Security. From this node, open the Security Console to view the system settings and policies. Locate the user or role node and double click to manage authorizations.

Note: For detailed information on how to set up security in SAP HANA please refer to the training course HA240.

LESSON SUMMARY You should now be able to: ●

Describe the main security features of SAP HANA

© Copyright. All rights reserved.

69

Unit 2 Learning Assessment

1. What is the SAP HANA Application Function Library (AFL)? Choose the correct answers. X

A Repository of ready made business functions

X

B Repository of connections that can be used by business functions

X

C Repository of ready made predictive algorithms

X

D Repository of ready to run applications that are powered by SAP HANA

2. Where is SDI used? Choose the correct answers. X

A For data cleansing

X

B For data transformation

X

C For data streaming

X

D For data loading

3. How many tiers do you usually find in an SAP HANA application? Choose the correct answers. X

A 1

X

B 2

X

C 3

4. What is XS? Choose the correct answer. X

A A native, lightweight application server

X

B An optional engine to handle excessive data loads

X

C A data cleansing engine

X

D A user interface

© Copyright. All rights reserved.

71

Unit 2: Learning Assessment

5. When creating a system connection in SAP HANA Studio, which of these is essential information? Choose the correct answers. X

A A valid user and password

X

B Host

X

C URL

X

D Instance

6. You can connect to different SAP HANA systems from within SAP HANA Studio but the same user id must be used in each connection Determine whether this statement is true or false. X

True

X

False

7. What is a perspective? Choose the correct answer. X

A A group of users in a specific SAP HANA role

X

B A collection of views in the SAP HANA Studio that are organized by role

X

C A list of allowed objects in SAP HANA that can be changed by a particular role

X

D A set of security permissions that aligns to a user’s view of the data

8. What would you find in a package? Choose the correct answers. X

A Information Views

X

B Analytic Privileges

X

C Procedures

X

D Tables

9. SAP Web Development Workbench is a Windows application Determine whether this statement is true or false.

72

X

True

X

False

© Copyright. All rights reserved.

Unit 2: Learning Assessment

10. Who is the primary target audience for SAP Web Development Workbench? Choose the correct answer. X

A Application developers

X

B Administrators

X

C Installation engineers

X

D Project managers

11. Which information views does SAP Web Development Workbench support? Choose the correct answers. X

A Analytical

X

B Calculation

X

C Attribute

12. What are advantages of column store tables? Choose the correct answers. X

A Data footprint is automatically reduced through compression

X

B Only the column required are actually loaded to memory

X

C Columns can be partitioned

X

D Aggregates can be created

13. Row store tables are more efficient when there is lots of repeating data values in columns Determine whether this statement is true or false. X

True

X

False

14. To maintain good read performance in a constantly changing database, which two components are used? Choose the correct answers. X

A Column store

X

B Memory store

X

C Delta storage

X

D Main storage

© Copyright. All rights reserved.

73

Unit 2: Learning Assessment

15. Why do we still need a persistent layer? Choose the correct answers. X

A To store data that has been unloaded from memory.

X

B To hold the delta store for newly arrived records.

X

C To enable full database recovery if we have a power failure.

X

D To store data that is frequently used.

16. What are the two storage components used to restore the database in case of power failure? Choose the correct answers. X

A Log area

X

B Data volume

X

C Memory

X

D Delta store

17. What is scale out? Choose the correct answers. X

A Use of standby servers used in the event of hardware failure.

X

B Use of remote servers to store archived data that is rarely used.

X

C Use of commodity servers that are used in high volume steaming applications.

X

D Use of multiple servers to spread processing and improve performance.

18. SAP HANA security services include which of the following? Choose the correct answers.

74

X

A Audit logging

X

B Authentication

X

C Encryption

X

D Antivirus Protection

X

E Authorization

© Copyright. All rights reserved.

Unit 2 Learning Assessment - Answers

1. What is the SAP HANA Application Function Library (AFL)? Choose the correct answers. X

A Repository of ready made business functions

X

B Repository of connections that can be used by business functions

X

C Repository of ready made predictive algorithms

X

D Repository of ready to run applications that are powered by SAP HANA

2. Where is SDI used? Choose the correct answers. X

A For data cleansing

X

B For data transformation

X

C For data streaming

X

D For data loading

3. How many tiers do you usually find in an SAP HANA application? Choose the correct answers. X

A 1

X

B 2

X

C 3

© Copyright. All rights reserved.

75

Unit 2: Learning Assessment - Answers

4. What is XS? Choose the correct answer. X

A A native, lightweight application server

X

B An optional engine to handle excessive data loads

X

C A data cleansing engine

X

D A user interface

5. When creating a system connection in SAP HANA Studio, which of these is essential information? Choose the correct answers. X

A A valid user and password

X

B Host

X

C URL

X

D Instance

6. You can connect to different SAP HANA systems from within SAP HANA Studio but the same user id must be used in each connection Determine whether this statement is true or false. X

True

X

False

7. What is a perspective? Choose the correct answer.

76

X

A A group of users in a specific SAP HANA role

X

B A collection of views in the SAP HANA Studio that are organized by role

X

C A list of allowed objects in SAP HANA that can be changed by a particular role

X

D A set of security permissions that aligns to a user’s view of the data

© Copyright. All rights reserved.

Unit 2: Learning Assessment - Answers

8. What would you find in a package? Choose the correct answers. X

A Information Views

X

B Analytic Privileges

X

C Procedures

X

D Tables

9. SAP Web Development Workbench is a Windows application Determine whether this statement is true or false. X

True

X

False

10. Who is the primary target audience for SAP Web Development Workbench? Choose the correct answer. X

A Application developers

X

B Administrators

X

C Installation engineers

X

D Project managers

11. Which information views does SAP Web Development Workbench support? Choose the correct answers. X

A Analytical

X

B Calculation

X

C Attribute

© Copyright. All rights reserved.

77

Unit 2: Learning Assessment - Answers

12. What are advantages of column store tables? Choose the correct answers. X

A Data footprint is automatically reduced through compression

X

B Only the column required are actually loaded to memory

X

C Columns can be partitioned

X

D Aggregates can be created

13. Row store tables are more efficient when there is lots of repeating data values in columns Determine whether this statement is true or false. X

True

X

False

14. To maintain good read performance in a constantly changing database, which two components are used? Choose the correct answers. X

A Column store

X

B Memory store

X

C Delta storage

X

D Main storage

15. Why do we still need a persistent layer? Choose the correct answers.

78

X

A To store data that has been unloaded from memory.

X

B To hold the delta store for newly arrived records.

X

C To enable full database recovery if we have a power failure.

X

D To store data that is frequently used.

© Copyright. All rights reserved.

Unit 2: Learning Assessment - Answers

16. What are the two storage components used to restore the database in case of power failure? Choose the correct answers. X

A Log area

X

B Data volume

X

C Memory

X

D Delta store

17. What is scale out? Choose the correct answers. X

A Use of standby servers used in the event of hardware failure.

X

B Use of remote servers to store archived data that is rarely used.

X

C Use of commodity servers that are used in high volume steaming applications.

X

D Use of multiple servers to spread processing and improve performance.

18. SAP HANA security services include which of the following? Choose the correct answers. X

A Audit logging

X

B Authentication

X

C Encryption

X

D Antivirus Protection

X

E Authorization

© Copyright. All rights reserved.

79

UNIT 3

Modeling and Data Processing with SAP HANA

Lesson 1 Creating Information Models

82

Lesson 2 Describing SAP HANA Live and Core Data Services

86

Lesson 3 Defining SAP HANA Spatial Processing

92

Lesson 4 Defining Text Search and Analysis

95

Lesson 5 Explaining Predictive Modeling

99

Lesson 6 Describing Graph Processing

102

UNIT OBJECTIVES ●

Understand SAP HANA modeling



Describe SAP HANA Live



Describe Core Data Services



Define SPA HANA spatial processing



Define text search and analysis



Describe predictive analysis in SAP HANA



Describe graph processing with SAP HANA

© Copyright. All rights reserved.

81

Unit 3 Lesson 1 Creating Information Models

LESSON OVERVIEW In this lesson we will cover modeling with SAP HANA. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Understand SAP HANA modeling

SAP HANA Modeling This lesson explains why modeling in SAP HANA is an important activity that ensures you are using the SAP HANA platform to its full potential.

Figure 55: Modeling in the Application

The role of the database in a traditional application is to provide data. The application sends down Select statements to individual tables in the database, and often, many tables are involved. The raw data is sent from the database to the application. The application then begins to process the data by combining it, aggregating it, and performing calculations. It may be possible for the database to take on some of these basic tasks but largely, the database is asked to do nothing more complex than supply raw data to the application, which does all the hard work. Therefore, we can find ourselves moving a lot of raw data between the database and the application. We move data to the processing layer, making the application code complex. It has to deal with the data processing tasks as well as manage all of the process flow control, business logic, User Interface (UI) operations, integrating data from multiple sources, and so on.

82

© Copyright. All rights reserved.

Lesson: Creating Information Models

Modeling in the Database

Figure 56: Modeling in the Database

With SAP HANA, we can build a modeling layer on top of the database tables, to provide data to the application in a ready-to-go, processed form. With SAP HANA, we build Information Views that combine data from multiple tables and apply filters, conditions, calculations, and aggregations. The Information Views are developed in SAP HANA using easy to use modeling tools, and these Information Views are stored in SAP HANA beside the database tables in the database catalog. Therefore, instead of the application processing the raw data, the application calls the required Information View and the processing is pushed down to SAP HANA. This is efficient in the following ways: ●







The application code is simplified because it does not have to deal with a large number of data processing tasks. These tasks are pushed down to SAP HANA. The processing on the data is carried out where the data resides, so we do not have to move raw data from the database to the application, we only move the results. The data processing is carried out in-memory, so very fast response times can be expected. The Information Views can be reused in multiple applications.

© Copyright. All rights reserved.

83

Unit 3: Modeling and Data Processing with SAP HANA

Reuse of Models

Figure 57: Reuse of Models

In traditional applications, there is a high degree of redundancy in the application code. Developers find themselves continually creating the same code to process data. When dealing with highly normalized database models, such as those used with SAP Business Suite, there can be many individual tables that need to be called and combined with joins. These joins can often be pushed down to most databases. But SAP HANA goes beyond helping with just the table joins, SAP HANA can take on the work that was done by the application. SAP HANA takes care of complex calculations and data flow logic including executing aggregations and disaggregation. Therefore, you can create an SAP HANA view once and then reuse it. SAP HANA views can contain dynamic placeholders. This means the applications can pass variables down to the view, for example, a response to a filter value from a business user. Many of the views can also call procedures that have input parameters. Information Views can consume other Information Views. This encourages a high degree of modularization and of reuse.

84

© Copyright. All rights reserved.

Lesson: Creating Information Models

Advanced Data Processing Capabilities

Figure 58: Modeling in the Database

SAP HANA has built in advanced data processing capabilities. These include textual, spatial, and predictive functions. Information Views can easily call these native SAP HANA functions and so applications can leave all the complex processing to SAP HANA. LESSON SUMMARY You should now be able to: ●

Understand SAP HANA modeling

© Copyright. All rights reserved.

85

Unit 3 Lesson 2 Describing SAP HANA Live and Core Data Services

LESSON OVERVIEW In this lesson we will describe the two types of SAP HANA virtual data models delivered by SAP. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe SAP HANA Live



Describe Core Data Services

SAP HANA Live SAP HANA Live is a comprehensive set of predefined SAP HANA information views that expose transactional tables from SAP Business Suite applications, such as SAP ERP, SAP CRM powered by SAP HANA, SAP SCM, and so on.

Figure 59: SAP HANA Live Architecture

Due to the high degree of normalization of the database schemas found in SAP Business Suite applications, tables can appear complex, fragmented, and are often difficult to consume without a thorough understanding of each schema. SAP HANA Live provides ready to use business views of the source tables so that report developers and application builders can easily consume business information in real time without being concerned about the

86

© Copyright. All rights reserved.

Lesson: Describing SAP HANA Live and Core Data Services

underlying tables. The information views are created and maintained by SAP but can be easily modified by customers using standard SAP HANA modeling tools. The key use case for SAP HANA Live is real time operational analytics on SAP Business Suite. SAP HANA Live is a read only virtual data model, so it is of no use for applications that need to write data back to the database. SAP HANA Live can be immediately consumed by SAP Business Objects reporting tools and, in fact, any clients that are able to consume standard SAP information views. Key Aspects of SAP HANA Live

Figure 60: Key Aspects of SAP HANA Live

SAP HANA Live models contain all the necessary joins, filters, aggregations, and transformations to turn the data in the raw Suite tables into meaningful information. They are compiled into column views that are technically no different from the column views created from custom information views. SAP HANA Live views do not aggregate data, they expose the data at the line level. The reporting tools however are able to aggregate the data as required. They can be consumed by any SAP Business Objects reporting tool or any client that is able to consume a standard SAP HANA information view. Most SAP HANA Live tools are integrated into SAP HANA studio. However, some SAP HANA Live tools are standalone. SAP HANA Live has its own release cycle, so check the versions available and evaluate which version will work with your SAP Business Suite and SAP HANA solution combination. SAP HANA Live Deployment Scenarios A key decision that customers must make is to decide whether to implement SAP HANA Live as an integrated scenario or as a side-by-side deployment.

© Copyright. All rights reserved.

87

Unit 3: Modeling and Data Processing with SAP HANA

Side-by-side deployment requires the implementation of a data loading tool to move data from the tables in the source Suite application to SAP HANA. SAP Landscape Transformation Replication Server (SLT) is recommended, but other data provisioning tools can also be used. The key objective is to ensure that operational tables are replicated to SAP HANA. One of the most powerful tools used to explore SAP HANA Live models is the SAP HANA Live Browser. The SAP HANA Live Browser is able to generate a list of tables required to support any SAP HANA Live model. One of the major benefits of using SLT for table replication is that it can consume the list of tables produced by SAP HANA Live Browser. This makes setting up replication much easier. The alternative is to enter all tables manually. Note that with a side car deployment, the data exposed by the SAP HANA Live view is only as up-to-date as the last replication of data from the source tables. So, if you set your replication to 10 minute intervals you really do not have a ‘live’ view of your source data. Ideally, all operational data should be replicated in real-time, hence the name, SAP HANA Live. With the integrated deployment scenario, SAP HANA Live is installed inside SAP HANA that is powering the Business Suite application. This means that the tables used by the Business Suite applications are also now shared by the SAP HANA Live views. No data movement takes place, there is zero redundancy and this means that the SAP HANA Live views always reflect real-time information. SAP HANA Live views supplied by SAP are technically no different to any other views in SAP HANA, whether created by SAP, partners, or customers. As with any SAP HANA view, all SAP BI reporting tools are able to consume SAP HANA Live views. SAP HANA Live views frequently contain variables and these are consumed by each SAP BI reporting tool. This means you are able to provide pop-up filters to the users to make personal data selections.

Note: SAP HANA Live is covered in detail in the course HA300.

Core Data Services Core Data Services (CDS) is a language used to define the data definition and the consumption model. As well as the technical definition of the data model and consumption model, CDS allows us to fully describe the business semantics in the models so that the application code does not have to take this on. For example, we can describe the correct way to aggregate a measure, or we can include the business user text labels for attributes so they are ready for consumption in different contexts, such as sales, purchasing, and so on. There are two types of CDS:

88



SAP HANA CDS



ABAP CDS

© Copyright. All rights reserved.

Lesson: Describing SAP HANA Live and Core Data Services

Figure 61: HANA CDS

SAP HANA CDS is a component of SAP HANA and it sits on top of the SAP HANA database. SAP HANA CDS is built using a programming language, very similar to SQL stored in CDS documents, The CDS documents are maintained in the SAP HANA Studio or Web IDE editors and are physically stored in the repository packages of SAP HANA. The overall aim of SAP HANA CDS is the same as SAP HANA Live, that is to provide an easy to consume data model on top of complex table schemas. SAP HANA Live has a single use case, which is to expose real time operational data from SAP Business Suite tables in an easy to consume manner to support analytics. CDS is also able to achieve this, but CDS is far more versatile and does way more than SAP HANA Live. With CDS we not only expose tables for analytic purposes, but we can also use CDS in many other use cases such as search applications and planning applications. SAP HANA Live defines only the views on top of the database tables, whereas CDS can actually be used to define the tables too. Another key difference between HANA Live and CDS is the method used to develop these. SAP HANA Live is created using the graphical SAP HANA modeling tools. But CDS is created using a scripting language, very similar to SQL. CDS can be complex, not only to read, but also to construct, compared to the simpler graphical environment used by SAP HANA Live. So both approaches can sit side by side, but you will find few modelers using CDS and few application developers using the graphical approach adopted by SAP HANA Live. So while it is true HANA Live could have been created using CDS, SAP chose to use the graphical modeling tools so that modelers would find it easy to understand, extend, and integrate the models. CDS allows the developer to define the data model at the same level as the application. This means that the developer does not need to go to the database to create tables or views. They use CDS to describe the database objects they need using source documents. Then, they activate the CDS document so database objects are then created. Because the database objects are described using source code, the source code can be stored alongside the application code and transported as one. If the developer were to create the database objects and models outside CDS, they would have to manage the transports separately from the application code, which can get pretty messy and introduces additional risk.

© Copyright. All rights reserved.

89

Unit 3: Modeling and Data Processing with SAP HANA

Figure 62: ABAP CDS

ABAP CDS is identical to SAP HANA CDS at the conceptual level. But the technical implementation is a little different. ABAP CDS is part of the ABAP layer and is used to define the data model used by ABAP applications. You maintain ABAP CDS inside an ABAP project in SAP HANA alongside the ABAP code. As the name suggests, ABAP CDS is only relevant for ABAP applications and is part of the NetWeaver AS. Unlike SAP HANA CDS, ABAP CDS can run on any database, not just SAP HANA. This means that once you create your data model, you can de-couple it from the database and move it to another one. Therefore, CDS allows us to define the data model and consumption model as a layer between the database and the application logic. This provides great flexibility, no more locking in data modeling logic in the application, and no more locking the data modeling logic in the database. SAP S/4HANA Embedded Analytics is based on ABAP CDS. SAP have built a complete virtual data model using only ABAP CDS that exposes the operational tables from S/4HANA that are used in Embedded Analytics and can be used in custom applications. Both SAP HANA CDS and ABAP CDS are maintained using the same type of editors.

90

© Copyright. All rights reserved.

Lesson: Describing SAP HANA Live and Core Data Services

Figure 63: CDS Editors

Note: With SPS12 we have introduced a new graphical editor that is available only in the Web IDE, not the HANA Studio.

LESSON SUMMARY You should now be able to: ●

Describe SAP HANA Live



Describe Core Data Services

© Copyright. All rights reserved.

91

Unit 3 Lesson 3 Defining SAP HANA Spatial Processing

LESSON OVERVIEW In this lesson we will cover spatial processing with SAP HANA. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Define SPA HANA spatial processing

Opportunities for New Applications By combining business data with spatial data you can identify new opportunities and root causes by developing spatially-enabled business applications on the SAP HANA platform.

Figure 64: The Missed Opportunities with Information Silos

Many organizations already rely on spatial data processing and use specialist applications alongside, but separately from their business process applications. For example, a gas storage tank is leaking and an emergency repair order is raised in the SAP ERP system by a coordinator. Next, the coordinator uses a separate geo-based application and manually enters the asset number of the tank. The tank shows up on a map, the coordinator then uses another application to look up the nearest engineer who is then dispatched. It would be more efficient if, at the time of generating the repair order, the ERP application was also able to locate the tank, identify and dispatch the nearest qualified engineer who has enough working hours left to complete the repair, and provide useful geographic information to the engineer to describe how to best reach the tank. And maybe the application could also

92

© Copyright. All rights reserved.

Lesson: Defining SAP HANA Spatial Processing

provide information of other equipment in the close vicinity that is due an inspection soon, to save having to make separate visits. This would be possible if the core business processes were integrated with spatial data and analysis. There are many applications that could be dramatically enhanced with the integration of spatial data.

Note: Be careful to use the correct term spatial and not geographic or geo. Spatial processing in SAP HANA is not limited to just geographical scenarios, but can handle anything to do with the three dimensions of space.

SAP HANA Spatial Processing SAP HANA includes a multi-layered spatial engine and supports spatial columns, spatial access methods, and spatial reference systems. Spatial data is data that describes the position, shape, and orientation of objects in a defined space. Spatial data is represented as geometries in the form of points, line strings, and polygons. For example, a map of a state, representing the union of polygons representing zip code regions.

Figure 65: SAP HANA — a Spatial Enabled Database

SAP HANA provides storage and data management features for spatial data, allowing you to store information such as geographic locations, routing information, and shape data. These information pieces are stored as points and various forms of polygons and lines in columns defined with a corresponding spatial data type (such as ST_Point and ST_Polygon). You can then use methods and constructors to access and manipulate the spatial data.

© Copyright. All rights reserved.

93

Unit 3: Modeling and Data Processing with SAP HANA

Calculation View

Figure 66: Calculation View - Spatial Join Operations

Calculation Views now support spatial operations like calculating the distance between geometries and determining the union or intersection of multiple objects. These calculations are performed using predicates such as intersects, contains, and crosses.

Note: Spatial processing is covered in more detail in course HA300.

LESSON SUMMARY You should now be able to: ●

94

Define SPA HANA spatial processing

© Copyright. All rights reserved.

Unit 3 Lesson 4 Defining Text Search and Analysis

LESSON OVERVIEW In this lesson we will cover text processing with SAP HANA. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Define text search and analysis

Full Text Search and Text Analysis Overview A typical challenge in today's business world is to search for information among huge amounts of data, constantly collected in structured and unstructured form in different areas in or outside your company. You may need then to extract meaningful information out of your data, to be able to analyze it properly.

Figure 67: Text Search, Text Analysis, and Analytics

You may need to perform fault-tolerant searches. For example, when looking for duplicate master data where mistyped names are common, or you may need to perform linguistic searches. For example, you search for the string computed and you would like to see also compute, computing, and computes in your search results. You may also have additional search requirements, like ranking your search results or search one string at once over all the fields of a table. SAP HANA offers native search capabilities to support these and other business needs with the Full Text Search.

© Copyright. All rights reserved.

95

Unit 3: Modeling and Data Processing with SAP HANA

SAP HANA Text Search

Figure 68: SAP HANA Text Search

Among the search capabilities in SAP HANA, the Fuzzy Search offers the possibility to search for approximate matches to a given string. For example you could search for the string Walldorf and find all exact and approximate (to a degree that you can specify in your search) matches, like Walldorf, Wadlorf, Valldorf, and Wahldorff. In general, a Fuzzy Search will look for all strings matching the given one exactly or differing by missing, added, or mistyped characters. The behavior is similar to what you experience when you search for a Web page on a search engine: you do not want to see only exact matches of your search string.

96

© Copyright. All rights reserved.

Lesson: Defining Text Search and Analysis

SAP HANA Text Analysis

Figure 69: SAP HANA Text Analysis

Text Analysis allows the extraction of structured information from unstructured information. For example, it allows linguistic markup, like for example identifying the part of a speech (verbs, nouns, adjectives, and so on). It also allows you to identify entities (locations, persons, and dates) in an unstructured text. The results of a Text Analysis are stored in a table and can therefore be consumed through all supported SAP HANA scenarios, for example, in information models, in R language scripts, using the Predictive Analytic Library functions, or using the Suite on HANA Information Access toolkit for HTML5 by building a search UI.

© Copyright. All rights reserved.

97

Unit 3: Modeling and Data Processing with SAP HANA

Text Search and Analysis Use Cases / Scenarios

Figure 70: Text Search and Analysis Use Cases / Scenarios

LESSON SUMMARY You should now be able to: ●

98

Define text search and analysis

© Copyright. All rights reserved.

Unit 3 Lesson 5 Explaining Predictive Modeling

LESSON OVERVIEW In this lesson we will cover predictive modeling with SAP HANA. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe predictive analysis in SAP HANA

What is predictive analysis? Predictive Analysis is a new breed of advanced analytical applications that provide insight by processing large amounts of data, historical and current, using powerful algorithms to generate probable outcomes. Traditionally, predictive analysis was out of reach of most organisations due to many reason including: ●

Lack of quality data



Not enough powerful processing resources



Algorithms that were too generic and produced weak results



Lack of skills in developing predictive models and understanding the results

SAP HANA provides a library of advanced built in algorithms and powerful in-memory processing capabilities and the ability to easily reach and consume Big Data. Getting started with SAP HANA predictive analysis is simple. There are many use cases for predictive analysis. Here are just a few:

© Copyright. All rights reserved.

99

Unit 3: Modeling and Data Processing with SAP HANA

Figure 71: Predictive Analysis Examples

Predictive Analysis Algorithms SAP HANA has a large library of built in algorithms ready to use. But it is also possible to import more algorithms from the public R library and also to develop your own custom algorithms in the R language.

Note: R is a statistical scripting language heavily used in academic and scientific institutions. It is becoming more widely used, especially in the commercial sector and data scientists are often fluent in this language.

100

© Copyright. All rights reserved.

Lesson: Explaining Predictive Modeling

Figure 72: Predictive Analysis Algorithms

The list of built in algorithms is growing all the time. There are algorithms for all type of analysis and they can be grouped into families. For example:. ●

Associations — when this happens, what else happens?



Classification — people like this, usually do this



Cluster — these customers exhibit similar buying behavour



Regression — customers with income x and children y usually spend z







Time series — in the last few years sales are falling but at this time of year we still expect to sell x amount Outlier detection — these sports fans are not behaving like the rest of their group Weighted scoring — vendors who delivery late get a big penalty and a lesser penalty for wrong pricing

Note: Predictive Analysis is a detailed subject. This topic is covered in more detail in course HA300and also PAII10.

LESSON SUMMARY You should now be able to: ●

Describe predictive analysis in SAP HANA

© Copyright. All rights reserved.

101

Unit 3 Lesson 6 Describing Graph Processing

LESSON OVERVIEW This lesson introduces graph processing with SAP HANA and how it plays a key role in data modeling. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe graph processing with SAP HANA

Graph Modeling Graphs are used to model data when it is best represented using a network. For example, logistics and transportation, utility networks, and social networks. The basic idea behind graph modeling is that it allows a modeler to easily define a series of entities (nodes) and link them in a network that represents how they relate to each other. Graph models can indicate flow direction between entities so that additional meaning can be added to the network and traces can be made. Imagine a complex supply chain mapped using a graph, where all manufacturers, suppliers, distributors, customers, consumers are all represented with information stored along the connections. But why would you want to define such models? The benefit is that it is easy to develop applications that can traverse huge graphs at speed so you can ask questions such as: How many hours has the product traveled between two specified points in the network? Where are all the possible points of origin of this product? Describe the entire journey of a product by listing all of the stop off points. Graph processing allows us to discover hidden patterns and relationships in our data and all in real time.

102

© Copyright. All rights reserved.

Lesson: Describing Graph Processing

Figure 73: Example Graph Model

The example in the figure, Example Graph Model, is one that most people can relate to, but there are many other interesting examples such as: Medical — create a network of patients, conditions, treatments, and outcomes for re-use in diagnosis and planning treatments of other patients. Social network — using popular social media portals, find your customers and their friends, friends of friends, and likes or dislikes to create marketing opportunities. Although it is possible to use standard SQL data definitions and query syntax to create and process a similar model, it would be extremely complex both in the definition of the model and also the SQL needed for the querying of the graph, plus processing times could be challenging. SAP HANA Graph provides tools for graph definition and language for graph processing in order to ensure that model development is more natural and simplified and the processing is flexible, and of course optimized for in-memory processing.

Graph Modeling with SAP HANA The key objects in a graph model are the vertices and edges. Vertices are stored in tables and represent the members of the graph — these are the nodes. The edges are also stored in tables and describe the lines between the members. Along each line we can store connection information such as distance, preference, strength, and so on. To get started with SAP HANA Graph you first need to create and fill the vertices and edge tables with data. You then create a Graph Workspace that refers to the vertices and edge tables. The Graph Workspace simply creates the metadata that defines the graph model and how the vertices and edge tables relate. No actual business data is stored in a Graph Workspace. The Graph Viewer is a native SAP HANA application that provides an interface to interact with and visualize graph workspaces in SAP HANA. SAP HANA Graph Viewer is an additional tool for SAP HANA Graph that can be downloaded from the SAP Software Download Center.

© Copyright. All rights reserved.

103

Unit 3: Modeling and Data Processing with SAP HANA

Figure 74: SAP HANA Graph Viewer

SAP HANA Graph provides a native processing language for graph query and manipulation called WIPE (weakly structured information processing and exploration). It is a declarative language very similar to SQL and contains special keywords to allow easy graph query questions to be formulated such as, how far?, how deep?, what’s the source?, where is the end point? Where is the strongest connection?, and what is the shortest path? SAP HANA Graph utilizes a dedicated graph engine that works with the other data processing engines in SAP HANA. SAP HANA Graph processing can be combined with all other types of SAP HANA data processing such as textual, spatial, and predictive so that sophisticated and innovative applications can be developed on any data types. LESSON SUMMARY You should now be able to: ●

104

Describe graph processing with SAP HANA

© Copyright. All rights reserved.

Unit 3 Learning Assessment

1. Why do we model in SAP HANA?

2. Which SAP applications does SAP HANA Live support? Choose the correct answers. X

A SAP S/4HANA

X

B SAP ERP

X

C SAP Business One

X

D SAP CRM

3. The virtual data model for SAP S/4HANA is based on which of these? Choose the correct answers. X

A ABAP CDS

X

B SAP HANA Live

X

C ABAP

X

D SAP HANA CDS

4. How would you most likely represent the location of an ATM in a visual application that uses SAP HANA spatial processing? Choose the correct answer. X

A Multi-polygon

X

B Polygon

X

C Line

X

D Point

© Copyright. All rights reserved.

105

Unit 3: Learning Assessment

5. With fuzzy search, when I enter ‘, what does SAP HANA return? Choose the correct answer. X

A Words that are closely matched in spelling

X

B Words that are closely matched in meaning

6. Which open source language do you use to create custom predictive algorithms? Choose the correct answer.

106

X

A R

X

B L

X

C C++

X

D ABAP

© Copyright. All rights reserved.

Unit 3 Learning Assessment - Answers

1. Why do we model in SAP HANA? To  develop  consumption  ready  views  of  business  data  and  to  push  the  data  intensive processing tasks to SAP HANA 2. Which SAP applications does SAP HANA Live support? Choose the correct answers. X

A SAP S/4HANA

X

B SAP ERP

X

C SAP Business One

X

D SAP CRM

3. The virtual data model for SAP S/4HANA is based on which of these? Choose the correct answers. X

A ABAP CDS

X

B SAP HANA Live

X

C ABAP

X

D SAP HANA CDS

4. How would you most likely represent the location of an ATM in a visual application that uses SAP HANA spatial processing? Choose the correct answer. X

A Multi-polygon

X

B Polygon

X

C Line

X

D Point

© Copyright. All rights reserved.

107

Unit 3: Learning Assessment - Answers

5. With fuzzy search, when I enter ‘, what does SAP HANA return? Choose the correct answer. X

A Words that are closely matched in spelling

X

B Words that are closely matched in meaning

6. Which open source language do you use to create custom predictive algorithms? Choose the correct answer.

108

X

A R

X

B L

X

C C++

X

D ABAP

© Copyright. All rights reserved.

UNIT 4

Data Provisioning in SAP HANA

Lesson 1 Describing SAP HANA Data Provisioning

110

Lesson 2 Describing Data Provisioning Tools

113

Exercise 3: Replicate Data Using SLT

119

Exercise 4: Import a flat file into SAP HANA

131

Lesson 3 Describing SAP HANA Vora

135

UNIT OBJECTIVES ●

Describe SAP HANA data provisioning



Describe SAP HANA data provisioning tools



Describe how SAP HANA Vora enables BI over Big Data

© Copyright. All rights reserved.

109

Unit 4 Lesson 1 Describing SAP HANA Data Provisioning

LESSON OVERVIEW In this lesson we will explain what is meant by data provisioning with SAP HANA. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe SAP HANA data provisioning

Data Provisioning Where does SAP HANA data come from? SAP HANA provides the essential database services to many SAP and non-SAP applications. These applications continually send requests to the SAP HANA database to create, update, and sometimes delete records. This is true when running transactional business processes that require data maintenance such as creating a purchase order or amending an employee salary. So in this case, we don’t need to worry about setting up the provisioning of data to SAP HANA because the applications take care of that.

Figure 75: What is Data Provisioning?

But what happens when SAP HANA is deployed as a standalone database, perhaps with analytics running on top? Where will the data come from? Also, if SAP HANA is powering

110

© Copyright. All rights reserved.

Lesson: Describing SAP HANA Data Provisioning

transactional applications, we may want to pass extra data from external sources to SAP HANA so that applications can access any data from anywhere. All data, wherever it comes from, is stored in the same SAP HANA database. So the act of provisioning this additional external data is simply referred to as data provisioning, and there are some great tools to help you implement this. You might have thought that data provisioning is just another term for data loading. Not quite. Data loading implies that data is physically moved and stored in SAP HANA. Whilst this is certainly possible, data provisioning also includes other approaches such as data streaming and data virtualization. With these approaches, data is exposed to SAP HANA for processing but it is not physically stored in SAP HANA. So data provisioning is an umbrella term used to describe the techniques and tools used to make data available to SAP HANA applications. SAP HANA can Handle any type of Data Provisioning Requirement When we consider data provisioning we need to think about the following two key dimensions: ●

Frequency



Transformation

Figure 76: SAP HANA can Handle any Type of Data Provisioning

Frequency (horizontal axis) — Data can arrive at different time frequencies ranging from realtime and hourly, to weekly, yearly or perhaps driven by occasional events such as when a vending machine runs out of stock and transmits a request for a refill. Transformation (vertical axis) — During provisioning, data can be transformed. For example, to align billing codes from different systems, convert currencies, lookup missing zip codes, calculate rebate values. Sometimes data from different sources must be loaded at the same time for technical and/or business integration logic to be applied. For example, when data needs to be harmonized into a single stream from different sales order entry systems. SAP HANA allows any combination of provisioning frequency with any degree of transformation in order to meet the needs of all applications that requires data at any speed and of any type.

© Copyright. All rights reserved.

111

Unit 4: Data Provisioning in SAP HANA

Today’s modern applications are powered by a rich variety of data types (transactional, spatial, and text) and the applications consume data at different rates from continuous, realtime sensor data to periodic, batch loads of bulk data. The course HA350 — SAP HANA Data Provisioning covers various data provisioning tools in more detail. HA355 — SDI and SDQ is a deep dive on SDI and SDQ. LESSON SUMMARY You should now be able to: ●

112

Describe SAP HANA data provisioning

© Copyright. All rights reserved.

Unit 4 Lesson 2 Describing Data Provisioning Tools

LESSON OVERVIEW This lesson describes the big picture of data provisioning in an SAP HANA landscape and will help the learner to understand the various scenarios for data provisioning. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe SAP HANA data provisioning tools

Data Replication When you hear the term replication, you may be thinking data loading. But replication is a specific method of data loading. Replication typically means ensuring that data created in one system is duplicated to one or multiple target systems, usually in real time, and often managed record by record. But replication doesn't always happen in real-time. Replication can also take place periodically, for example every 5 minutes, especially when it is not essential that data is always synchronized in real time. Typically, with replication, no transformation takes place on the data as it travels to the target system, the data is unchanged. Replication involves the physical moving of data and not simply virtualizing the data sources. The following are some examples illustrating this data provisioning method: ●





Sales orders entered in an ERP system are immediately replicated to a data mart so that real time dashboards could be developed to show the live sales pool. A vending machine sends its stock information every 10 minutes to the central inventory system at HQ so we are able to trigger replenishments when stocks are low. Orders are sent immediately to a billing system so invoices can be created without delay.

There are many different technical implementation approaches that support replication ranging from the use of database logs to the use of database triggers. What is essential is that the source or target system has some way of knowing that data has changed so a replication can be kicked off. The SAP HANA real-time replication solutions provide technologies for replicating data in real time or batch from any source system to the SAP HANA database. These include triggerbased data replication using SAP LT Replication Server, log-based data replication technology using SAP Replication Server, and session-based synchronization using SAP HANA remote data sync. SAP Replication Server is a sophisticated transactional data movement product that moves and synchronizes data across the enterprise, without geographical distance limitation, to meet demanding requirements in the enterprise such as guaranteed data delivery, real-time business intelligence, and zero operational downtime. SAP Replication Server facilitates this by non-intrusively handling data at the source and target database level including Sybase,

© Copyright. All rights reserved.

113

Unit 4: Data Provisioning in SAP HANA

Oracle, Microsoft, and IBM, while ensuring high performance and transactional integrity. SAP Replication Server is often used by organizations who need to move a lot of data in different directions in real time and ensure 100% synchronicity. You will find this solution used in many financial institutions where systems must be completely in step in real-time with robust recovery options in case of failure. SAP Replication Server ●







Log-based replication process ­

Non-intrusive

­

Very high performance

Improve recovery, resumption times and minimize downtime ­

Bidirectional replication

­

Standby DB is always available and can be used for read-only report server

Fresh data to enable a timely decision ­

Run resource intensive reports on reporting servers without impacting OLTP systems

­

Reduce information latency for reporting and optimize batch reporting

Real time data sharing and synchronization ­

Facilities decentralized business operations

­

Enables remote applications to access data locally for improved performance

One key feature of SAP Replication Server is that it relies on a log-based replication technique. The Changed Data Capture (CDC) is not done against the data volumes of the source database tables, but instead by reading directly the database log.

Note: A database log is a history of all actions executed by the database management system and is often used in the recovery of databases after a crash. When replayed it all updates to the database can be re-created. This log-based approach reduces the workload that the replication process usually brings to the source database, thus enhancing the availability of this system. SAP Replication Server has been significantly enhanced recently to support replication scenarios that include SAP HANA as a source or target. Also, amongst the latest enhancements is the ability to replicate from Business Suite applications, as SAP Replication Server is now able to handle the SAP proprietary ABAP cluster tables. So you would think this appears to be the perfect solution for all your replication needs, right? Whilst SAP Replication Server can handle large volumes of non-disruptive replications, there are other SAP HANA replication options that can achieve satisfactory results with a much simpler landscape.

114

© Copyright. All rights reserved.

Lesson: Describing Data Provisioning Tools

Note: For more details on SAP Replication Server please refer to SAP training course EDB374 SAP HANA Remote Data Sync — SAP HANA remote data sync is a synchronization technology designed to synchronize remote databases with a central database. SAP HANA is the central database and the remote sources can be either of the following: ●



SAP SQL Anywhere — a powerful, highly scalable relational database that can be deployed in large or small, remote applications. UltraLite — a component within SAP SQL Anywhere used to support small footprint applications found in handheld devices such as smartphones or tablets.

Figure 77: Remote Data Sync Use Cases

SAP HANA remote data sync is useful when applications cannot remain continually connected to a central database due to connection problems, for example, a field engineer in remote location with a poor signal, or perhaps the application should not be continually connected due to connection costs. When implementing SAP HANA remote data sync, we develop occasionally connected smart client applications. These applications sync with the central database either periodically at set times or this could be triggered by an event. In all remote data sync applications, the remote data sync server is the key to the synchronization process. Synchronization typically begins when a remote data sync remote site opens a connection to a remote data sync server. During synchronization, the remote data sync client at the remote site can upload database changes that were made to the remote database since the previous synchronization. On receiving this data, the remote data sync server updates the consolidated database, and then downloads changes from the consolidated database to the remote database.

© Copyright. All rights reserved.

115

Unit 4: Data Provisioning in SAP HANA

Figure 78: Remote Data Sync

The smart thing about SAP HANA remote data sync is that it maintains data integrity at all times. For example, it remembers the exact sequence of updates from all remote clients. Imagine if 1000 field engineers were withdrawing the same spare part and at the same time other remote works were replenishing the same spare part. You can see how easy it might be for the stock balances to get messed up in fast bi-directional data traffic if we didn't take care of handling the updates in sequence and with 100% accuracy. SAP LT Replication Server — SAP LT Replication Server, also known as SLT, is a very popular tool used by customers to ensure data generated in an SAP Business Suite application is replicated in real time to SAP HANA, One of the main use cases for using SLT is to provision data to SAP HANA for BI cases. For example, live dashboards can be kept up-to-date with real time transaction data. SLT is a NetWeaver ABAP based application and uses well known SAP technologies such as RFC and DB Connect to establish source and target connections. SLT is also used as the data transfer tool for many SAP products such as SAP BW, and SAP Accelerators. SLT plays a key role when SAP HANA Live is deployed as a side car, by managing all data replication.

Figure 79: SAP LT Replication Server

SLT has been used for many years as a data transfer tool in landscape transformation scenarios (company acquisitions where data needs to be consolidated, or split). SLT goes back before SAP HANA was released. In the last few years, SLT has had many enhancements specifically aimed at its use with SAP HANA as a powerful replication tool. Many of these enhancements help to improve the throughput of data and also the monitoring of the data movement.

116

© Copyright. All rights reserved.

Lesson: Describing Data Provisioning Tools

SLT is a trigger based data provisioning tool. This means that SLT sets database triggers on any table that we would like to replicate from. When the database table is changed in any way (insert, update, delete) the trigger is automatically fired and SLT hears the trigger and fetches the data from the source system and transfers it to SAP HANA. SLT can perform the following types of data movement: ●

Load A one-time data copy from the source system to SAP HANA. This is not replication but a bulk copy, this tool is also used for data migration, which is typically a one time event so this feature is very important.



Replication SAP LT performs an initial full load of all data, and then immediately sets up a real-time replication of data from the source to the target system. This replication is trigger-based, meaning that a DB trigger is defined in the source database on each table marked for replication. Each time a data modification is done to a source table, the trigger captures this event and SLT transports this change to the target database. This is typically the most popular use of SLT to enable feeding of real time data to SAP HANA based applications.

When SAP HANA tables are the target, SLT replicates data from the source system at the table level. Some data provisioning tools are able to replicate from the application level using business views (for example, BW datasources). This means you need to know the names of the source tables you wish to replicate from. When we think about replication we usually assume data is moved unchanged from the source to the target. But in some cases, you may need to apply some transformation to the data. Although SLT is not a heavyweight data transformation tool, it is certainly possible to modify the data during the transfer process. The types of modification are as follows: ●









Add or remove table columns — for example, with a very wide transactional record perhaps only a few columns are needed for reporting, or perhaps a new column to store a new calculation is needed. Change data type for a column — for example, the source column is an integer type and you wish to convert this to a character string so it is able to hold more flexible values. Filter — for example, you only need to replicate the orders flagged as ‘URGENT’. The filters can be set on multiple columns. Modify data — for example, you wish to convert column values to align to and with other systems (when DE or GER than Germany). Split up a table — not strictly a modification, but SLT enables the distribution of data from a single source table to multiple SAP HANA target tables, and vice versa.

ABAP is used to develop the transformation logic and so this is clearly a crucial skill to have on any SLT project where transformation will be made. Any transformation applied to data as it is being replicated will have an affect on the time it takes for the data to arrive at the target. For this reason, only light transformations should be implemented. Plus, writing data transfer rules for complex integration and cleaning can get very complicated. There are better SAP data provisioning tools to use in those situations. (See Data Services and EIM) The administration of replication using SLT is fully integrated into the SAP HANA Studio. Here you can choose from a number of options to stop and start data movement jobs.

© Copyright. All rights reserved.

117

Unit 4 Exercise 3 Replicate Data Using SLT

Exercise Objectives In this exercise, you will learn how to replicate data from an SAP source system to SAP HANA using SAP LT Replication Server. Business Example Your company runs their travel booking business on an SAP source system. They have asked you to replicate the data to an SAP HANA system so that dashboards can be produced to show the real time position of flight bookings. You need to learn the steps to replicate data. 1. Start SAP Logon and log on to the T40 SAP source system with the following credentials: Field

Value

Client

001

User

STUDENT­## (replace ## with your number)

Password

INITIAL (upper case)

Language

EN

2. Display the total number of records and also the contents of source SAP table ZSFLIGHT_##. 3. In the SAP HANA Studio, open the Data Provisioning Editor for your SAP HANA target system. 4. Start a replication of table ZSFLIGHT_##. 5. Make sure the table and all source records have been fully replicated to SAP HANA. 6. Add a new record to the source table. You can any valid data values for the field entries. 7. Check the new record has been replicated to SAP HANA.

© Copyright. All rights reserved.

119

Unit 4 Solution 3 Replicate Data Using SLT

Exercise Objectives In this exercise, you will learn how to replicate data from an SAP source system to SAP HANA using SAP LT Replication Server. Business Example Your company runs their travel booking business on an SAP source system. They have asked you to replicate the data to an SAP HANA system so that dashboards can be produced to show the real time position of flight bookings. You need to learn the steps to replicate data. 1. Start SAP Logon and log on to the T40 SAP source system with the following credentials: Field

Value

Client

001

User

STUDENT­## (replace ## with your number)

Password

INITIAL (upper case)

Language

EN

a) The SAP Logon program can be launched from the Windows program list. b) Use the credentials above to logon to T40. 2. Display the total number of records and also the contents of source SAP table ZSFLIGHT_##. a) Enter transaction code SE16 and enter the name of the table then press Enter. b) Choose Number of Entries. A dialog displays indicating fifteen records have been found. c) Choose Close to close the dialog. d) Choose Execute F8 to show the contents of the table. e) Stay on this screen. 3. In the SAP HANA Studio, open the Data Provisioning Editor for your SAP HANA target system. a) Expand the menu path Windows→ Quick View. b) From the Quick View, select Data Provisioning . c) Select your SAP HANA target system and choose Finish. 4. Start a replication of table ZSFLIGHT_##.

120

© Copyright. All rights reserved.

Lesson: Describing Data Provisioning Tools

a) Choose Replicate. b) Enter the table name ZSFLIGHT_## in the search field, and choose Search to the right to find your table. c) Highlight only your table in the left pane and choose Add to add the table to the selected list on the right pane. d) Choose Finish to begin the replication. e) Choose Refresh in the toolbar until you see your table appear at the bottom of the list. Continue choosing Refresh until you see the Action and Status is Replicate — In Process. 5. Make sure the table and all source records have been fully replicated to SAP HANA. a) In the System view, expand the path Catalog→ SLT_ZME_CLNT800→ Tables and you see your table in the list. b) From the context menu of the table ZSFLIGHT_##, choose Open Data Preview . A dialog displays indicating fifteen records have been found. 6. Add a new record to the source table. You can any valid data values for the field entries. a) Return to the SAP source system and choose Create in the toolbar. b) Using the value-help drop down selector, choose valid entries for all the fields then choose Save. 7. Check the new record has been replicated to SAP HANA. a) In the SAP HANA Studio your table should still be open so simply refresh the data preview using the refresh icon and you will see the new record. If you closed the table then you need to re-open it to see the new record.

© Copyright. All rights reserved.

121

Unit 4: Data Provisioning in SAP HANA

Extract, Transform, Load (ETL) Extract, Transform, Load (ETL) is the process of extracting data from source systems, and applying transformations on the data before loading to a target. This process is popular with data warehouses, such as SAP BW. SAP HANA has a number of tools that can be used in the data provisioning scenario around ETL. Enterprise Information Management (EIM) = SDI + SDQ — There are many options to choose from when considering data provisioning to SAP HANA. Most of these options require the installation and setup of additional software and hardware components that sit between the data source and SAP HANA. These components cover a broad range of capabilities, for example, extract data, combine sources, cleanse, and load or expose the data to SAP HANA.

Figure 80: Traditional Approach to Integrating Data with SAP HANA

The inclusion of this additional data provisioning tier adds to the complexity and cost of the overall solution.

Figure 81: A Simplified Approach to Data Integration

With Enterprise Information Management (EIM), we now have a broad range of data provisioning capabilities built right inside SAP HANA. This means that no additional tools and their associated hardware are required. We have removed the data provisioning extra tier. Running data provisioning tasks inside SAP HANA also means that we take advantage of the quick in-memory processing. Currently EIM does not cover all features and functions of every data provisioning tool, but with each release of SAP HANA, EIM offers additional capabilities and customers should take

122

© Copyright. All rights reserved.

Lesson: Describing Data Provisioning Tools

a serious look at this solution as it may provide a more simplified and complete solution for their data provisioning requirements.

Figure 82: Components of EIM

EIM is not a component, it is the umbrella term used to describe the overall capabilities for the SAP HANA in-built, native data provisioning capabilities. The following are the components of EIM: ●

Smart Data Integration (SDI) — functions for acquiring and data integration.



Smart Data Quality (SDQ) — functions for improving data quality.

EIM provides ETL services to SAP HANA. Although we see two components, SDI and SDQ, do not think of these as two separate products. When building any data provisioning job, the developer is able to freely include any of the capabilities from either component. SDI is the key component that takes care of data acquisition and integration, whereas SDQ can add additional steps to the job to enhance and clean the data. SDQ relies on the basic features of SDI to get the data moving. EIM jobs are created in SAP HANA using flowgraphs. Flowgraphs are graphical representations of a data provisioning job and contain a sequence of nodes that represent the steps in the flow. Developers create jobs by dragging and dropping the nodes to a canvas in order to create the flowgraph.

© Copyright. All rights reserved.

123

Unit 4: Data Provisioning in SAP HANA

Figure 83: Smart Data Quality - Transformations

SAP Data Services — SAP Data Services provides the capability to extract, transform, and load (ETL) data from any source and to any target. This includes SAP HANA as both a source or target. SAP Data Services has been around for some time and is very well established within the distributed landscapes of many customers. SAP Data Services is SAP’s most powerful ETL platform providing sophisticated data integration and harmonization features as well as country specific data cleansing tools.

Figure 84: Data Services Architecture

SAP Data Services is not a built-in SAP HANA component as we have with SDI/SDQ. SAP Data Services is a separate application that sits side by side with SAP HANA. Of course, SAP

124

© Copyright. All rights reserved.

Lesson: Describing Data Provisioning Tools

provide native SAP HANA connectors with SAP Data Services so getting started with data provisioning to and from SAP HANA is very easy. SAP Data Services can pass and exchange metadata with SAP HANA. For example, the output structures of the Data Services jobs can automatically create HANA tables. Or SAP HANA tables and views are exposed to Data Services jobs for input. SAP Data Services usually processes all data in its own engines and send the output to the target systems. When SAP Data Services is used with HANA, a significant amount of the data processing is pushed to HANA to ensure ETL jobs run as fast as possible. SAP have enhanced Data Services recently to provide tighter integration with SAP HANA so data flow jobs are optimized.

Data Virtualization Customers have to deal with complex system landscapes across different locations, storing huge amount of data in different formats and on different platforms. Customers require a cost-efficient, easy-to-deploy solution to get real-time data visibility across their fragmented data sources, for example, operational reporting, monitoring, predictive analysis, and transactional applications. With SAP HANA, we have built in tools that can be used to create connections to remote data sources so that the data can be accessed in real time as required as if it was actually stored in SAP HANA’s database. Smart Data Access (SDA) — Is the name of the built-in tool set that provides the catalog of adaptors to connect to remote sources plus the federated query processing, which means that queries can be pushed down to the source databases.

Figure 85: Motivation for Smart Data Access

To the application developer, the data appears to come from one source, SAP HANA. Once the one time connection to the remote source is established by IT, the application developers do not need to concern themselves with the technicalities of where the data is coming from. SDA supports a modern data federation strategy, where movement of data is minimized and global access is enabled to data stored in local repositories. SDA can be utilized in the following situations:

© Copyright. All rights reserved.

125

Unit 4: Data Provisioning in SAP HANA



Build new applications on SAP HANA, but access data from multiple sources without moving data into SAP HANA.



Expose Big Data stores such as Hadoop to SAP HANA based applications.



Provide real time access to archived data.



Combine data from multiple SAP HANA based data marts.

You can create a fast and flexible data warehouse without expensive ETL, massive storage, security and privacy risks. Gartner calls this a logical data warehouse. Forrester call it data fabric and IDC data warehouse without ETL. You can build big data applications with fast and secure query access to data while minimizing unnecessary data transfers and data redundancy. You can bring social media data and critical enterprise information together, giving comprehensive visibility into customer behavior and sentiment.

Figure 86: SAP HANA Smart Data Access: The Glue of the Platform

SAP HANA smart data access enables remote data to be accessed via SQL queries as if they are local tables in HANA, without copying the data into SAP HANA. Specifically, in SAP HANA, you create virtual tables that point to remote tables or views in different data sources. Customers can then write SQL queries in SAP HANA, which could operate on these virtual tables. The virtual tables sit alongside the regular tables in the same SAP HANA database schemas. Note: A virtual table can easily be spotted in the database catalog as it has a small connector symbol added to the table icon. The SAP HANA SQL query processor optimizes the queries that are based on virtual tables by determining on the fly if any query operations could be quicker if they were pushed down the

126

© Copyright. All rights reserved.

Lesson: Describing Data Provisioning Tools

remote source as opposed to processing in SAP HANA. To support this invisible decision making, SAP HANA collects statistics on the remote data sources. The following list outlines some of the benefits of Smart Data Access: ●

Enables access to remote data just like local table



Smart query processing pushes as much processing as possible to target data source





Smart query processing includes query decomposition with predicate push-down, and functional compensation Automatic data type translation enables remote data types to be mapped to HANA data types on the fly



Supports data location agnostic development



No special syntax to access heterogeneous data sources



Provides SAP HANA to SAP HANA queries



Support of Insert, Update, and Delete in many cases



Calculation View Support for Virtual Tables



Deliver Generic Adapter framework to extend additional Remote Sources

Note: For the up to date list of adaptors, always check SAP Note 1868209. For detailed coverage of SDA refer to training course HA350.

Data Streaming Data streaming is the transfer and processing of continuous data from a source to a target. This often involves very high speed and high volume data transfer and also from multiple streams in parallel. Sources of streaming data can range from very simple sensors to complex business systems.

Figure 87: SAP HANA Smart Data Streaming - Streaming Data Sources Are Becoming Ubiquitous

© Copyright. All rights reserved.

127

Unit 4: Data Provisioning in SAP HANA

In today’s highly connected digital world, data streaming is an essential enabler of real-time information to feed applications and dashboards. The opportunities for the development of innovate applications are enormous. Enterprises today are flooded with streams of messages as things happen. Individual events may not be significant by themselves, but how do you know when something of significance has occurred? You might have thousands of sensors reporting status every few seconds – and most of that information is uninteresting. But when something is starting to go wrong, you want to know as soon as possible, so that you can take action before a small trend becomes a big problem. Data streams contribute significantly to the large size of the world’s digital data that is known as Big Data. SAP HANA smart data streaming has its roots in an SAP product called Event Stream Processor (ESP) which was originally developed by Sybase. ESP is still available as a standalone product for use with any combination of source and target systems, not necessarily SAP HANA. With SAP HANA smart data streaming, we can capture data (millions of events per second) arriving continuously from devices and applications, act on this new information as soon as it arrives, and react in real-time using alerts, notifications and immediate responses to continually changing conditions. With SAP HANA smart data access, you develop a continuous query on a stream of data. In order to understand how Smart Data Streaming works, we need to explain the difference between a regular database query and a continuous query.

Figure 88: SAP HANA Smart Data Streaming - Database Queries Vs. Continuous Queries

128

© Copyright. All rights reserved.

Lesson: Describing Data Provisioning Tools

Figure 89: SAP HANA Smart Data Streaming - Extracts Insight from Events

Note: SAP HANA smart data streaming is covered in more detail in the SAP training course HA350.

Flat File Loading Flat files or Excel datasheets are the simplest way to provision data to SAP HANA and can really help you get a quick start on your project. Especially in proof-of-concept or sandbox testing projects, you can waste lots of time trying to connect SAP HANA to various source systems. By the time you have put a server into the data centre and connected it to the source system, the time allocated for your project will be finished already. It makes sense to ask the business to provide you with the data in flat files, and you just load the data into SAP HANA. Perhaps you have a source system that is only able to generate flat files for interfacing and so this might be the only way to provision data to SAP HANA.

Figure 90: Process Flow: Uploading Data from Flat Files

The process to load a flat file to SAP HANA is very simple and is guided by a wizard. 1. From the HANA Studio Import menu, choose the option to import data from a local file. 2. Select the target HANA database.

© Copyright. All rights reserved.

129

Unit 4: Data Provisioning in SAP HANA

3. Select the flat file to import. 4. Select the existing HANA target table to load to, or choose to automatically create a new table. 5. Confirm or adjust the suggested field mapping and column types. 6. Preview the output and if you are happy, execute the load. To upload data from flat files, SAP HANA flat file import offers several features: ●



The application suggests the column name and data type for the new tables, and it is possible to edit these suggestions.



The new table always has a 1:1 mapping between the file and table columns.



When loading new data in the table, it gets appended to the existing data.





130

If the target table for loaded data does not exist in SAP HANA database, the import function will create the empty table automatically for you based on the flat file.

The application does not allow the overwriting of any column name or data values or change the data type for existing columns. The supported file types for upload are: .csv, .xls, and .xlsx.

© Copyright. All rights reserved.

Unit 4 Exercise 4 Import a flat file into SAP HANA

Exercise Objective In this exercise, you will learn how to import data from a flat file (CSV, XLS, XLSX) into the SAP HANA database. Business Example You have been asked to load the sales figures from your stores into SAP HANA based on a CSV file. You will make copy of the file stores.csv provided in the shared network HANA Student folder. 1. Copy the stores.csv file from the shared network folder to your local desktop folder. The following table shows you the credentials to access the network folder: Field

Value

User

hanastudent

Password

hanareadonly

2. In the SAP HANA Studio Modeler Perspective, start the file import wizard, select the source file stores.csv . Choose the target schema STUDENT##, and enter the table name stores_##. 3. Define the table definition and data mappings. 4. Find the new imported table and preview its content.

© Copyright. All rights reserved.

131

Unit 4 Solution 4 Import a flat file into SAP HANA

Exercise Objective In this exercise, you will learn how to import data from a flat file (CSV, XLS, XLSX) into the SAP HANA database. Business Example You have been asked to load the sales figures from your stores into SAP HANA based on a CSV file. You will make copy of the file stores.csv provided in the shared network HANA Student folder. 1. Copy the stores.csv file from the shared network folder to your local desktop folder. The following table shows you the credentials to access the network folder: Field

Value

User

hanastudent

Password

hanareadonly

a) From the Windows program list, choose the shortcut student — hanastudent — hanareadonly. b) In the dialog box, you will see two shortcuts. Choose student — hanastudent — hanareadonly. c) When prompted, enter the credentials shown in the table. d) Open the folder HA100. e) Copy the file stores.csv to your desktop folder. 2. In the SAP HANA Studio Modeler Perspective, start the file import wizard, select the source file stores.csv . Choose the target schema STUDENT##, and enter the table name stores_##. a) Choose File→ Import→ SAP HANA Content→ Data From Local File . b) Choose Next. c) Select the target system, and choose Next. d) In the Source file field, select your flat file stores.csv from the Desktop folder e) For the File Encoding, choose ISO-8859–1. f) As the Field Delimiter, choose Semi colon. g) Select the checkbox Header row exist .

132

© Copyright. All rights reserved.

Lesson: Describing Data Provisioning Tools

h) For the Target Table, create a new one in your own STUDENT## schema. For the table name, enter stores_##. i) Choose Next. 3. Define the table definition and data mappings. a) Make sure that the Column store store type is selected. b) Choose Finish. c) In the Job Log view, check whether the import has been completed successfully. 4. Find the new imported table and preview its content. a) In the Systems view, select your HANA system and expand the Catalog→ STUDENT##→ Tables folder. b) Find your table stores_## and open the definition and preview the contents of this table.

© Copyright. All rights reserved.

133

Unit 4: Data Provisioning in SAP HANA

LESSON SUMMARY You should now be able to: ●

134

Describe SAP HANA data provisioning tools

© Copyright. All rights reserved.

Unit 4 Lesson 3 Describing SAP HANA Vora

LESSON OVERVIEW In this lesson, we will introduce SAP HANA Vora and explain how it fits into an SAP HANA landscape. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe how SAP HANA Vora enables BI over Big Data

Big Data is Disconnected From Core Business Processes There is no denying that Big Data is a very hot topic. Many organizations are well down the road on their Big Data journey, collecting and storing staggering amounts of data sourced from sensors, web logs, social media traffic, communication logs and more. Many of these organizations have also implemented specialist tools to process the data from these gigantic data lakes and are now busy mining this data. They can then take the results from big data analysis and combine these results with traditional enterprise analysis using BI tools in order to try to figure out how big data provides additional insight into core operational data. And there lies the key problem. We know that Big Data and enterprise data needs are typically stored separately, but the analysis should not be separated and business analysts should be able to consume any data.

Figure 91: Core Enterprise Data and Big Data are Disconnected

© Copyright. All rights reserved.

135

Unit 4: Data Provisioning in SAP HANA

Building and running queries over Big Data requires the use of specialist tools and query languages. These tools require specialist skills and so are often used by only a few trained people in the organization. They are not mainstream BI tools that are used by most analysts. Big Data processing tools are often batch oriented and cannot provide deep analytics in real time. Also, Big Data is stored in a very simplistic unstructured way and there is are little or no business models or semantics stored with this data. So we need specialist tools to enable us to treat Big Data like structured data adding in semantics so we can write queries. There have been many tools appearing in the market over the last few years to enable this. But what business analysts want is to simply combine Big Data, enterprise data and in fact any distributed data using familiar BI tools. And of course, this should all be available for real time analytics with exceptional performance.

Bringing Together Core Enterprise Data and Big Data SAP HANA Vora enables analysts to consume Big Data and enterprise data as one, using familiar drill-down, slice and dice query tools. Let’s describe SAP HANA Vora from a technical perspective. First, a Big Data framework consists of a data storage component. The most popular is Hadoop. Hadoop provides massive data storage capabilities. But Hadoop does not provide the data processing capabilities and that’s where Apache Spark comes in. Apache Spark provides the data processing on top of Hadoop, but Apache Spark is not able to provide the OLAP type analysis features over the Big Data data that most business analysts require. And that is where SAP HANA Vora comes in. SAP HANA Vora is an in-memory query engine that runs on Apache Spark and enhances Apache Spark to include hierarchies, including time dependent hierarchies, OLAP style dimensional drill-down/across, unit-ofmeasure conversion, and currency conversion and many other features. SAP HANA Vora allows us to create pre-compiled queries that are ready to go to enable fast execution.

Figure 92: Bringing Together Core Enterprise Data and Big Data

SAP HANA Vora is designed to work with the SAP HANA platform to provide end-to-end inmemory computing across enterprise data in SAP HANA and Hadoop systems. Both the SAP HANA platform and SAP HANA Vora are also independent products and can be used separately to support different use cases. The SAP HANA platform does not require SAP HANA Vora to run, or vice versa You can deploy SAP HANA Vora on an existing Hadoop installation as long as that installation meets the prerequisites stated in the installation manual for SAP HANA Vora.

136

© Copyright. All rights reserved.

Lesson: Describing SAP HANA Vora

With SAP HANA Vora you can perform root cause analysis using interactive queries across both business and Hadoop data to better understand business context. You will often hear the expression ‘adding contextual insights to enterprise data’. That is exactly what SAP HANA Vora does, it takes enterprise data and adds it to the Big Data to fully understand the deeper meaning of the data.

Note: SAP HANA Vora was released in September 2015 and is available in the cloud or on-premise There are many use cases for combining Big Data with Enterprise Data. Here are just a few: SAP VORA Use Cases ●



























360-degree customer marketing – Combine customer data with unstructured data from social media, e-mail, Web site activity, and discussion forums to better target sales and marketing Cell phone service improvement – Analyze instances of poor cellular service, such as dropped calls or poor audio, by drilling from billing data to detailed call log data Confirm diagnosis with collected literature – Bring together patient data with up-to-date journal and medical literature data in real time to improve diagnoses and treatment plans Fraud detection – Detect anomalies and rogue trades by analyzing historical trends and current data simultaneously Risk mitigation – Perform Monte Carlo simulations to produce distributions of possible outcome values with more precise context Predictive maintenance – Optimize maintenance of transformers and low tension devices through more complete historical information Virtual power plants – Forecast consumption and production based on weather, load profiles, and so forth, with better context Analytics – Perform powerful analytics for infrastructure optimization energy theft detection, load balancing, and more Archiving – Keep archived smart meter, billing, supervisory control and data acquisition (SCADA), and customer relationship management data at the ready but a lower cost. Network capacity planning – Analyze call detail records (CDRs) and network load to plan infrastructure expansion with greater precision Real-time bandwidth allocation – Steer traffic and optimize network quality of service (QoS) in real time to maintain the best service quality Targeted network maintenance and upgrades – Analyze the impact of cable network congestion on churn, and identify which network upgrades will produce greater incremental revenue Insurance and Medicare fraud analysis – Analyze vast bodies of collected claims material to uncover fraud. Airline maintenance planning — Combine aircraft sensor data collected in flight with flight schedule and staffing data to optimally plan aircraft downtime

© Copyright. All rights reserved.

137

Unit 4: Data Provisioning in SAP HANA

Note: To learn more about SAP HANA Vora please refer to the SAP course HA500 — SAP HANA Vora

LESSON SUMMARY You should now be able to: ●

138

Describe how SAP HANA Vora enables BI over Big Data

© Copyright. All rights reserved.

Unit 4 Learning Assessment

1. What are typical characteristics of replication? Choose the correct answers. X

A Virtualization

X

B Transformation

X

C Real-time

X

D Batch

X

E Synchronization

2. SAP SLT can be used for real-time replication from SAP and also non SAP sources. Determine whether this statement is true or false. X

True

X

False

3. SAP HANA EIM includes which components? Choose the correct answers. X

A SDI

X

B SDA

X

C SDS

X

D SDQ

4. What are some of the features of SDA? Choose the correct answers. X

A Automatic data type translation

X

B Data cleansing functions

X

C Evaluation and execution of push down possibilities

X

D Data recovery services due to power outage

© Copyright. All rights reserved.

139

Unit 4: Learning Assessment

5. Which are correct statements relating to flat file loading? Choose the correct answers. X

A The new table always has a 1:1 mapping between the file and table columns

X

B The supported file types for upload are: .csv, and .txt

X

C When loading new data in a table that already contains data, the new data is appended to the existing data

X

D The import function does not allow the renaming of columns changes to the data type for existing columns

6. Which are true statements? Choose the correct answers.

140

X

A SAP HANA Vora replaces Apache Spark

X

B SAP HANA Vora requires SAP HANA platform

X

C SAP HANA Vora provides OLAP features to Big Data

X

D SAP HANA Vora combines Big Data and enterprise data for analysis

© Copyright. All rights reserved.

Unit 4 Learning Assessment - Answers

1. What are typical characteristics of replication? Choose the correct answers. X

A Virtualization

X

B Transformation

X

C Real-time

X

D Batch

X

E Synchronization

2. SAP SLT can be used for real-time replication from SAP and also non SAP sources. Determine whether this statement is true or false. X

True

X

False

3. SAP HANA EIM includes which components? Choose the correct answers. X

A SDI

X

B SDA

X

C SDS

X

D SDQ

© Copyright. All rights reserved.

141

Unit 4: Learning Assessment - Answers

4. What are some of the features of SDA? Choose the correct answers. X

A Automatic data type translation

X

B Data cleansing functions

X

C Evaluation and execution of push down possibilities

X

D Data recovery services due to power outage

5. Which are correct statements relating to flat file loading? Choose the correct answers. X

A The new table always has a 1:1 mapping between the file and table columns

X

B The supported file types for upload are: .csv, and .txt

X

C When loading new data in a table that already contains data, the new data is appended to the existing data

X

D The import function does not allow the renaming of columns changes to the data type for existing columns

6. Which are true statements? Choose the correct answers.

142

X

A SAP HANA Vora replaces Apache Spark

X

B SAP HANA Vora requires SAP HANA platform

X

C SAP HANA Vora provides OLAP features to Big Data

X

D SAP HANA Vora combines Big Data and enterprise data for analysis

© Copyright. All rights reserved.

UNIT 5

Running Applications on SAP HANA

Lesson 1 Describing the Types of Applications you can run on SAP HANA

144

Lesson 2 Connecting SAP Business Intelligence Tools to SAP HANA

149

Exercise 5: Create a Report with SAP BusinessObjects Analysis for Microsoft Excel

155

Lesson 3 Outlining SAP Business Warehouse on SAP HANA

163

Lesson 4 Describing SAP HANA Data Warehousing Foundation

167

Lesson 5 Describing the Basics of XS Applications

171

Exercise 6: Write Data into SAP HANA Using an XS Engine Application

173

Lesson 6 Describing the Purpose of the Business Function Library

179

UNIT OBJECTIVES ●

Describe the types of application you can run on SAP HANA



Connect SAP Business Intelligence Tools to SAP HANA



Outline how SAP BW leverages SAP HANA



Describe SAP HANA Data Warehouse Foundation



Describe the basics of XS applications



Describe the purpose of the Business Function Library

© Copyright. All rights reserved.

143

Unit 5 Lesson 1 Describing the Types of Applications you can run on SAP HANA

LESSON OVERVIEW This lesson covers running applications on SAP HANA. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe the types of application you can run on SAP HANA

Applications Served by SAP HANA The key role of SAP HANA is to provide platform services to all types of applications. The key services include database services but also application processing services and data integration services. So what are the types of application that can run on SAP HANA? There really is no limit to the types of application that can be run on SAP HANA. SAP HANA is built with open, industry standard connection technologies, which means we leverage well known interfaces, for example, ODBC, JDBC, oData, HTTP, Web Services, and so on. We will cover the topic of connectivity in more detail in the next section. For now, let’s look at some examples of applications, both SAP and non-SAP that can be run on SAP HANA.

144

© Copyright. All rights reserved.

Lesson: Describing the Types of Applications you can run on SAP HANA

Figure 93: Examples of Applications that Run on SAP HANA

SAP S/4HANA is SAP’s totally rewritten Business Suite for SAP HANA. This flagship application covers all core business process and also applications for lines of business (LoBs) and is only available to run on SAP HANA. SAP S/4HANA includes a database client that communicates with SAP HANA by sending commands to the database for reads, inserts, delete, and updates. This is completely invisible to business users who only interact with the applications from S/4HANA. SAP Business Suite is the original business suite that was developed to run on a large number of databases. In the last few years, SAP have made it possible for SAP Business Suite to run on SAP HANA. The underlying ABAP code was tweaked and optimized to ensure that everything still runs as expected to realize performance improvements. Again, business users do not see the interaction between SAP Business Suite and SAP HANA, and the database client of SAP Business Suite is the bridge between the application and SAP HANA. SAP Business Warehouse (BW) is SAP‘s flagship data warehouse solution. SAP BW has had to re-invent itself since the arrival of SAP HANA, which is able to takeover many of the duties of SAP BW. SAP BW acts as the loading mechanism for data to SAP HANA but of course, it’s key role is to provide data for reporting and other SAP BW powered applications such as APO, Integrated Planning (IP), and so on. SAP BW is written in ABAP and so the communication with SAP HANA is the same as any other SAP applications, including Business Suite. SAP BI covers all the advanced analytical applications from SAP, mostly made up of the SAP Business Objects portfolio, such as Analysis, Design Studio, and Crystal. In almost all cases, the BI applications send requests to SAP HANA for data. They usually do not generate new data for SAP HANA. Depending on the analytic tool used, there are different ways to connect to SAP HANA. New SAP HANA applications are a range of powerful, innovative, real time applications for lines of business and are developed by SAP to only run on SAP HANA. Examples include, SAP Sales and Operation Planning, SAP Cash Forecasting, and SAP Collections Insight. These applications are integrated with existing SAP applications.

© Copyright. All rights reserved.

145

Unit 5: Running Applications on SAP HANA

Non-SAP applications are developed by customers and partners. Many of these are certified by SAP. There are many ways to connect custom applications to SAP HANA, either directly to the database or via the XS application server. A key decision that needs to be made when connecting any consumer to SAP HANA is whether the connection is made directly to the database or to the application server (XS), which then connects to the database. For custom applications, the developer needs to make this important choice. For off the shelf applications, there is usually a pre-determined method of connection that cannot be changed. For example, SAP BI applications such as Lumira connect directly to the database. The application server (XS) is not used. When connecting directly to the database there are further choices to be made. First of all, which query language will your application use to send to SAP HANA? Did you know SAP HANA database is bilingual? Yes, it speaks two database languages, SQL and also MDX. These are both powerful and very popular industry standard query languages. ●

SQL This is a query language used by both transactional and analytical applications to request data and write data back to a database. The strength of SQL is its universal popularity, which means there is a large global skillset base.



MDX This is a query language used only by analytical applications to request data, it does not write data back to the database. This specialist language does have one key strength, which is when writing queries on cube shaped data, it is easy to express a complex, multidimensional query with simple syntax compared to SQL. SQL can only be written to query along two dimensions at a time, whereas MDX can be written to query along multiple dimensions simultaneously.

Off the shelf applications are usually fixed to use one of these query languages. For example, SAP S/4HANA uses SQL as its communication language between the application and the SAP HANA database. Whereas Microsoft Excel Pivot Tables use MDX as its communication language with SAP HANA.

146

© Copyright. All rights reserved.

Lesson: Describing the Types of Applications you can run on SAP HANA

Architecture for Connection to SAP HANA

Figure 94: Architecture for Connection to SAP HANA

Also, when connecting to the database, you have to think about whether you wish to connect directly to the tables in the database, or to the database views. As mentioned previously, we can develop modeled views, called Information Views, and consumption ready views of business data. These are very popular with BI clients as they offer a business view of data that is easily consumed. Some applications do not allow consumption of tables directly and you must always create views on top of the tables. Another decision to make is which connection technology to use to connect your application to the SAP HANA database? There are the following four options: ●

ODBC This was developed by Microsoft for Windows based applications that need connection to databases. ODBC uses SQL as the query language.



JDBC This is a variant of ODBC, but it is just for JAVA based applications. A key strength is that it is not tied to Windows applications but can be used by applications that run on Unix and Linux. JDBC uses SQL as the query language.



ODBO This is a Microsoft development specifically built for the MDX query language to connect OLAP clients to SAP HANA. Microsoft Excel Pivot Tables use this connection method.



Business Intelligence Consumer Services (BICS) BICS was developed by SAP to provide optimal communications between its OLAP clients (such as Analysis) and SAP HANA. BICS offers the best performance and also the most comprehensive reach of OLAP functions compared to ODBC, ODBO and JBDC. However, only SAP can use BICS to connect its applications to SAP HANA as there is no public API

© Copyright. All rights reserved.

147

Unit 5: Running Applications on SAP HANA

for BICS for customer or partner use. It is a proprietary interface owned by SAP and its details are not published. It is mentioned in this section for completeness of knowledge.

Note: BICS made its debut a few years ago when SAP wanted to improve the performance and functionality of the connection between SAP Business Objects reporting tools and SAP BW. Whilst developers can choose the connection technology for their own applications, most off the shelf applications have a fixed method for connecting to SAP HANA using one of these technologies and this cannot be changed. An exception to this would be Crystal Reports where ODBC and JDBC connections are offered. A developer who builds an application using XS needs to define an SQL connection to the SAP HANA database so their application can communicate with the data. LESSON SUMMARY You should now be able to: ●

148

Describe the types of application you can run on SAP HANA

© Copyright. All rights reserved.

Unit 5 Lesson 2 Connecting SAP Business Intelligence Tools to SAP HANA

LESSON OVERVIEW This lesson covers connecting Business Intelligence (BI) tools to SAP HANA. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Connect SAP Business Intelligence Tools to SAP HANA

SAP Business Intelligence (BI) Before we begin to examine the details of connectivity to SAP HANA, let’s provide some basic background on SAP BI.

Figure 95: Distinct Information Needs

In any business organization, different roles have varying needs for information. Some users expect a weekly well formatted and consistent report, some require access to a dashboard where they can get up to date information on Key Performance Indicator (KPIs). Some users require the ability to drill down and explore their data with no boundaries, and some users need to be able to prepare and develop their own ad hoc analysis. SAP provides a dedicated tool for each type of user.

© Copyright. All rights reserved.

149

Unit 5: Running Applications on SAP HANA

Many of the BI tools have their origin in the Business Objects family and have been enhanced and natively integrated with SAP solutions (SAP BW, SAP HANA). Some BI tools were developed from scratch by SAP, such as SAP Lumira and Analysis, Edition for Office. SAP BI is the name of the portfolio of these tools. Information Needs Matched To Clients

Figure 96: Information Needs Matched To Clients

There are quite a lot of tools in the SAP BI family so let’s group them by type.

150

© Copyright. All rights reserved.

Lesson: Connecting SAP Business Intelligence Tools to SAP HANA

The Convergence Of The SAP BI Client Portfolio

Figure 97: The Convergence Of The SAP BI Client Portfolio

Recently, SAP have simplified the landscape for SAP BI by consolidating the functionality of tools. We now have fewer tools, but more powerful tools. Let’s take a quick look at each SAP BI tool and pick out some strengths of the tool plus some key points relating to SAP HANA.

SAP BusinessObjects Analysis Edition for Microsoft Excel SAP BusinessObjects Analysis Edition is a popular reporting tool for powerful OLAP exploration with no boundaries. Perfect for exploring the multi-dimensional HANA models we created in the earlier unit with lots of slice and dice.

© Copyright. All rights reserved.

151

Unit 5: Running Applications on SAP HANA

Figure 98: Advanced Analysis - SAP BusinessObjects Analysis for MS Office

Connecting to SAP HANA The following list details the two ways for Analysis Office to connect to SAP HANA: ●



152

You can use a secured, shared connection that the administrator has previously defined in the SAP BusinessObjects Enterprise platform. When opening Analysis, you will need to enter (or confirm) a web service URL that points to the SAP BusinessObjects Enterprise platform connection plus you will need to enter your BusinessObjects Enterprise platform user and password. The key point is, you don't have to know any SAP HANA users and passwords to reach SAP HANA datasources, plus it means existing BusinessObjects users can use their existing user and password. Or you can use a local connection that is not hosted by SAP BusinessObjects Enterprise platform. This requires the user (or admin) to manually add a connection from Excel (on the local connection dialog) that points directly to SAP HANA. To set this up you will need to be provided with the host name and instance of the SAP HANA system you want to connect to. When the user clicks on this connection, they will be prompted for a valid SAP HANA user and password.

© Copyright. All rights reserved.

Lesson: Connecting SAP Business Intelligence Tools to SAP HANA

Figure 99: Connecting to SAP HANA

The Design Panel The default view when inserting an SAP HANA data source such as an analytic or calculation view is a display of all available measures with no attributes. The data is displayed in the workbook in cross tabs. You can insert multiple cross tabs in a workbook with data from different sources and systems. If the workbook is going to be used by different users, it is helpful to add info fields with information on the data source and filter status. Using the design panel, you can analyze the data and change the view of the displayed data. You can add and remove dimensions and measures to be displayed easily with drag and drop.

Figure 100: The Design Panel

© Copyright. All rights reserved.

153

Unit 5: Running Applications on SAP HANA

To avoid single refreshes and data fetch from SAP HANA after each step, you can pause the refresh to build a cross tab. After ending the pause, all changes are applied at once.

154

© Copyright. All rights reserved.

Unit 5 Exercise 5 Create a Report with SAP BusinessObjects Analysis for Microsoft Excel

Exercise Objectives In this exercise, you will build a report to analyze the data from a CUBE calculation view modeled in SAP HANA Studio. Business Example You have been tasked to create a flexible report in Analysis for Microsoft Excel that can be used to show the sales to the US customers with the possibility to drill-down by any customer and product attributes.

Note: In this exercise, when values include ##, replace these characters with your own student number 1. Start Analysis for Microsoft Excel. 2. Insert a new Data Source based on the SAP HANA calculation view CVC_US_SALES_##. Use the following logon details: Field

Value

Connection

HTTP_HANA

User

STUDENT##

Password

Training1

3. Display the measures by Delivery Charge. 4. Break down the Delivery Charge by Product Group Name. 5. Remove Delivery Charge and break down the Product Group by customer Location but put the Location attribute in the columns to create a cross tab report.

© Copyright. All rights reserved.

155

Unit 5 Solution 5 Create a Report with SAP BusinessObjects Analysis for Microsoft Excel

Exercise Objectives In this exercise, you will build a report to analyze the data from a CUBE calculation view modeled in SAP HANA Studio. Business Example You have been tasked to create a flexible report in Analysis for Microsoft Excel that can be used to show the sales to the US customers with the possibility to drill-down by any customer and product attributes.

Note: In this exercise, when values include ##, replace these characters with your own student number 1. Start Analysis for Microsoft Excel. a) On the Windows desktop, navigate to Start → All Programs → SAP Business Intelligence→ Analysis for Microsoft Excel 2. Insert a new Data Source based on the SAP HANA calculation view CVC_US_SALES_##. Use the following logon details: Field

Value

Connection

HTTP_HANA

User

STUDENT##

Password

Training1

a) From the Excel toolbar, choose the Analysis tab. b) On the Analysis ribbon, choose Insert Data Source. c) From the menu, choose Select Data Source . d) At the next prompt, choose SKIP to avoid logging on using the BusinessObjects Platform connections. e) At the next prompt, choose the connection provided in the table and choose NEXT. f) At the next prompt, enter the user and password provided in the table. g) Choose the Area tab.

156

© Copyright. All rights reserved.

Lesson: Connecting SAP Business Intelligence Tools to SAP HANA

h) Expand your folder and select your calculation view. 3. Display the measures by Delivery Charge. a) Drag the Delivery Charge attribute from the Data Source pane to the Rows. The measures are now split by the two types of Delivery Charge. 4. Break down the Delivery Charge by Product Group Name. a) Drag theProduct Group Name attribute from the Data Source pane to the Rows. The measures are now split by Delivery Charge and Product Group. 5. Remove Delivery Charge and break down the Product Group by customer Location but put the Location attribute in the columns to create a cross tab report. a) Drag Delivery Charge from the Rows to the Data Source pane to remove it from the results. b) Drag Location attribute from the Data Source pane to the Columns to see a split of sales of product group by city.

© Copyright. All rights reserved.

157

Unit 5: Running Applications on SAP HANA

SAP Crystal Reports SAP Crystal Reports is a well-established tool used to develop very sophisticated business reports. Its key strength is that it allows the developer to create a report with precise formatting. It is a tool that allows the developer to create intelligent reports with dynamic content. For example, when sales figures are low the reports can include additional breakdown figures to explain the situation. Reports are of a professional standard so they can be presented for external consumption, for example, to present shareholder information on the company’s web site. SAP Crystal Reports can consume SAP HANA data directly using ODBC or JDBC drivers. This can be done either directly from the database tables or from the Information Views.

Figure 101: Crystal Reports Enterprise

SAP BusinessObjects Web Intelligence SAP Web Intelligence (Webi) is a powerful report building tool that is aimed at the business user who would like to use a self service BI tool. Web Intelligence, usually referred to as Webi, is ideal for creating ad-hoc reports and its simple user interface has been welcomed by many business users who enjoy being able to create their own reports without the need for specialist BI skills.

158

© Copyright. All rights reserved.

Lesson: Connecting SAP Business Intelligence Tools to SAP HANA

Figure 102: Web Intelligence and HANA

Reports are created using a drag and drop approach, and the interface, which is aimed at a business user, is very easy to use. Webi is often positioned as an ad-hoc reporting tool used to build queries for one time use. However, many of our SAP customers tell us that Webi is the most important reporting tool in their organization due to its power and its ease of use. Until recently Webi was one of the few tools that could not directly connect to SAP HANA, therefore a universe was always needed to act as the communication layer between Webi and SAP HANA. However, since Business Objects 4.2 and SAP HANA SPS10, Webi can connect directly to SAP HANA and a universe is not needed. The following list outlines the two modes required when connecting to SAP HANA: ●

Online mode Webi is always connected to HANA to ensure great performance by pushing down processing to HANA.



Direct Access mode Webi grabs data from HANA and can then go offline, processing is done in Webi

Note: With regards to SAP HANA hierarchies, it should be noted that because online mode only uses a relational connection, SAP HANA hierarchies will be flattened and treated as dimensions. With direct access mode, which can use OLAP connections, the SAP HANA hierarchies are structurally preserved and appear in the Webi Query Panel as hierarchies.

© Copyright. All rights reserved.

159

Unit 5: Running Applications on SAP HANA

SAP Lumira SAP Lumira delivers beautiful analytics, allowing you to easily convey and share knowledge in the following ways: ●





Use beautiful and intuitive data visualization templates, Lumira lets you focus on telling your story. Share visualizations and insights in the cloud with everyone and without having to sacrifice performance, security, or functionality. Combine and mashup all your data with simpler, error-free data prepping workflows. Sophisticated charts and visualizations to illustrate hidden insights where tabular reports are not effective.

Figure 103: Data Search and Exploration - SAP Lumira

SAP Lumira is a self-service solution that allows analysts and decision makers to access, transform, and visualize data. The SAP Lumira desktop experience is used to prepare data from multiple sources, visualize it, and then compose stories from those visualizations that can be shared with other decision makers using the SAP Lumira server and cloud platforms that provide browser and mobile based experiences to further analyze data and collaborate with colleagues on datasets, stories, and other business intelligence artifacts.

160

© Copyright. All rights reserved.

Lesson: Connecting SAP Business Intelligence Tools to SAP HANA

SAP BusinessObjects Design Studio

Figure 104: SAP BusinessObjects Design Studio

SAP Design Studio is the flag-ship dashboard/cockpit development tool that is used to develop powerful mashups for desktop and mobile devices. SAP HANA can provide data directly to the dashboards for real time insight.

Connecting SAP BI to SAP HANA Almost all reporting clients and tools are able to connect to SAP HANA directly. The reporting tool that cannot directly connect to SAP HANA is: ●

SAP BusinessObjects Dashboards

For this tool we first need to create a Universe. Each reporting tool connects to SAP HANA using either: ODBC — generic relational JDBC — JAVA relational ODBO — multi-dimensional BICS — SAP proprietary for multi-dimensional Some tools offer a choice of connectors, for example with Crystal you can use either a JDBC or ODBC connector. The query language used depends on the reporting tool used and the connection type. The query languages are: SQL — for relational models MDX — for multi dimensional models

© Copyright. All rights reserved.

161

Unit 5: Running Applications on SAP HANA

LESSON SUMMARY You should now be able to: ●

162

Connect SAP Business Intelligence Tools to SAP HANA

© Copyright. All rights reserved.

Unit 5 Lesson 3 Outlining SAP Business Warehouse on SAP HANA

LESSON OVERVIEW This lesson covers SAP Business Warehouse (BW) on SAP HANA. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Outline how SAP BW leverages SAP HANA

SAP Business Warehouse (BW) on SAP HANA SAP Business Warehouse (BW) was the first existing SAP application that was enabled to run on SAP HANA. For the last few years, customers have been migrating their disk based databases, which have been running their SAP BW, to SAP HANA. They have been doing this to enjoy far superior performance from their SAP BW solutions, particularly in the key areas of reporting and data loading.

Figure 105: SAP BW Simplified when Powered by SAP HANA

With SAP BW on SAP HANA it is not just the speed that improves dramatically. Other major benefits include a significantly reduced data footprint. A classic SAP BW design involved building many layers of aggregation in order to improve speed of reporting. With the raw

© Copyright. All rights reserved.

163

Unit 5: Running Applications on SAP HANA

power of SAP HANA, we can aggregate on the fly and so we no longer need to build aggregates and store the related redundant data. By removing the aggregates, which are modeled using InfoCubes, we not only reduce the data footprint, but we also dramatically simplify the data modeling tasks. It is far easier to implement new flows and integrate them into existing models when we only need to manage one layer of data. Integrate any Data with BW

Figure 106: Integrate any Data with BW

When running SAP BW on HANA we can leverage the native data provisioning mechanisms that are part of SAP HANA, such as SDA, SDI, SLT and streaming. We can then build SAP HANA views and then integrate these SAP HANA views with SAP BW modeled objects such as CompositeProviders. This means that we can combine the data warehouse data, perhaps representing the historical data, with SAP HANA data representing the live operational data. SAP BW reports and applications can then consume the combined data so we have the complete picture of historical plus up-to-date data for our applications.

164

© Copyright. All rights reserved.

Lesson: Outlining SAP Business Warehouse on SAP HANA

Integrate BW Data with SAP HANA Applications

Figure 107: Integrate BW Data with SAP HANA Applications

It also works the other way around, SAP BW is able to automatically generate SAP HANA views that align to its native objects such as InfoCubes and DataStore Objects and we can then easily integrate these generated views into other SAP HANA views to combine the data. This means that we can then expose SAP BW data to any applications that run on SAP HANA. If we change the design of SAP BW objects, the corresponding SAP HANA views are automatically regenerated so everything is kept in step. Two versions of BW on HANA The following list details the two versions of SAP BW for use with SAP HANA: ●

SAP BW, powered by SAP HANA This is supported for BW 7.4 and BW 7.5 and is popular with customers who are transitioning from legacy anyDB BW where they can still create and maintain the legacy BW objects such as InfoCubes alongside the new HANA optimized objects such as Advanced DSO and CompositeProviders. BW 7.4 is still available on anyDB. Modeling and administration is carried out using the traditional SAPGUI interfaces but Eclipse can also be used for selected features. Both 3.x and 7.x data flows are supported in this version.



SAP BW, edition for SAP HANA This is supported for BW 7.5 only and is for customers who are starting out or who are ready to stop using the classic objects and want a leaner SAP BW with a smaller footprint that is 100% optimized for SAP HANA. This edition is natively written only for SAP HANA, therefore it is optimized in many ways and carries no design compromises, such as those previously needed to support all databases. With this version it is only possible to create and maintain HANA optimized BW modeling objects such as CompositeProviders. InfoCubes, Infosets and any other deprecated modeling objects are not supported. Also, with this version the 3.x data flows are no longer supported.

© Copyright. All rights reserved.

165

Unit 5: Running Applications on SAP HANA

LESSON SUMMARY You should now be able to: ●

166

Outline how SAP BW leverages SAP HANA

© Copyright. All rights reserved.

Unit 5 Lesson 4 Describing SAP HANA Data Warehousing Foundation

LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe SAP HANA Data Warehouse Foundation

Native Data Warehousing with SAP HANA For many people, when they hear references to data warehousing and SAP HANA they immediately think of SAP BW powered by HANA. Whilst SAP BW powered by HANA remains SAP’s recommended solution for enterprise-wide data warehousing, SAP HANA now contains the basic components required to build a data warehouse without the need for SAP BW. So how can we compare the different approaches to data warehousing? SAP BW is an application driven data warehouse solution. A data warehouse built using only SAP HANA is called an SQL driven data warehouse. Here there is no ABAP in sight and no application layer needed. Everything runs from the SAP HANA platform.

Figure 108: Choosing a Data Warehousing Approach

Since the introduction of SAP HANA in 2011, SAP has always provided OLAP modeling and query processing capabilities in the SAP HANA platform. At first, the capabilities were basic, but recently SAP HANA, has been catching up nicely with SAP BW in this area, introducing more complex OLAP modeling functions first introduced in SAP BW, such as time dependent

© Copyright. All rights reserved.

167

Unit 5: Running Applications on SAP HANA

hierarchies. So we could say that for the front end, SAP HANA OLAP is now strong, but the key components to manage and automate data distribution were missing within SAP HANA. Data distribution can be classified into two areas: ●

Data Distribution Ensuring tables and partitions that should be processed together are always physically stored together on the same nodes in a scale out cluster to ensure best performance.



Data Lifecycle Management Manage data temperatures by relocating data across storage tiers.

To enable this, SAP have developed components that are installed into SAP HANA that provide key data warehousing functions. These components are based on SAP HANA XS.

SAP HANA Data Warehousing Foundation — The Tools SAP HANA Data Warehousing Foundation is a family of tools that support intelligent data distribution and management for large scale data warehouses that are based on SAP HANA.

Figure 109: SAP HANA Data Warehouse Foundation

168

© Copyright. All rights reserved.

Lesson: Describing SAP HANA Data Warehousing Foundation

SAP HANA Data Lifecycle Management (DLM)

Figure 110: Data Lifecycle Management — A Key Requirement of a Data Warehouse

With this tool, you can explore your data across the entire landscape using graphical drilldown tools to identify tables that are appropriate for relocation. You can also use tools to forecast data growth to ensure you do not run out of memory or disk. Data can be distributed to the following destinations: SAP HANA Dynamic Tiering Sybase IQ over SDA Spark SQL for Hadoop Deletion Bin You create pre-defined relocation rules to define the conditions under which data should be moved and to where the data should be relocated. SAP HANA Data Distribution Optimizer (DDO) On a very large scale, SAP HANA landscape data is spread out and stored across various nodes. This can mean tables and partitions that are usually processed together, such as orders and returns, can often find themselves located on separate nodes. The problem here is that joins have to be carried out across nodes, which is not optimal for performance. Ideally tables that are processed together should be on the same nodes. The DDO tool provides analysis of the use of join paths so that it is easy to identify how tables have been processed together so they can be assigned to the same nodes for improved performance. SAP will release additional tools in the next releases to manage job schedules and monitor data warehousing activity.

© Copyright. All rights reserved.

169

Unit 5: Running Applications on SAP HANA

Note: DWF is not included in core SAP HANA platform, and may incur the purchase of an additional license. Also, DWF has its own release cycle and version numbering. As of July 2016 the latest release is DWF 1.0 SPS04

LESSON SUMMARY You should now be able to: ●

170

Describe SAP HANA Data Warehouse Foundation

© Copyright. All rights reserved.

Unit 5 Lesson 5 Describing the Basics of XS Applications

LESSON OVERVIEW In this lesson we will cover some of the basic concepts behind the creation of native SAP HANA applications using the XS engine. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe the basics of XS applications

Read and Write SAP HANA Data with XS Applications XS is a small-footprint application server, web server, and basis for an application development platform - that lives inside SAP HANA. XS is not a completely separate technology that happens to be installed on the same hardware server as SAP HANA. It is actually an extension of, and tightly integrated into, the SAP HANA Database. SAP have developed several applications that are built on XS (for example, SAP Operational Process Intelligence). With the release of SAP HANA SP5, XS became available for customers and partners who wish to develop their own SAP HANA-based applications. The rationale for XS is two fold as follows: ●



Simplicity - enable SAP HANA-based application development and deployment while minimizing architectural layers 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 (for example, 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 communications taking place inside one overall system, and same data types, provide performance advantages that no other application server can match when SAP HANA is the DB. SAP HANA even includes its own repository for content lifecycle management for all kinds of development artifacts and objects. The scope of applications that can be built using XS is pretty open: it is available for a wide range of application types, from lightweight small webbased applications to more complex enterprise applications. XS Engine Data Consumption The XS Engine within SAP HANA enables the development of custom applications. These applications can utilize data within SAP HANA views and the applications can also read and write to tables directly.

© Copyright. All rights reserved.

171

Unit 5: Running Applications on SAP HANA

Figure 111: XS Engine Data Consumption

The programming model when working directly with XS dictates that applications are designed in the following manner: front-end processing should generally be delegated to the browser (or mobile device) using HTML5 and Client-Side JavaScript. By far the vast majority of application logic, business logic, calculations, or any data-intensive operations should be implemented using SQL, SqlScript, or Calculation Engine (CE) functions. This way, the heavy lifting of application processing is performed in the DB, close to the data, and where SAP HANA is optimized for performance. This leaves a relatively modest role for the application server and web server part of the architecture (XS): mainly handling control flow logic, the “glue” that is necessary to tie together the user interface with backend DB processing. The technologies available for this purpose are Server-Side JavaScript, OData (Open Data Protocol), or XMLA (eXtensible Markup Language for Analysis). Using the Developer Perspective of the SAP HANA Studio, all of the aforementioned technologies can be utilized to build custom SAP HANA-based applications of all kinds. The XS Engine provides applications and application developers with access to the SAP HANA database using a consumption model that is exposed with HTTP. In addition to providing application-specific consumption models, SAP HANA XS also host system services that are part of the SAP HANA database, for example, search services and a built-in Web server that provides access to static content stored in the SAP HANA repository. You can use OData to enable clients to consume authorized data stored in the SAP HANA database. OData defines operations on resources using RESTful HTTP commands (for example, GET, PUT, POST, and DELETE) and specifies the URI syntax for identifying the resources. Data is transferred over HTTP using either the Atom (XML) or the JSON (JavaScript) format.

Note: To learn more about the details of how to develop applications on SAP HANA, you may want to consider the course HA450— “Application Development for SAP HANA”

172

© Copyright. All rights reserved.

Unit 5 Exercise 6 Write Data into SAP HANA Using an XS Engine Application

Exercise Objectives In this exercise, you will learn, from an end-user perspective, how you can write data into SAP HANA with a web-based application running on SAP HANA XS. Business Example You are accessing an XS Engine application in Google Chrome and you want to ensure that the application is writing the correct data to SAP HANA tables.

Note: In this exercise, when values include ##, replace these characters with your own student number. 1. Start Google Chrome and logon to the EPM demo content at http:// wdflbmt7215.wdf.sap.corp:8000/sap/hana/democontent/epm . Field

Value

User

STUDENT##

Password

Training1

2. Create a new sales order. 3. Select a business partner and create an order with two different products and different sales quantities, and note the sales order ID. 4. Ensure that the sales order has been created in the SAP HANA table: sap.hana.democontent.epm.data::SO.Header 5. Locate the product IDs of your sales order. 6. Ensure that the same product IDs have been written to SAP HANA table: sap.hana.democontent.epm.data::SO.Item .

© Copyright. All rights reserved.

173

Unit 5 Solution 6 Write Data into SAP HANA Using an XS Engine Application

Exercise Objectives In this exercise, you will learn, from an end-user perspective, how you can write data into SAP HANA with a web-based application running on SAP HANA XS. Business Example You are accessing an XS Engine application in Google Chrome and you want to ensure that the application is writing the correct data to SAP HANA tables.

Note: In this exercise, when values include ##, replace these characters with your own student number. 1. Start Google Chrome and logon to the EPM demo content at http:// wdflbmt7215.wdf.sap.corp:8000/sap/hana/democontent/epm . Field

Value

User

STUDENT##

Password

Training1

a) On the Windows desktop, navigate to Start→ All Programs → Google Chrome→ Google Chrome. b) Enter the URl provided. c) Logon using the details provided in the table. 2. Create a new sales order. a) Choose Sales Dashboard. b) Choose the Details tab. c) On the Details tab, choose New.

174

© Copyright. All rights reserved.

Lesson: Describing the Basics of XS Applications

Figure 112: Create A Sales Order

3. Select a business partner and create an order with two different products and different sales quantities, and note the sales order ID. a) From the Select a Business Partner drop down, select a business partner. and b) From the Select a Product drop down menus, select a product. c) Choose + to add product quantities to the sales order. d) Choose Create to save the order.

Figure 113: Sales Order Created

e) Take a note of the sales order ID. 4. Ensure that the sales order has been created in the SAP HANA table: sap.hana.democontent.epm.data::SO.Header a) In SAP HANA Studio, expand the Tables folder of the SAP_HANA_DEMO schema. b) From the context menu of the table sap.hana.democontent.epm.data::SO.Header , select Open Data Preview . c) Enter your sales order ID in the Filter Pattern input box of the Raw Data tab.

© Copyright. All rights reserved.

175

Unit 5: Running Applications on SAP HANA

Figure 114: Sales Order Data Preview

d) Ensure that you find your sales order and that today’s date is displayed in the HISTORY.CREATEDAT column. 5. Locate the product IDs of your sales order. a) In Google Chrome, select the row containing your sales order ID. b) Note the product IDs that you have created.

Figure 115: Sales Order Items

6. Ensure that the same product IDs have been written to SAP HANA table: sap.hana.democontent.epm.data::SO.Item . a) In SAP HANA Studio, expand the Tables folder of the SAP_HANA_DEMO schema. b) From the context menu of the table sap.hana.democontent.epm.data::SO.Item , select Open Data Preview . c) Enter your sales order ID In the Filter Pattern input box of the Raw Data tab, and choose Execute to re-execute the preview with the filter. d) Ensure that you find the same product IDs in the PRODUCT.PRODUCTID column

176

© Copyright. All rights reserved.

Lesson: Describing the Basics of XS Applications

Figure 116: Sales Order Item Data Preview

© Copyright. All rights reserved.

177

Unit 5: Running Applications on SAP HANA

LESSON SUMMARY You should now be able to: ●

178

Describe the basics of XS applications

© Copyright. All rights reserved.

Unit 5 Lesson 6 Describing the Purpose of the Business Function Library

LESSON OVERVIEW In this lesson we will cover the ready to use business functions supplied with SAP HANA. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Describe the purpose of the Business Function Library

Business Function Library (BFL) The Business Function Library (BFL) is a repository within SAP HANA that contains pre-built parameter-driven functions that developers can embed in their own applications. The functions were developed by SAP using the language C++. This library helps you develop compound business applications that are fully compliant and optimized for SAP HANA. It offers you the flexibility and efficiency to develop HANA-based applications with incredible performance. By using the library, you can achieve the following: ●

Significant performance improvement for applications



Simplification of application programming model

There is a dedicated reference guide at help.sap.com that covers all business functions and explains how to call them and pass parameters.

© Copyright. All rights reserved.

179

Unit 5: Running Applications on SAP HANA

Figure 117: Examples of Delivered Business Functions

LESSON SUMMARY You should now be able to: ●

180

Describe the purpose of the Business Function Library

© Copyright. All rights reserved.

Unit 5 Learning Assessment

1. What are the database query languages used by SAP HANA? Choose the correct answers. X

A ODBC

X

B JDBC

X

C MDX

X

D SQL

X

E ABAP

2. What is BICS?

3. Which of these tools must access SAP HANA via the Semantic Layer? Choose the correct answers. X

A Web Intelligence

X

B Analysis

X

C Design Studio

X

D Excel

X

E Dashboards

© Copyright. All rights reserved.

181

Unit 5: Learning Assessment

4. In which key areas can we expect there to be improvements when running SAP BW on SAP HANA? Choose the correct answers. X

A Tighter security

X

B Data loading performance

X

C Superior data quality

X

D Reporting performance

5. What is the name of the version of SAP BW that was built just for SAP HANA? Choose the correct answer. X

A SAP BW, powered by SAP HANA

X

B SAP BW, run by SAP HANA,

X

C SAP BW, edition for SAP HANA

X

D SAP BW, driven by SAP HANA

6. What is SAP HANA XS?

7. What is the Business Function Library? Choose the correct answer.

182

X

A SAP defined reusable building blocks for SAP HANA based applications

X

B An interface to allows fine tuning of business logic

X

C A list of published BAPIs that can be called from SAP HANA

X

D A dedicated SAP HANA engine optimized for business functions

© Copyright. All rights reserved.

Unit 5 Learning Assessment - Answers

1. What are the database query languages used by SAP HANA? Choose the correct answers. X

A ODBC

X

B JDBC

X

C MDX

X

D SQL

X

E ABAP

2. What is BICS? Business  Intelligence  Consumer  Service  —  an  SAP  internal  interface  used  for  high performance OLAP connectivity 3. Which of these tools must access SAP HANA via the Semantic Layer? Choose the correct answers. X

A Web Intelligence

X

B Analysis

X

C Design Studio

X

D Excel

X

E Dashboards

© Copyright. All rights reserved.

183

Unit 5: Learning Assessment - Answers

4. In which key areas can we expect there to be improvements when running SAP BW on SAP HANA? Choose the correct answers. X

A Tighter security

X

B Data loading performance

X

C Superior data quality

X

D Reporting performance

5. What is the name of the version of SAP BW that was built just for SAP HANA? Choose the correct answer. X

A SAP BW, powered by SAP HANA

X

B SAP BW, run by SAP HANA,

X

C SAP BW, edition for SAP HANA

X

D SAP BW, driven by SAP HANA

6. What is SAP HANA XS? A  lightweight  application  server  built  into  SAP  HANA  to  facilitate  a  simplified  two  tier application development approach. 7. What is the Business Function Library? Choose the correct answer.

184

X

A SAP defined reusable building blocks for SAP HANA based applications

X

B An interface to allows fine tuning of business logic

X

C A list of published BAPIs that can be called from SAP HANA

X

D A dedicated SAP HANA engine optimized for business functions

© Copyright. All rights reserved.

UNIT 6

Continuing your Learning Journey

Lesson 1 Developing your SAP HANA Knowledge

186

Lesson 2 Outling SAP HANA Interactive Education (SHINE)

193

UNIT OBJECTIVES ●

Develop your SAP HANA knowledge



Outline SAP HANA Interactive Education (SHINE)

© Copyright. All rights reserved.

185

Unit 6 Lesson 1 Developing your SAP HANA Knowledge

LESSON OVERVIEW In this lesson we will introduce the various follow-on courses and other educational resources to help you continue your SAP HANA learning journey. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Develop your SAP HANA knowledge

SAP HANA Follow-on Courses SAP HANA courses follow five tracks that align to the skills that are in demand in the marketplace. ●

Modeling — plus certification available.



Administration and operations — plus certification available.



SAP Business Warehouse (BW) on HANA — plus certification available.



Application development — plus certification available.



Data provisioning — no certification currently.

There are three modes for consumption of SAP courses: ●





Classroom — attend a public scheduled event at an SAP Training Centre, or have the class delivered privately on site. Virtual Live Class (VLC) — attend a public scheduled event from anywhere where you have an internet connection. You will be sent the course materials and the SAP HANA training system access details and you will be part of a 100% live event with the ability to ask question in voice or chat pods. E-learning — the very same class material as above but take the course in your own time as self study e-learning either to purchase as single item course or as part of a subscription to SAP Learning Hub where you can take any SAP e-learning courses, anytime.

Note: When you see references to ILT, this means Instructor Lead Training. A live instructor leads the event. Classroom and VLC events are both ILT. SAP Learning Rooms are SAP instructor lead collaborative communities that support you in your learning journey. You can ask questions relating to SAP HANA, watch additional videos posted by the instructors and read blogs from experts, attend regular live sessions covering hot topics and watch recordings. SAP Learning Rooms are ideal for students who are

186

© Copyright. All rights reserved.

Lesson: Developing your SAP HANA Knowledge

preparing for certification as there are assessments available to ensure your are ready for the exams. There are many different SAP Learning Rooms and they align to popular SAP topics such as SAP HANA modeling and SAP HANA development. The list of SAP Learning Rooms is provided later in this section. SAP Learning Rooms are available as part of a subscription to SAP Learning Hub at no additional cost. SAP HANA Modeling

Figure 118: SAP HANA Modeling

SAP HANA Administration and Operations

Figure 119: SAP HANA Administration and Operations

© Copyright. All rights reserved.

187

Unit 6: Continuing your Learning Journey

Note: There is also another exam, the E_HANAINS_xx, in this track that can be taken once C_HANATEC_xx is held. This additional exam tests user knowledge of SAP HANA installation best practices. This certification is a prerequisite to being allowed to install an SAP HANA system. SAP BW on SAP HANA

Figure 120: SAP BW on SAP HANA

In order to sit the E_HANABWxxx exam you must hold a current SAP BW certification. Please check our web site training.sap.com for more details.

188

© Copyright. All rights reserved.

Lesson: Developing your SAP HANA Knowledge

SAP HANA Development

Figure 121: SAP HANA Development

The exam focuses on ABAP development with SAP HANA. SAP HANA Data Provisioning

Figure 122: SAP HANA Data Provisioning

HA355 is a new course and is released Spring 2016. Check our web site for availability — training.sap.com.

© Copyright. All rights reserved.

189

Unit 6: Continuing your Learning Journey

SAP HANA — New Courses

Figure 123: SAP HANA — New Courses

HABO1 and HA400 are new courses and are released Spring 2016. Check our web site for availability — training.sap.com. Details for Each Course 1/2

Figure 124: Details for Each Course 1/2

190

© Copyright. All rights reserved.

Lesson: Developing your SAP HANA Knowledge

Details for Each Course 2/2

Figure 125: Details for Each Course 2/2

Learning Rooms

Figure 126: SAP HANA Learning Rooms

SAP Learning Rooms are SAP instructor lead collaborative communities that support you in your learning journey. You can ask questions relating to SAP HANA, watch additional videos posted by the instructors and read blogs from experts, attend regular live sessions covering hot topics and watch recordings. SAP Learning Rooms are ideal for students who are preparing for certification as there are assessments available to ensure your are ready for the exams. There are many different SAP Learning Rooms and they align to popular SAP topics such as SAP HANA modeling and SAP HANA administration. Here is the list of SAP Learning

© Copyright. All rights reserved.

191

Unit 6: Continuing your Learning Journey

Rooms. SAP Learning Rooms are available as part of a subscription to SAP Learning Hub at no additional cost. To find out more visit us online at training.sap.com.

Accessing SAP Training Systems The same training systems we use for all our SAP HANA classes are also available for you to use. To get started you will need an SAP Learning Hub subscription and to purchase an access voucher for the time period you wish to have the system available. Each system is a fully configured SAP HANA landscape and is not shared by others, it is a complete landscape just for you. Live Access is ideal when you want to work through all exercises in the classes, or just to work on your own idea, or prepare for certification.

Figure 127: SAP HANA Training System Access

We have fully configured training systems to support all these SAP HANA courses for your own personal access. LESSON SUMMARY You should now be able to: ●

192

Develop your SAP HANA knowledge

© Copyright. All rights reserved.

Unit 6 Lesson 2 Outling SAP HANA Interactive Education (SHINE)

LESSON OVERVIEW In this lesson we will introduce SAP HANA SHINE and describe how this can help with the development of SAP HANA skills. LESSON OBJECTIVES After completing this lesson, you will be able to: ●

Outline SAP HANA Interactive Education (SHINE)

SAP HANA Interactive Education (SHINE) SAP HANA Interactive Education, or SHINE, is a demo application that runs on SAP HANA and is developed by SAP. Application developers can use this demo model to discover 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.

Figure 128: SHINE

The delivery unit defines the following applications: ●

Enterprise Procurement Model Admin Console — This application lets you generate large quantities of data for testing.

© Copyright. All rights reserved.

193

Unit 6: Continuing your Learning Journey



Enterprise Procurement Model Sample Application — This is a sample Sales Order Dashboard and Purchase Order Worklist to show how you could construct similar native SAP HANA applications. It comes with its own sample data.

Note: Do not install SHINE on your productive SAP HANA system

LESSON SUMMARY You should now be able to: ●

194

Outline SAP HANA Interactive Education (SHINE)

© Copyright. All rights reserved.

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF