Data Warehouse (DWH) Management

To set up a DWH, a running ConSol CM Reporting Framework (CMRF) instance is required. If your system does not include a CMRF yet, please consult your ConSol CM manager or contact ConSol Software.

Introduction

Data Warehouse

A data warehouse (commonly known as a DWH) is a collection of data from one or more systems and/or databases that provides a basis for reporting and data analysis. Often, imported data is combined or rearranged (integrated) to make it more suitable for reporting and analysis purposes. A more detailed introduction to the data warehouse principle and to the ConSol CM data warehouse is provided in the ConSol CM DWH Manual.

ConSol CM Data Warehouse and ConSol CM Reporting Framework

A ConSol CM default installation comprises all modules that are required to build a CM data warehouse. One of the two core components is the ConSol CM Reporting Framework (CMRF).

This is a Java EE application which synchronizes the data between a ConSol CM database and a DWH database. The following picture shows an overview of the system architecture of a typical DWH/CMRF installation. We recommend that you use separate servers for the ConSol CM and CMRF instances. Please refer to the current System Requirements for information about the supported application servers and RDBMS.

Figure 333: ConSol CM - System architecture with DWH and CMRF (2 servers)

There are two different synchronization modes for transferring data from ConSol CM to a DWH database:

Only data from ticket fields, customer fields, and resource fields with the annotation reportable = true will be synchronized with the DWH. In addition, all data which will be transferred as default will be transferred to the DWH. For a detailed explanation, please refer to the ConSol CM DWH Manual.

DWH Management Using the Admin Tool

To manage the DWH, use the navigation items in the navigation group Data Warehouse:

Administration

For the administration of all DWH operations, open the navigation group Data Warehouse, navigation item Administration.

Figure 334: ConSol CM Admin Tool - DWH, Tasks: Configuration and logs

On the left hand side, the table Actions is displayed which lists all DWH operations which have been performed or which are still running.

You might want to filter the list by one or more of the filters above the list. The filter criteria will be combined by an AND.

A very elaborated explanation of the ConSol CM DWH transfer processes is provided in the ConSol CM Operations Manual, section CMDB / CMRF/ Data Warehouse Synchronization Process. In the following section in the current manual, only short information will be provided.

The list contains columns and values which are retrieved from the CM database table cmas_dwh_synchronization.

Below the list, the following buttons provide all possible DWH actions: 

IMPORTANT BACKGROUND INFORMATION ABOUT DWH OPERATIONS

Please be aware of the ConSol CM/CMRF behavior with regards to operations for the DWH!

When you click one of the buttons Initialize, Transfer or Update, an operation with this type will be created as an entry in the ConSol CM database table cmas_dwh_synchronization. Each click on a button creates a new operation of the respective type. The operations are then executed one after another in the order of their creation, i.e., in FIFO (first-in-first-out) order! You can monitor all these actions in the Administration panel.

On the right hand side of the Administration panel, the Details section is displayed which lists all details of the action which is selected in the list.

Basic DWH Configuration

Before you can set up a ConSol CM DWH you have to prepare a database (or database schema) which will contain the DWH data. The respective database server has to be available for the CMRF server. For a detailed description of those topics, please refer to the ConSol CM Setup Manual. Once the database (or database schema) for the DWH has been prepared and the CMRF is up and running, you can continue with the following steps.

In order to configure the DWH synchronization mode and the DWH-relevant notifications, open the navigation group Data Warehouse, navigation item Administration. Click on the Configuration button and enter all required values.

Figure 335: ConSol CM Admin Tool - Data Warehouse, Administration: DWH configuration

You can also see the current DWH mode by looking at the corresponding DWH system property cmas-dwh-server, dwh.mode(see System Properties).

Figure 336: ConSol CM Admin Tool - System property for DWH mode

Initialization of the DWH (Initialize)

When the basic configuration has been performed, the DWH initialization can be started. Click the Initialize button. A new DWH action of type INITIALIZATION will be entered in the list.

During this step, the database structure in the DWH is created with all tables and relations. No data will be transferred yet.

If the DWH has been in operation and has to be set-up a second time, a reinitialization has to be performed. Check the Delete existing data option in order to delete the old database structure and create a new one.

