Sun N1 Advanced Architecture for SAP Solutions 5.2.1 User's Guide

Chapter 3 N1 AA Analyzer

This chapter describes the setup and usage of the N1 AA Analyzer module.

Overview

The Analyzer is a tool for capacity monitoring and planing. The concepts are:

Basic Setup

Analyzer Customizing

Purpose

Customizing for N1 AA Analyzer

Menu

Administration ⇒ Analyzer ⇒ Customizing

Tasks for an initial basic setup

All changes are optional

Figure 3–1 General Customizing for Analyzer

General customizing table with nine entries.


Note –

N1 AA Analyzer specific customizing is done here. The following parameters are supported:

Table 3–1 Analyzer Parameters

Parameter 

Description 

Example value 

none.analyzer.n1data.maxsizemb

Maximum size of the local Performance Collector file in MB. This file, /var/opt/SUNWn1aa/n1data, exists on every N1 AA client. The data import job reorganizes this file if it exceeds the customized size (log rotation).

The parameter none.analyzer.n1data.maxsizemb is server group spanning valid. This means that the value is set for all server groups.If the parameter servergroup.analyzer.n1data.maxsizemb exists, it overwrites the parameter none... within this specific server group.

Data Imports

Purpose

Import resource consumption data collected by the Performance Collector on the N1 AA Clients into the database

Menu

Administration ⇒ Scheduling

Tasks for an initial basic setup

Optional - but recommended

Even if you can trigger a data import into the database manually, see Maintenance, it is easier to schedule a regular data import job in the background. To do this, create an N1 AA scheduling job by using the following properties:

The data import is executed for each physical host that has the Data Import option enabled, regardless of the server group. For more information, see Customizing. Note that within this execution, existing repository information is assigned properly, while new repository information is automatically created using default properties which you have to maintain. Refer to the following table:

Table 3–2 Repository Information

New repository information 

Behavior 

Default properties 

New CPU type name or speed 

A new CPU type is being created. See CPU Types.

Normfactor = 1.0 

New SRM project 

A new component is being created. See Applications and Components.

Name = SRM project 

Application = None 

Reorganizations

Purpose

Reorganization of resource consumption data

Menu

Administration ⇒ Scheduling

Tasks for an initial basic setup

Optional - but recommended

Having too much informations in the N1 AA Analyzer cube (historical resource consumption data) slows down response times. Therefore, old data can be moved to an archive table contained in the N1 AA database, see Maintenance. It is your choice if this should be done periodically without user interaction. All you have to do is create an N1 AA scheduling job using the following properties:

CPU Types

Purpose

Maintain CPU normalization factors.

Menu

Administration ⇒ Analyzer ⇒ Customizing

Tasks for an initial basic setup

Mandatory - but can be done or changed at any time later on.

Figure 3–2 CPU Types

CPU types table with three entries.

The CPU types are automatically recognized in your landscape and corresponding entries are automatically created for each new CPU type as performance data is imported. Normally, there is no need to create or delete an entry manually. However, it is important to maintain the proper CPU normalization factor after a new entry was created automatically.

The outcome of normalization is that N1 AA stores all measured CPU utilization. Based on the Normfactor of the CPU type, N1 AA calculates and also stores normalized CPU seconds. In the simplest case, this is consumed seconds * Normfactor. In this way, MDX queries can be defined based on CPU seconds or normalized CPU seconds. See the predefined MDX Queries as an example of how to use either CPU seconds or normalized CPU seconds.


Note –

Exercise care when deleting CPU types. You lose all related resource consumption data that has been collected by the Performance Collector on the N1 AA Clients and imported into the database.


Applications

Purpose

Maintain applications in your N1 AA Analyzer landscape

Menu

Administration ⇒ Analyzer ⇒ Customizing

Tasks for an initial basic setup

Mandatory - but can be done or changed at any time

Figure 3–3 Applications

Applications table with four entries.

Maintain the applications of your landscape. An application is a group of components measured by the N1 AA Analyzer, see Components.

For example, the SAP system D01 is maintained here as the application SAP-D01. Later, you assign measured components to the application SAP-D01: An oracle database, an SAP central instance, and one or more SAP application servers.

The assignment of components to applications has an impact on how your MDX queries work. This impact is because each of them is based on the component/application model. For more information, see Views.


Note –

Be careful when deleting an application. You lose all subsequent components and all related resource consumption data that have been collected by the Performance Collector on the N1 AA Clients and imported into the database. In order to keep these components, assign them to another application.


Components

Purpose

Maintain components of your N1 AA Analyzer landscape.

Menu

Administration ⇒ Analyzer ⇒ Customizing

Tasks for an initial basic setup

Mandatory - but can be done or changed at any time

Figure 3–4 Components

Components table with nine rows.

Components are automatically recognized as running SRM projects in your landscape. Corresponding entries are created for each new component as performance data is imported. Normally, there is no need to create or delete an entry manually. It is important to maintain the following properties:

