System Registry Settings

All BI server settings are saved in the HKEY_LOCAL_MACHINE registry key, in the following subkey:

In the key HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0, additional subsections and keys that are used both in BI server and Foresight Analytics Platform desktop application work can be created:

These sections include subsections, for which different parameters can be set.

NOTE. All parameters created in these subsections have string type. The parameters that take only numeric values can be created with the DWORD or QWORD type.

Registry file example: settings_reg.zip.

The System Section

Parameters impacting the session functioning with repositories are created in the HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\PP\BIS\System\Session subsection:

Parameters

Description

RWLockSlim

Locks access to open object instances.
Available values:
0 (default) - write lock is enabled.
1- the object is locked separately for read and write operations, concurrent read access by multiple threads is possible.

LockSession

Locks the entire session on processing requests. When the lock is enabled, requests to all objects within the session are executed one by one, otherwise they are executed concurrently, or individual locks are used (RWLockSlim).
Available values:
0 (default)
- the lock is disabled.
1 - the lock is enabled.

LockAd

Locks access to open dashboard instances. When the lock is enabled, read/write requests are executed consecutively, otherwise they are executed concurrently. The lock is also enabled for nested objects accessed using the dashboard moniker.
Available values:
0 (default) - the lock is disabled.
1 - the lock is enabled.

SamplingStr

Enables gathering time and memory statistics for performance counters.
Available values:
IsOn - enables statistics collecting.
Memory - measures memory, spent on an operation.
Time - measures time of an operation.
Sql - gathers statistics of executing SQL queries to the repository database.
Cube - gathers cube execution statistics (building cube matrix according to the received selection).
Pivot - gathers statistics on working with pivots for building express report tables.
Sheet - gathers statistics on working with express report data tables.
Dim - gathers statistics on building dimensions used in various repository objects.
Rub - gathers statistics on building a time series database (getting series data according to the specified period).
Laner - gathers statistics on working of the table with the workbook data.
Report - gathers statistics on regular reports calculations.
RepSheet - gathers statistics on regular report sheets calculations.
RepDataIsl - gathers statistics on data areas calculations.
RepTabIsl - gathers statistics on relational data areas calculations.
Fore - gathers statistics on work of macros and event handlers in regular reports.
The IsOn checkbox is always specified, otherwise the statistics is not gathered. Other checkboxes that indicate, which counters must be used, are listed and separated with commas. Specifying only the IsOn checkbox equals to selecting all checkboxes.

Sampling

Enables gathering time and memory statistics for performance counters.
Available values:
1 - gather statistics only for operations (times of execution, timing, and so on).
On - gather all statistics (on requests, on operations, memory/timing). This parameter is outdated, use the SamplingStr parameter instead.

SysLogMb

An identifier of a repository, which contains system tables to store gathered statistics (Creating system tables to gather statistics is executed by means of the PP.Util.exe utility).

TimeoutSec

Period of inactivity (no requests), after which a session with repository is closed. The period of time is set in seconds in the range [60, 127800]. When the value is set to -1, the timeout period is not limited. Default value is 1800.

Statable

Object state save and restore mode at state server. It is used with the StateServer settings group.
Available values:
Never or 0 (default) - do not save or load objects' states.
Yes or 1 - save on change, load if not available in the session.
Ever - save on change, and always load.

KeyIncr

Generates consecutive session and object monikers.
Available values:
0 (default) - generate monikers via GUID.
Yes or 1 - generate consecutive monikers (for example, S1!M).

StoreBins

Sets a limit for the number of export results stored at the server with each object (for express reports and regular reports).
The default value is 0, but the number of saved results is not limited.

StoreBinSize

Maximum total size of loaded binary objects within the session. The size in indicated in bytes by default. If B, K or M Latin character is specified after the value, the value size is set in bytes, kilobytes, or megabytes respectively. The default value is 0, and the loaded volume is not limited.

PoolMaxConnections

 

Sets a limit to the number of repository database connections.
Available values:
0 (default) - do not reuse connections, always use the new one.
<0 - reuse without limit to the number (add a new connection if there are no free connections).
>0 - reuse with the limit to the number of connections specified in the parameter.

NOTE. The PoolMaxConnections parameter is outdated, it is kept to maintain compatibility with earlier versions of Prognoz Platform. Use the MaxConnections parameter in the HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\PP\BIS\System\Pool registry subsection.

Other System subsections to set up BI server:

Subsection Parameters
HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\PP\BIS\System\Pool

This subsection is used to create parameters that affect operation of BI server application pool.

  • MaxConnections. Maximum number of pool connections. Available values:

-1 - connection pool is enabled.
0 - connection pool is disabled.
Value is greater than zero - connection pool is enabled, the maximum number of connections is set (by default it is limited to 50 connections).

  • Strategy. Algorithm for discarding connections from the pool when it is required to free space for a new connection.
    Available values:

