This documentation supports the 21.05 version of BMC Helix ITSM: Smart Reporting. To view an earlier version, select the version from the Product version menu.

Optimizing Smart Reporting performance

BMC Helix ITSM: Smart Reporting(Smart Reporting) provides various options to optimize performance of the Smart Reporting application. For ensuring optimized performance, set the required parameters based on the recommended values. For more information, see List of recommended parameter values.

Planning for performance based on your deployment infrastructure

Multiple deployment options are available to achieve optimal performance for Smart Reporting.

For information about the available options, see  BMC Helix Innovation Suite deployment architecture Open link  in the BMC Helix Innovation Suite documentation.

Setting data restrictions at multiple levels

You can ensure that performance issues do not arise for other components of AR System when using Smart Reporting by restricting the data to display and governing reporting requests. Data restrictions are applied in the following order:

  1. AR System restrictions
  2. Smart Reporting data source restrictions
  3. Smart Reporting view-level restrictions
  4. Smart Reporting report-level restrictions
  5. Smart Reporting data source connection restrictions

You can configure the following options to manage the performance of Smart Reporting and AR System server:

To configure data source connection restrictions on Smart Reporting

  1. Log in to Smart Reporting as an administrator.
  2. Select Administration > Admin Console.
  3. Open the Data Sources panel.
  4. Click the connection.
  5. On the Connection page, open the Connection Pool panel.
  6. To optimize data source connections, complete the following steps:
    • In the Min Connections and Max Connections fields, enter values to designate the number of connections to use from within a connection pool.
      Consider the following example: 
      When you set the maximum connections to 5, only 5 connections will be allowed. When a user accesses a report, one connection is used. However, if a user accesses a Dashboard that lists three reports, three connections are used. Set the value of Max Connections to restrict the number of connections that Smart Reporting can use. When the maximum number of connections is reached, other users cannot access the source until these reports have completed processing.

      Note:

      Increasing the value of Max Connections does not affect Smart Reporting performance unless many users access a large number of reports.

    • In the Refresh Time field, enter the time (in hours) after which database connections are refreshed.
      The refresh recycles the connections after the set period. Recycling ensures that no connections are stale or left open even though the user is no longer using them.
    • In the Timeout field, enter the time (in seconds) allowed for the SQL statement to return results.
      The value defined should be able to accommodate the queries run against the data source.
  7. To configure restrictions forSmart Reporting query results, complete the following steps:

    1. Open the Usage Parameters panel.
    2. Turn on the Max Rows Returned toggle.
    3. In the Max Rows Returned field, enter the maximum numbers of query results you want returned.
  8. Click Save.

To configure view-level restrictions for data to be displayed

Define view-level data restrictions for specific modules that are expected to return a large number of records. For example, if your change management reports are not expected to return many records, but your incident reports will return many records, you can define view-level settings for the Incident Management view.

  1. In Smart Reporting, open a view in Edit mode.
  2. Click View Optionsin the toolbar.
  3. Open the Performance panel, modify the View Row Limit parameter.
    This parameter sets the limit for rows returned from the database.

To configure AR System for setting restrictions on Smart Reporting data

  1. Log in to AR System.
  2. Select Applications > AR System Administration> AR System Administration Console.
  3. Select System > General > Server Information.
  4. On the Configuration tab of the Server Information page, modify the value of the Max entries returned by GetList field.
    This field sets a row limit for any query sent using the JDBC driver.

Tip

To overwrite the AR System server row limit settings, set a parameter in the JDBC Connection string. In the AR System data source, add a rowLimit parameter, which overrides the system settings and returns the specified number of result set, as shown in the following example:

jdbc:arserver://VW-PUN-ATM-DV33:0;mode=new;rowLimit=6000

To configure the data connection limit on Smart Reporting

Configure the Smart Reporting Connection settings to define restrictions on the data connection to the AR System server. The Custom Parameters for the Smart Reporting data connection settings allows you to control the data returned from the AR System server depending on expected volume of data being retrieved for Smart Reporting.

  1. Log in to the Mid Tier as an administrator, and launch the Mid Tier.
  2. Open the Smart Reporting console.
  3. Select Administration > Admin console > Data sources.
  4. Open the AR System data source.
  5. On the Connection panel, update the row limit in the Custom Parameters field, such as mode=new;refreshCache=60;rowLimit=10000.
  6. Click Test Connection
  7. Click Save.

Additionally, you can also restrict the number of rows that can be retrieved from the AR System database by using the CCS parameter named Jdbc-Row-Limit. The default value of this parameter is 10,000. However, an administrator can change this value as required based on the data volume.

When retrieving records from the database, the lower value of either the Jdbc-Row-Limit parameter defined in AR System or rowLimit parameter defined in Smart Reporting is considered.  For example, if  Jdbc-Row-Limit has value 5000 and rowLimit has value 3000, the maximum number of rows that will be retrieved from the database is 3000. Similarly, if Jdbc-Row-Limit has value 4000 and rowLimit has value 5000, the maximum number of rows that will be retrieved from the database is 4000.