You are free to assign and reassign components to applications in any way. However, the assignment does have an impact on how your MDX queries work. This is because each of them is based on the component/application model. For more information, see Views.

Best Practice


Caution – Caution –

Deleting a component erases all related resource consumption data that has been collected by the Performance Collector on the N1 AA Clients and imported into the database.


Views

Overview

Once performance data (CPU and memory consumption of every component on every host of the N1 AA Landscape) are imported into the database, you can use MDX queries in the N1 AA Analyzer for reporting and graphical illustration.

You can use the predefined MDX queries delivered along with N1 AA, but you can also write your own queries.

Purpose

Reporting and graphical illustration of resource consumption. Capacity planing. Create, modify or extend reporting functionalities (MDX queries).

Menu

Server group⇒ Analyzer ⇒ Views

Use case

Daily business

Figure 3–5 Views

Views table with twelve rows.

MDX Queries

MDX is an abbreviation for Multi-Dimensional Expressions. This is a joint specification of the XML for Analysis founding members. MDX was created to query OLAP databases. MDX has become widely adopted within the realm of analytical applications.

To learn more about MDX, visit the Mondrian OLAP server home page at http://mondrian.sf.net. They have a comprehensive MDX specification including examples on how to write MDX queries.

Predefined MDX Queries

The N1 AA Analyzer comes with some predefined MDX queries allowing you to perform the most common analyses on your system landscape.


Note –

These queries are read-only, you can neither modify nor delete them. These queries are available in every server group.


Table 3–3 MDX Queries

View name 

Description 

Benefits 

CPU - Server group utilization 

Get a CPU utilization overview of your server group. Key utilization values are displayed and the load is qualified. The qualification itself is based on threshold values that are customizable in the N1 AA. See Basic Setup.


Note –

Find details of this query and especially the meaning of the customizable parameters in the Appendix A, MDX Queries.


Input/Usage

  • Specify the time frame

  • Select none, one or more servers

Quickly identify CPU bottlenecks or oversupply.  

MEM - Server group utilization 

Get a memory utilization overview of your server group. Key utilization values are displayed and the load is qualified. The qualification itself is based on threshold values, that are customizable. See Basic Setup.


Note –

Find details of this query and especially the meaning of the customizable parameters in the Appendix A, MDX Queries.


Input/Usage

  • Specify the time frame

  • Select none, one, or more servers

Quickly identify memory bottlenecks or oversupply.  

CPU - Application load distribution 

CPU consumptions of all components belonging to the specified application are displayed in relation to each other. Data basis are the normalized CPU seconds in the specified time frame.  

Input/Usage

  • Specify the time frame

  • Select one application

Find the main CPU consuming components of an application. 

MEM - Application load distribution 

Memory consumptions of all components belonging to the specified application are displayed in relation to each other.  

Input/Usage

  • Specify the timeframe

  • Select one application

Find the main memory consuming components of an application. 

CPU - Server load 

Display the used CPU seconds of every component along the specified timeline.  

Input/Usage

  • Specify the time frame

  • Select one server

Find the CPU capacity situation on the server. 

MEM - Server load 

Display the used memory of every component along the specified timeline.  

Input/Usage

  • Specify the timeframe

  • Select one server

Find the memory capacity situation on the server. 

CPU - Server load composition 

CPU consumptions of all components running on the specified host are displayed in relation to each other. Data basis are the CPU seconds in the specified time frame. 

Input/Usage

  • Specify the timeframe

  • Select one server

Find the main CPU consuming components running on the server. 

MEM - Server load composition 

Average memory consumption, in bytes, of all components running on the specified host are displayed. The None.Free value represents the free physical memory capacity and can be negative.

Input/Usage

  • Specify the time frame

  • Select one server

Find the main memory consuming components running on the server. 

CPU - Server load simulation 

What-If Analysis: Simulates the consolidation of application components on a target server. 

The output graphic displays the resulting CPU utilization on that server. The available server capacity is displayed as a horizontal line. All are based on the normalized CPU consumptions. 

Input/Usage

  • Specify the time frame

  • Select one target server

  • Select one or more application components

Reduce Risk: Simulate capacity situation before application consolidation. 

MEM - Server load simulation 

What-If Analysis: Simulates the consolidation of application components on a target server. 

The output graphic displays the resulting memory utilization on that server. The available server capacity is displayed as a horizontal line. All are based on the measured memory consumptions. 

Input/Usage

  • Specify the time frame

  • Select one target server

  • Select one or more application components

Reduce Risk: Simulate capacity situation before application consolidation. 

CPU - Server load simulation (incl. base load) 

Same as CPU – Server load simulation. The difference being that all component loads of application Noneexcept the None.Free value are left on the selected target server as some kind of base CPU consumption.

Input/Usage

  • Specify the time frame

  • Select one target server

  • Select one or more application components

Reduce Risk: Simulate capacity situation before application consolidation. 