LRU - algorithm of replacing the least recently used connections (LRU algorithm).
Balance or Default - discarding based on the ratio number of open repositories/number of open database connections.

  • UserMaxConnections. Maximum number of connections created with the same account. The default value is 0, and the number of connections is unlimited.
  • RetryCount. The number of attempts of connection business check. Available value - [1; 1600], by default there are 160 attempts.
  • RetryInterval. Interval between attempts in milliseconds. Available value - [10; 4000], by default, it is 400 milliseconds.

Additional subsections that contain parameters for specific repositories can also be created in the Pool subsection. A created additional subsection must have a unique name. It can be used to create the following parameters:

  • Db. Parameters of user connection in the following format: {user name}:{metabase_identifier}@{DB_server}.
  • UserMaxConnections. Maximum number of connections with the specified repository using the specified account.

NOTE. Connection pool parameters are applied, if the MaxConnections parameter value is greater than zero.

HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\PP\BIS\System\StateServer

Parameters of connection to state server.

  • Type. State server type. Depending on the software in use, the following values are available:
    MemCached (default).
    Redis.
  • Host. Name or IP address of the state server (Localhost by default).
  • Port. Number of the port to be used for connection (if the value is -1, the default port is used: 11211 for MemCached and 6379 for Redis).
HKLM\Foresight\Foresight Analytics Platform\9.0\PP\BIS\System\Cert

This subsection stores private key of the security certificate. Parameters of this registry subsection are created at the runtime of PP.Util.exe application.

  • Alg. Encryption algorithm.
  • Data. Encrypted private key of the security certificate.
  • Id. Security certificate identifier.
  • Key. Security certificate GUID.

IMPORTANT. Parameters of this subsection must not be edited manually.

HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\PP\BIS\System\Mbs

Parameters of objects for statistics gathering. In this subsection the user needs to create additional subsections with names matching repository identifier. A parameter can be created in each additional subsection:

  • StatKeys. Keys of individual repository objects listed via comma, which will be used to gather information for performance counters.
HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\PP\BIS\System\OAuth

Parameters of work via OAuth 1.1 and OAuth 2.0 protocols for user authentication on external servers supporting the protocol. To set up inside OAuth, subsections with OAuth servers names are created. Each subsection has its own specific parameters. The following parameters of OAuth servers are available:

  • OAuth 1.1:

    • PPUserNameFormat. User name format, for example, "oa-tw-%s".

    • ConsumerKey. Registered application key.

    • ConsumerSecret. Secret code of the registered application.

  • OAuth 2.0:

    • PPUserNameFormat. User name format, for example, "oa-ggl-%s".

    • ConsumerKey. Registered application key.

    • ConsumerSecret. Secret code of the registered application.

    • AuthUrl. Authorization service URL that will be used in the web application for the RequestTokenUrl parameter.

    • RequestTokenUrl. Authorization service URL by which the access token will be returned.

    • RequestCallbackParam. Attribute named that will be used to send URL to forward used after authorization in web application, for example, «redirect_uri».

    • UserDataUrl. Data service URL that will be used to return user data after authorization in the web application.

    • UserIdAttr. Path to the field in the requested data that will be used as unique user identifier, for example, «/path/to/id».

    • UserNameAttr. Path to the field in the requested data that will be used as displayed user name, for example, «/path/to/displayName».

Values specified in the ConsumerKey and ConsumerSecret parameters can be obtained after registering developed application at the required OAuth server. Those parameters are required in order that BI server can check after authorization on OAuth server and authorizr the corresponding user in repository.

If the ConsumerKey and ConsumerSecret parameters are not specified, internal settings of the BI server are used; the OAuth server must contain registered application based on Foresight Analytics Platform web application.

HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\PP\BIS\System\Dal

Parameters of SQL queries execution with the use of BI server. These parameters affect BI server work, if it is used as a client for access to DBMS.

In the current implementation the following checkbox is available:

  • Allow. Permission for executing SQL queries via BI servers. Available values:
    0 (default) - SQL queries execution is forbidden.
    1 - SQL queries execution is allowed.
HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\PP\BIS\System\Fore

Parameters of working with development environment objects.

  • Disallow. Indicates whether macros written in Fore/Fore.NET are executed by the operation ForeExec. If the value is 1, macros are not allowed, execution of the ForeExec operation is checked on the BI back end. If the value is 0, or parameter is missing, execution is checked by the web application with the value of the foreExec parameter in the PP.xml file.

The Service Section

This section is used to specify addresses of remote BI servers to get and cache data from repository. BI server with web application will request the remote BI servers and get a thread with required data without additional request to DBMS.

Subsection Keys
HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\Service\Epts

The subsection, in which end points to remote servers are specified. Each point has a subsection with a unique name, for each point the following parameter is set:

  • address. Actual address of a remote BI server.

HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\Service\Mbs

The subsection contains repository settings. To set up, a subsection with a unique name, that is repository description identifier, is created inside Mbs, the parameter can be also specified:

  • endpoint. Unique name of access point from Epts. The specified end point will be used to access cache data on creating repository cubes. If an empty string is specified as the name, the current BI server is addressed.

The InMem Section