First DWH Synchronization (Transfer)

To fill the data warehouse with the ConSol CM data for the first time, click Transfer. The initial transfer is started. Depending on the number of tables, this might take some time (even several hours). You can follow the log entries by opening the cmrf.log file using the Log button.

For each Transfer operation, several parameters can be set, see section Parameters for Transfer and Update Operations.

The action Transfer should only be used directly after initialization, as this deletes all existing data from the standard tables and deletes all custom tables! For large databases this (transfer) can lead to problems concerning the available space on the database server due to a very large transaction log volume.

DWH Synchronization During System Operation (Update)

For each Update operation, several parameters can be set, see next section (Parameters for Transfer and Update Operations).

System running in ADMIN mode

If the DWH is running in ADMIN mode, the DWH administrator has to start the update manually by clicking Update. When the Update button is clicked, a new task of type Update will be created for the operation. This task will appear in the list in the Tasks panel (navigation item Tasks). Then all data that are supposed to be transferred, i.e., data from fields with the reportable = true annotation that have been added or changed since the end date of the last Transfer or Update action, are transferred.

If a ticket field, customer field or resource field did not have the reportable annotation at the time of the last transfer and has it now, the corresponding content of the field from all tickets, customers and resources is transferred.

System running in LIVE mode

In case the system is running in DWH live mode, the task of type Update is created and managed as mentioned for the ADMIN mode. Additionally, the LIVE mode will be suspended for the time of the update and will be reactivated automatically when the update is finished.

Notes for ADMIN and LIVE mode

Do not remove the annotation reportable = true for any field without being absolutely sure that the data is not required in reports any longer! If you remove a field that is used in reports and/or data cubes, the reporting will fail at run-time!

The DWH Update can also be started via command line or script. In this case you have to use a tool which can access the ConSol CM MBeans via command line, e.g. Twiddle for JBoss. The MBean to use is consol.cmas.global.dwh.synchronizationService. The command (method) is update.

The following command line shows an example command with Twiddle. Twiddle as standalone installation.

$TWIDDLE_STANDALONE_HOME/bin/twiddle.sh -s service:jmx:remoting-jmx://127.0.0.1:9999 invoke consol.cmas:type=admin,topic=global,name=dwh.synchronizationService update

Please note that the CM package size, the CMRF cache size, and the retry counts cannot be set using the MBean. The default values will be used.

Parameters for Transfer and Update Operations

For each Transfer or Update operation, several parameters can be set in the pop-up menu which is opened when the Transfer or the Update button has been clicked.

Figure 337: ConSol CM Admin Tool - Data Warehouse, Administration: Configuration of a transfer operation

Select predefined configuration for the individual job to start:

When you click one of the buttons, the parameters for the other fields (e.g. package size) are loaded into the fields from the respective configuration. No operation is started yet. You can further modify the values for the planned operation.

The following fields are available: 

Please do not use the Advanced Configuration options unless clearly instructed by a ConSol representative to do so!

The parameters offered in the section Advanced Configuration for setting a date interval to be covered by the job should not be used without very clear understanding of the consequences. It could lead to an inconsistent data warehouse. They should be only used when specifically advised with detailed instructions by ConSol support or ConSol CM consulting.

DWH Tasks

If there are due or active DWH tasks, this will be indicated in the Admin Tool, see following figure. The navigation group Data Warehouse shows an exclamation mark so that even when this navigation group is closed you will know that there are active tasks. The number of active tasks is indicated at the navigation item Tasks.

Figure 338: Indication of active DWH tasks in the Admin Tool

The list Current tasks contains columns and values which are retrieved from the CM database table cmas_dwh_task.

In the list of Current tasks, you will find entries (one entry per task) if ...

If the checkbox Automatic commit of administrative changes has not been checked, the tasks will remain in the status "ready for execution".

You can mark one or more tasks in the list and execute them manually (Run tasks button).

If the checkbox Automatic commit of administrative changes has been checked, the tasks will be run automatically by the system. The execution can take several minutes.

There are some special cases to consider:

DWH Monitor

To open the DWH Monitor, use the navigation group Data Warehouse, navigation item Monitor.