See the following table for more examples of how you can use the row_limit and Jdbc_Row_Limit parameters to control the maximum number of records retrieved from the database:

row_limit

Jdbc_Row_Limit

Maximum number of records retrieved

5000

Not Defined

5000

5000

3000

3000

Not Defined

3000

3000

5000

7000

5000

5000

1000

1000

Important

If you are a BMC Helix ITSM user, you can find the Jdbc-Row-Limit parameter in the Centralized Configuration console, under the component com.bmc.arsys.server.shared. If you are a Smart Reporting user and want to use this feature, you must add the Jdbc-Row-Limit parameter in the Centralized Configuration.


For more information about the Jdbc-Row-Limit parameter, see Centralized configuration Open link in AR System online documentation.

List of recommended parameter values

For optimized performance, we recommend setting the following values for different parameters as required.

ParameterDescriptionMinimum/default valueMaximum value
JDBCMaxCount

Maximum number of connections to the Smart Reporting database.

25300
JDBCMinCount

Minimum number of connections to the Smart Reporting database.

250
JDBCTimeoutTimeout of JDBC Connections in seconds.3001800
JDBCRecycleJDBC Connection refresh or recycle time.10800NA
JDBCFetchSize

Default Fetch size for connecting to the Smart Reporting configuration database.

1000NA
JDBCVerify

Checks the Smart Reporting database connection by returning the schema.

TRUENA
JDBCNoLockApplies NO LOCK to some database queries when using MS SQL Server.TRUENA
PSCacheSizeNumber of Prepared Statements to cache per connection (maximum). 20NA
IsolationLevel

Isolation Level for connecting to the Smart Reporting configuration database.

SerializableNA
DisableHeatBeatDisables heartbeat (periodic queries) against the Repository database.FALSENA
ReportCacheSizeSize of report result set cache in bytes.2020
ReportCacheMaxAgeThe maximum age of result sets in the report result cache in milliseconds.8640000086400000
ImageCacheMaxBytesMaximum size of image memory cache in bytes.52428800(50 MB)52428800(50 MB)
ReportDefinitionCacheSizeNumber of result sets to store in the report result cache.1000
ReportDefinitionCacheTimeoutMaximum time in milliseconds to store a report definition in the cache86400000
GeometryCacheSizeDefines how many items are allowed in the cache. GeometryCache is initialized with this size. The default size is 4000.4000

DashboardDefinitionCacheSize

Number of definitions that can be stored in the cache.1000
DashboardDefinitionCacheTimeoutMaximum timeout in milliseconds for an element in this cache.86400000
TranslationCacheSizeThis specifies how many translation objects should be cached in memory.5000
TranslationCacheMaxAgeMaximum timeout in milliseconds for an element in this cache.86400000
CachedFilterCacheMethod

Filter methods for data stored in cache. You can specify one of the following values for CachedFilterCacheMethod:

NO_CACHE: No memory caching. Data is loaded from the database each time an hierarchy is requested.
CACHE_BY_USER: Cache values by user.
CACHE_BY_SOURCE_FILTER: Cache by different source filter values.

CACHE_BY_USER
CachedFilterCacheSizeNumber of cached filter entries that can be stored in the cache. Unless source substitution or source filters are in use, their is one entry per filter hierarchy. If source substitution or source filters are in use, their may be one entry per user, or source filter value depending on the cache method. Each entry stores the available values for each filter in the hierarchy. 100
CachedFilterCachePeriodMaximum timeout in milliseconds for an element in this cache.86400000
ExecutionQueueConcurrentTasksNumber of reports that can be run concurrently.10
ExecutionQueueInitialWaitTimeDuration in seconds for which the server will wait to finish a report before the client shows the delivery popup and starts polling.5
ExecutionQueueMaximumExecutionTimeMaximum time in minutes the reports can run in the execution queue before they are terminated.240
DisableTaskSchedulerIndicate whether the task scheduler is active.FALSE
DisableTaskSchedulerPollingSet to allow or prevent a node from becoming a Master node.FALSE
TaskSchedulerThreadsNumber of tasks that can run concurrently.5
TaskSchedulerMaxThreadQueueMaximum number of tasks allowed to wait to be executed, if all threads are currently being used. If the value is set below the number of threads, the system will always allocate at least the same number of slots in the queue as the number of threads.20
MaxThreadsPerTransformationPreviewJobNumber of threads that will be available for each Data Transformation Flow, for internal processing in Preview (edit) mode.2
MaxBackgroundTransformationThreadsNumber of threads that will be available for all Data Transformation Flows, for internal processing during background execution.2

Where to go from here

Setting up audit reports in Smart Reporting

Was this page helpful? Yes No Submitting... Thank you

Comments