Parameters determining the work mode for data caching of cubes in file cache are created in the HKEY_CURRENT_USER key. The settings are applied when the current user works. The key to which settings are saved: HKCU\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\InMem. Working with cache is available within one running instance of Foresight Analytics Platform. The specified settings are determined on client computers, if desktop application is in use, or on BI server, if users are working in web application.

The settings can be also set in the HKEY_LOCAL_MACHINE section, they will be applied to all users. The settings search priority should be considered:

  1. Settings.xml.

  2. The HKEY_CURRENT_USER section.

  3. The HKEY_LOCAL_MACHINE section.

NOTE. All parameters must be of string type.

Parameters

Description

UseInMem It indicates whether In-Memory mechanism is used for cube data caching including ADOMD cubes and time series databases in file cache. By default, the parameter is set to True, the caching mechanism is used.
CacheDims It indicates whether In-Memory mechanism for dictionary data caching is used. The mechanism is absent by default and repository object caching is used. To cache dictionaries using In-Memory, create a parameter and set it to True.

NOTE. The parameter may be set to True if the UseInMem parameter is set to True. If the UseInMem parameter is set to False, the CacheDims parameter is automatically set to False.

DataDir Path to the folder with stored cache files. If the parameter is not set, files are saved to the folder by default:
  • Windows. C:\ProgramData\Foresight\Foresight Analytics Platform\inmem_data\.
  • Linux. /var/tmp/inmem_data.

NOTE. The operating system user who will work with cached data, must have read and write permissions for the specified folder.

MemLimitMb Virtual memory limit in megabytes. If the parameter is not specified, then depending on operating system bitness, the following constraints are used: x86 - 1024 Mb; x64 - 5120 Mb.

NOTE. For x86-bit systems, the size 1024 Mb is a maximum possible for operation.

CacheLimitMb

Disk space limited allocated to store aggregated data cache. Value is given in megabytes. Default parameter is not set. If parameter is set, when the limit exceeds, outdated or unused cache data will be deleted. Minimum disk space size that can be allocated to store aggregated data cache is 1024 MB.

NOTE. If aggregated data cache size exceeds the specified limit, but all aggregated data is currently in use, then cache data will be cleared at the next aggregated data cache generation.

Threads The number of threads, in which parallel data processing is executed on aggregation. By default the number of stream is equal to the number of processor logical kernels.

AllowConv

Indicates whether aggregated data is stored in cache that can be obtained on aggregation of fixed dimensions. Aggregated data is stored in cache by default. To enable aggregated data caching, set the parameter to True, as this allows for the data to be quickly loaded and saves time avoiding repeated aggregate calculations on selection change, if source data was not changed. If data volume is too large, the first caching of aggregated data may take a long time and considerably increase the hard drive space used by cache.

MatrixAggr

Matrix aggregation operation mode. Matrix aggregation is applied, if on working with caching the aggregated values are not cached in files, they are calculated in memory each time.

Available values:

  • false. Matrix aggregation is disabled. The mode is not intended to use in production mode.
  • true. Default value. Matrix aggregation is applied for all aggregation types, except aggregations that are used for default output in standard cubes. For the default output in standard cubes, aggregated data will be cached and the work will continue with cached values.
  • force. Do not use cached aggregated values, force calculation of all aggregation types in memory. The mode is not intended to use in production mode
  • optimal. Behavior as with the True value, but if there is a possibility to cache calculated aggregated values, caching will be performed and work will continue with data from cache. The mode feature is the aggregation when for one or several dimensions custom alternative aggregation is set, in this case only aggregation by dimensions with own hierarchy of elements is cached and aggregation by dimensions with alternative hierarchy is calculated over results of cached aggregation in separate calculation step.

OptimalThreshold

Matrix aggregation mode application threshold. The parameter is relevant, if the MatrixAggr parameter is set to optimal.

During the work, the size of selection (Cartesian product of selected elements) sent for data aggregation production is calculated. If obtained size is less than the value set in OptimalThreshold, then matrix aggregation is applied. If selection size is greater than the OptimalThreshold value, the aggregated values will be calculated and cached to file cache.

The default threshold size is 10000. If the OptimalThreshold parameter is set to 0, then it will not be considered.

PreloadData

Attribute of data preload from cache to memory on the first cube request.

If parameter is set to True, then on first request to any cached cube, its cache is scanned for full loading into RAM memory. As a result, the first cube use will be slow and all the following - maximum quick. It can be used to implement data preloading.

The default parameter value is False.

NOTE. Preloading is executed till the RAM size or the MemLimitMb parameter value are not exceeded.

UseMemoryPool

Attribute indicating whether pool of new pages with cached data in memory is used. To use the pool, set the parameter to True. The pool use can considerably speed up the work with high load, but it will also lead to the excessive use of RAM.

By default the parameter is set to False, the pool of cached data pages is not used.

Additional Keys

Subsection Key
HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0 VirtualMemoryThreshold. The threshold of virtual memory use, exceeding of which will enable clearing cache of objects' metadata. DWORD parameter, available values: 0-100%.

See also:

System Settings of Analytics Platform | Settings.xml