Figure 339: Consol CM Admin Tool - Data Warehouse, Monitor: DWH Monitor

The DWH monitor provides a quick overview of all DWH parameters. The date of the current snapshot is indicated at the bottom right of the screen.

The following parameters are displayed: 

DWH Troubleshooting and Repair

If any errors have occurred during initialization, transfer, or update, the log entries are displayed in the log panel which is opened with the Log button .

You can also check the original log file in <JBOSS_HOME>/standalone/log/cmrf.log.

Please note that these are the standard paths. They may be configured to use different paths in the file cm6-cmrf.xml file. A detailed description of CM logging and log files is provided in the ConSol CM Setup Manual and the ConSol CM Operations Manual.

Usually the log file and/or log panel entries give good hints regarding the initial reason for a transfer failure. If you run into a problem you cannot resolve and you have a maintenance contract with ConSol, please contact our support team.

For more details on Troubleshooting and Repair see section CM / CMRF / DWH Synchronization: FAQs and Tips for Troubleshooting in ConSol CM Operations Manual

DWH-Related System Properties

A list of all system properties which are relevant for a specific DWH configuration can be found in section CMRF & DWH Configuration of the System Properties chapter.

Transfer Mode

All data which has been annotated as reportable = true has to be transferred to the Data Warehouse. This is performed by ConSol CM and the CMRF.

In ConSol CM versions 6.11. and up, there is one transfer mode:

The mode is set using the system property cmas-dwh-server, communication.channel. Possible values are:

In DIRECT mode, the CM server sends messages to the CMRF by using direct access to database tables in the DWH database:

CM is able to do that because in DIRECT mode, the CMRF datasource is made accessible for ConSol CM as well, i.e.

The CMRF server reads the entries from the tables and writes the data into the DWH.

Expert DWH Information

Creating DWH Cubes

The ConSol CM API includes methods to create, update and delete cubes on the DWH database using task scripts. The created cube contains the following information:

Optionally, the cube can be configured to contain:

The IDs used in the cube are the IDs from CMRF, not the IDs which the objects have in ConSol CM.

The following settings can be made for the cube:

The methods belong to the classes DwhCubeService and DwhCube. The following example shows a task script to create a cube.

def onInitialize(taskDescriptor) {}

 

def onExecute(taskDescriptor) {

DwhCube cube = new DwhCube()

cube.setViewName("cube_all")

cube.setQueues(queueService.getAll())

cube.setContactCustomFields(true)

cube.setCompanyCustomFields(true)

cube.setLocale(Locale.GERMAN)

dwhCubeService.create(cube)

}

 

def onError(taskDescriptor) {}

def onCancel(taskDescriptor) {}

The cube must be updated using the dwhCubeService.update(cube) method if there are changes to reportable annotations or localized labels of data fields / enum values. Otherwise, there changes are not reflected in the cube.

Localization of Static DWH Tables

The static DWH table can include database columns for the localized values of some entities. This means that the localized descriptions of the entities can also be transferred to the DWH. The following example shows the fields in the Admin Tool and in the DWH for projects in ConSol CM.

Figure 340: ConSol CM Admin Tool - Global Configuration, Projects: Localized values of a project

Figure 341: DWH table with localized values

By default, the transfer of the localized values is disabled, as it can significantly increase the duration of the DWH updates. You can enable the transfer of the localized values using the Java system property cmrf.localization.enabled.

Add the parameter -Dcmrf.localization.enabled=true to the CMRF start command. A DWH update is required to fill the corresponding columns.

Example start command with localization enabled:

nohup $JBOSS_HOME/bin/standalone.sh --server-config=cm6-cmrf.xml -b=0.0.0.0 -Dcmrf.localization.enabled=true

Setting cmrf.localization.enabled to true can increase the runtime of DWH updates significantly.

For a detailed explanation, please see also the ConSol CM DWH Manual.

MBeans for DWH Management

The MBean dwh.admin.service, in consol.cmas.admin.global, provides access to the DWH mode (OFF |ADMIN | LIVE) . The two methods getMode() and setMode() are available.

The MBean can be accessed using graphic tools, e.g., JConsole for JBoss.