MEM - Server load simulation (incl. base load) 

Same as MEM – Server load simulation. The difference being that all component loads of application None except the None.Free value are left on the selected target host as some kind of base memory consumption.

Input/Usage

  • Specify the time frame

  • Select one target server

  • Select one or more application components

Reduce Risk: Simulate capacity situation before application consolidation. 

Create Your Own MDX Queries

You can create and modify your own MDX queries. See Appendix A, MDX Queries for detailed information.

Healthcheck

Purpose

Check N1 AA Analyzers consistency

Menu

servergroup ⇒ Analyzer ⇒ Healthcheck

Use case

Daily business

The healthcheck monitor provides a status overview of your landscape. The healthcheck monitor displays the status of the Performance Collector daemons that are located on the N1 AA clients. The healthcheck monitor also shows if the data that has been recorded and imported into the N1 AA database, contains gaps or not.

Figure 3–6 Healthcheck

Healthcheck table with two rows.

Based on the health of these checklist items, the following state and data basis alerts can be displayed.

Table 3–4 States and Alerts

State 

Description 

Updated timestamp

All okay – The Performance Collector daemon is running and data is written at timestamp.

Minor alarm iconUpdated timestamp

Minor – The Performance Collector daemon is running and data is written locally at timestamp, but no data is imported into the database. This could be a temporary problem that occurs prior to your first data import. However, check whether data imports are scheduled correctly. For more information, see Basic Setup.

Major alarm iconUpdated timestamp

Major: The Performance Collector daemon is running and data is written locally for the last time at timestamp, but the data in the database is older than one day. Check whether data imports are scheduled correctly. For more information, see Basic Setup.

Critical alarm iconNot updated since timestamp

Critical: Host is up, but the Performance Collector daemon has not written any local data since timestamp. There is a problem with the daemon. For more information, see the Sun N1 Advanced Architecture for SAP Solutions 5.2.1 Installation Guide.

General alarm icon Unknown

General: Host is down or Performance Collector data cannot be accessed. Since connection attempts are unsuccessful, no further information about the daemon state can be given. There could be a problem with the host, the daemon, or the network. For more information, see the Sun N1 Advanced Architecture for SAP Solutions 5.2.1 Installation Guide.

Table 3–5 Data Basis

Data Basis 

Description 

Start at timestamp

End at timestamp

All okay: Data basis, in the database, extends from timestamp to timestamp.

Critical alarm iconStart at timestamp

Gap from timestamp to timestamp

End at timestamp

Critical: Data basis, in the database, extends from timestamp to timestamp, but contains gaps from timestamp to timestamp. You will discover these gaps when executing analyses and displaying results. For more information, see Views.

Maintenance

Cube

Purpose

Invalidate N1 AA Analyzer cube data cache

Menu

Administration ⇒ Analyzer ⇒ Maintenance

Use case

Exceptional circumstances

You can use the Invalidate button to clear the N1 AA Analyzer cube data cache in memory. This cache is built up during execution of N1 AA Analyzer analyses and significantly increases analysis performance. It is valid only while no change happens to the underlying N1 AA Analyzer data and repository data in the database. Generally, the N1 AA Analyzer does all the cache management itself, so there is no need to invalidate it manually. Only use this function in case you had changed the N1 AA database manually and want to get rid of the memory-mirrored old cache data.

Reorganizations

Purpose

Manually archive or unarchive historical N1 AA Analyzer data

Menu

Administration ⇒ Analyzer ⇒ Maintenance

Use case

Weekly or monthly business. Only needed if no reorganization is already scheduled as job in the background.

By entering a start and end timestamp and pressing the Archive or Unarchive button, a reorganization is executed through a newly created ArchiveUnarchiveJob job. In general, keeping the N1 AA Analyzer database small, offers maximum analysis performance. However, besides all regularly scheduled reorganization runs you can move data into an archive table (technically between database tables ResourceConsumption and ResourceConsumptionArchive) without limitation. Additionally, to keep the database clean, you can export or import the archive and vacuum the database using PostgreSQL database tools. Note that while an ArchiveUnarchiveJob is running, both the Archive and Unarchive buttons are disabled.

Imports

Purpose

Manually import N1 AA Analyzer data

Menu

Administration ⇒ Analyzer ⇒ Maintenance

Use case

Daily business. Only needed if no import is already scheduled as job in the background.

By clicking the Execute button, an N1 AA Analyzer data import is started. The data, that had been previously written locally by the performance collectors, is imported into the N1 AA database. If a regular data import is not scheduled by a persistent AnalyseDataImportJob job, a new transient job is created and executed automatically. For more information, see Scheduler. Otherwise, the persistent job is used for this execution. The advantage of this behavior is that all log lines of this manual data import job are appended to the jobs normal log along with the scheduled job lines and saved to the database. Note that while an AnalyseDataImportJob job is running, the Execute button appears disabled.