![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
This chapter provides a table that lists the major Hyperion Essbase kernel settings and tells you how to change them. It contains the following sections:
This chapter assumes that one of the following is true:
Note: | If you migrated from Version 5.x, read the migration information in the Hyperion Essbase Start Here booklet before changing the settings described in this chapter. |
You can customize Hyperion Essbase kernel storage settings at the database level--you can have different settings for every database on your server. The information in this section helps you understand what each setting controls and how to adjust each setting. For a table that lists performance-related settings, see Performance-Related Settings.
The major Hyperion Essbase kernel settings that you can customize are the following:
This chapter focuses on how to specify these settings. For background information, see Introducing the Hyperion Essbase Kernel.
You can specify most Hyperion Essbase kernel settings by using the Database Settings dialog box in Hyperion Essbase Application Manager or by using ESSCMD. In rare cases you may want to use the ESSBASE.CFG
server file to specify settings.
CAUTION: |
In previous versions of Hyperion Essbase you can specify many Hyperion Essbase kernel settings in the ESSBASE.CFG server file. In Version 5.x and higher, Hyperion Essbase overrides most of the .CFG settings. See Precedence of Settings.
|
Two ESSCMD commands control database settings: SETDBSTATE and SETDBSTATEITEM:
SETDBSTATE
parameter value, in interactive mode; for example, SETDBSTATE
accessLevel
1
.
SETDBSTATEITEM
n, in interactive mode. The integer n corresponds to a parameter. For example, SETDBSTATEITEM
4
corresponds to accessLevel
. If you do not know a parameter number, you can omit it, and Hyperion Essbase lists all parameters and their corresponding numbers. Hyperion Essbase also prompts you for a database and an application name.
DOCS
directory for information about SETDBSTATE and SETDBSTATEITEM commands. See Performing Interactive and Batch Operations Using ESSCMD for information about ESSCMD.
Hyperion Essbase uses the most recent setting, whether you use SETDBSTATEITEM, SETDBSTATE, or the Database Settings dialog box.
Database settings specified using the Hyperion Essbase Application Manager Database Settings dialog box, alter database in MaxL, or the SETDBSTATE and SETDBSTATEITEM commands in ESSCMD, override ESSBASE.CFG
file settings. The batch methods and the dialog boxes provide different ways to change the same database settings. The most recent value of the database setting overrides any previously set value, whether it was set through a command or a dialog box. Both methods permanently override ESSBASE.CFG
settings, as the following paragraph explains.
Hyperion Essbase reads the ESSBASE.CFG
file when you start the server, and then applies database settings, overriding the ESSBASE.CFG
settings. Hyperion Essbase applies a setting from the ESSBASE.CFG
file only if you have deleted the database settings. Hyperion Essbase takes the value of the ESSBASE.CFG
file setting and uses it as an initial value for the database setting. If you subsequently stop and restart the server, Hyperion Essbase uses the database setting. Hyperion Essbase ignores any changes you make to the setting in the ESSBASE.CFG
file, unless you delete the database setting before starting the server. ESSBASE.CFG
file settings apply to all databases on a server.
Irrespective of how you enter the settings, some settings take effect immediately, and others take effect the next time the database is started. Therefore, the settings in effect may not be the settings you most recently entered. For information on when settings take effect, see Table 43-1.
To view the most recently entered settings use GETDBSTATE or select Database > Settings in Hyperion Essbase Application Manager. To view the settings currently in effect, use GETDBINFO or select Database > Information in Hyperion Essbase Application Manager.
For information on stopping and starting servers, applications, and databases, see Running Hyperion Essbase, Applications, and Databases.
You can set database, application, and server options by using the settings dialog boxes in Hyperion Essbase Application Manager. This section covers database settings. See Managing Security at Global and User Levels for information on application and server settings.
To check or customize database settings, select Database > Settings in Hyperion Essbase Application Manager.
Figure 43-1: The Database Settings Dialog Box
The dialog box has four tabs, which correspond to the following pages.
The General page includes the following settings:
The Storage page includes the following settings:
The Transaction page includes the following settings:
The Currency page includes settings for currency databases. See Designing and Building Currency Conversion Applications for more information.
Note: |
Changes that you make in any pages of the Database Settings dialog box affect only the specified database. For information about when settings take effect, see Table 43-1. |
![]() |
You can use alter database in MaxL or the SETDBSTATEITEM or SETDBSTATE commands in ESSCMD to set or change database settings. For more information, see the online Technical Reference in the DOCS directory.
|
Note: | Database settings that you set or change with alter database, SETDBSTATEITEM, or SETDBSTATE affect only the specified database. |
You can use MaxL and ESSCMD to write batch scripts that automate database- setting changes. For information about writing ESSCMD scripts, see Performing Interactive and Batch Operations Using ESSCMD. For information about writing MaxL scripts and using MaxL, see the MaxL Language Reference in the online Technical Reference in the DOCS
directory.
Issue a separate alter database statement for each database setting you want to change. For example, the following MaxL script logs in to Hyperion Essbase, changes three database settings, and logs out:
login admin identified by secretword; alter database sample.basic enable committed_mode; alter database sample.basic set lock_timeout immediate; alter database sample.basic disable create_blocks; logout;
For simple items, specify the command, item number, application, database, and value:
SETDBSTATEITEM 2 "JILLAPP" "JILLDB" "Y";
For items that require multiple parameters, such as Isolation Level (item 18), specify multiple parameters:
SETDBSTATEITEM 18 "SAMPLE" "BASIC" "1" "Y" "-1";
Use a separate SETDBSTATEITEM command for each parameter; you cannot string item numbers together on the same line.
Index cache size is an important setting; it determines the maximum memory that Hyperion Essbase allocates to hold index information. This section tells you how to specify the setting and assumes that you have decided what value you want. See Sizing Your Index, Data File, and Data Caches for information about determining an appropriate index cache size.
Hyperion Essbase displays setting values in bytes (B) in ESSCMD and in kilobytes (K) in the Database Settings dialog box.
Select Database > Settings and click the Storage tab. Enter the desired value in kilobytes in the Index Cache text box.
Figure 43-2: Setting Index Cache Size
Use alter database to set index cache size. You may specify the size in bytes (b), kilobytes (kb), megabytes (mb), gigabytes (gb), or terabytes (tb). For example:
alter database sample.basic set index_cache_size 10mb;
Enter SETDBSTATEITEM
12
or SETDBSTATE
in ESSCMD and either follow the prompts or supply the required values on the command line, as shown in the following example:
SETDBSTATEITEM 12 "JILLAPP" "JILLDB" "10M"
When using ESSCMD, you can specify the index cache size in bytes (B), kilobytes (K), megabytes (M), or gigabytes (G). ESSCMD displays minimum, maximum, and current values.
A change to the index cache size takes effect the next time you start the database.
The Data file cache size is an important setting; it determines the maximum memory that Hyperion Essbase allocates to hold data. The data file cache holds data files (.PAG
files) in memory.
This section tells you how to specify the setting and assumes that you have decided what values you want. See Sizing Your Index, Data File, and Data Caches for information about determining the appropriate data file cache size.
Hyperion Essbase displays setting values in bytes (B) in ESSCMD and in kilobytes (K) in the Database Settings dialog box.
The minimum value for the data file cache is 8MB (8388608 bytes).
Select Database > Settings and click the Storage tab. Enter the desired value in kilobytes in the Data File Cache text box.
Figure 43-3: Setting Data File Cache Size
Use alter database to set the data file cache size in MaxL. You may specify the size in bytes (b), kilobytes (kb), megabytes (mb), gigabytes (gb), or terabytes (tb). For example:
alter database sample.basic set data_file_cache_size 35mb;
To specify the data file cache in ESSCMD, enter SETDBSTATEITEM
27
and supply the required values on the command line, as shown in the following example:
SETDBSTATEITEM 27 "JILLAPP" "JILLDB" "35M"
When using ESSCMD, you can specify the data file cache size in bytes (B), kilobytes (K), megabytes (M), or gigabytes (G). ESSCMD displays minimum, maximum, and current values.
Changes to the size of the data file cache take effect the next time you start the database.
The data cache holds uncompressed data blocks in memory. In general, if you have to choose whether to allocate memory to the data file cache or to the data cache, choose the data file cache.
This section tells you how to specify the setting and assumes that you have decided what value you want. See Sizing Your Index, Data File, and Data Caches for information about determining the appropriate data cache size.
Hyperion Essbase displays setting values in bytes (B) in ESSCMD and in kilobytes (K) in the Database Settings dialog box.
The minimum value for the data cache is 3MB (3145728 bytes). For compatibility with previous versions of Hyperion Essbase, the Hyperion Essbase kernel accepts a value of 3,000,000 for the data cache and automatically converts the value to the actual minimum of 3MB.
Select Database > Settings and click the Storage tab. Enter the desired value in kilobytes in the Data Cache text box.
Figure 43-4: Setting Data Cache Size
Use alter database to set the data cache or data file cache size in MaxL. You may specify the sizes in bytes (b), kilobytes (kb), megabytes (mb), gigabytes (gb), or terabytes (tb). For example:
alter database sample.basic set data_cache_size 4mb; alter database sample.basic set data_file_cache_size 35mb;
To specify the data cache in ESSCMD, enter SETDBSTATEITEM
5
or SETDBSTATE
and either follow the prompts or supply the required values on the command line, as shown in the following example:
SETDBSTATEITEM 5 "JILLAPP" "JILLDB" "4M"
To specify the data file cache, enter SETDBSTATEITEM
27
in ESSCMD and supply the required values on the command line, as shown in the following example:
SETDBSTATEITEM 27 "JILLAPP" "JILLDB" "35M"
When using ESSCMD, you can specify the data file cache size and the data cache size in bytes (B), kilobytes (K), megabytes (M), or gigabytes (G). ESSCMD displays minimum, maximum, and current values.
Changes to the size of the data cache take effect the next time you start the database.
The cache memory locking setting locks the memory used for the index cache, the data file cache, and the data cache into physical memory. Locking improves performance for a Hyperion Essbase database because the system memory manager does not need to swap the memory used by the caches when swapping the Hyperion Essbase server process. By default, cache memory locking is turned off.
Select Database > Settings and click the Storage tab. Select the Cache Memory Locking check box.
Figure 43-5: Enabling the Cache Memory Locking Setting
Use alter database to enable cache memory locking in MaxL. For example:
alter database sample.basic enable cache_pinning;
Enter SETDBSTATEITEM 26
and supply the required values on the command line, as shown in the following example:
SETDBSTATEITEM 26 "JILLAPP" "JILLDB" Y
A change to the cache memory locking setting takes effect the next time you start the database.
The index page holds index entries; an index entry exists for every combination of sparse dimensions.
If direct I/O is in effect, Hyperion Essbase ignores the index page size setting and uses a setting of 8K (8,192 bytes). If buffered I/O is in effect, Hyperion Essbase uses the value that is specified in the Index Page Size text box. In this case, the default setting is 1K (1,024 bytes).
Select Database > Settings and click the Storage tab. Enter the desired value in kilobytes in the Index Page text box.
Figure 43-6: Setting Index Page Size
Use alter database to set the index page size in MaxL. You may specify the size in bytes (b), kilobytes (kb), megabytes (mb), gigabytes (gb), or terabytes (tb). For example:
alter database sample.basic set index_page_size 1024b;
Enter SETDBSTATEITEM
13
or SETDBSTATE
in ESSCMD and either follow the prompts or supply the required values on the command line, as shown in the following example:
SETDBSTATEITEM 13 "JILLAPP" "JILLDB" "1024"
When using ESSCMD, you can specify the index page size in bytes (B) or kilobytes (K). The default unit is bytes. ESSCMD displays minimum, maximum, and current values.
A change to the index page setting takes effect the next time you start the database, provided that the database is empty. The database must be empty for the change to take effect.
The Hyperion Essbase kernel offers two levels of isolation for transactions: committed access and uncommitted access. Uncommitted access is the default.
Committed access restricts read/write access on data blocks to one transaction at a time; Hyperion Essbase retains write locks on all affected blocks until the transaction commits. Uncommitted access can produce unpredictable results, because Hyperion Essbase acquires and releases write locks as needed during the transaction. Committed access is recommended. For more information on these isolation levels, see Ensuring Data Integrity.
Depending on the type of access that you specify, Hyperion Essbase uses additional parameters, which you can set in Hyperion Essbase Application Manager or in MaxL or ESSCMD.
If you choose committed access, Hyperion Essbase uses these parameters:
CAUTION: | Under committed access, Hyperion Essbase retains redundant data until a transaction commits. Allow disk space for double the size of the database to accommodate redundant data. |
If you choose uncommitted access, Hyperion Essbase uses these parameters:
If you set Commit Blocks to 0, the synchronization point occurs at the end of the transaction.
Select Database > Settings and click the Transaction tab. Click Committed or Uncommitted in the Isolation Level group.
Depending on the type of access that you specify, the Concurrency Parameters group or the Synchronization Point group is available.
Suppose you want committed access, pre-image access, and a 60-second wait for locked data blocks. Specify settings as in the following example:
Figure 43-7: Example of Setting Committed Isolation Level
Suppose that you want uncommitted access and that you want Hyperion Essbase to perform a commit operation after 10 blocks are updated, or after 10 rows are loaded. Specify settings as in the following example:
Figure 43-8: Example of Setting Uncommitted Isolation Level
Use alter database to set the isolation level in MaxL. Issue a separate statement for each setting you want to change. For example:
alter database sample.basic enable committed_mode; alter database sample.basic disable pre_image_access; alter database sample.basic set implicit_commit after 100 blocks; alter database sample.basic set implicit_commit after 200 rows;
For the exact syntax you should use to create MaxL statements, see the MaxL Language Reference in the online Technical Reference in the DOCS
directory.
Enter SETDBSTATEITEM
18
in ESSCMD and either follow the prompts or supply the required values on the command line.
Choose 1 (committed access) or 2 (uncommitted access, the default). Depending on the type of access that you specify, ESSCMD prompts you for other parameters (or you can supply the values on the command line).
If you choose 1 (committed access), ESSCMD prompts for the following information:
If you choose 2 (uncommitted access), ESSCMD prompts for the following values. See Notes on Isolation Level Options for important details about these options.
You can also specify isolation level parameters (pre-image access and so on) by specifying parameters 19-22 on SETDBSTATEITEM. Enter SETDBSTATEITEM
with no parameters; ESSCMD displays a list that includes each parameter by number, with a description.
Here is an example of using SETDBSTATEITEM to set an isolation level. This example enables committed access and pre-image access and specifies indefinite wait time.
SETDBSTATEITEM 18 "JILLAPP" "JILLDB" "1" "Y" "-1"
For more syntax information, see the online Technical Reference in the DOCS
directory.
Changes to the isolation level settings take effect the next time there are no active transactions.
Use disk volumes to specify where you want to store Hyperion Essbase index files (ESS
xxxxx.IND
) and data files (ESS
xxxxx.PAG
). See Storage Allocation for information about how Hyperion Essbase allocates storage across volumes.
When you use disk volumes, Hyperion Essbase provides you the following options for each volume:
ESS00001.IND
is filled to maximum size, Hyperion Essbase creates ESS00002.IND
.
Specify the disk volumes in the order in which you want the volumes to be used. You do not have to specify the volume in which Hyperion Essbase is installed as one of the volumes; you can install on one volume and store data on other volumes.
You can tell Hyperion Essbase to stop storing files on a particular volume. Hyperion Essbase can still access the volume as needed, but it no longer stores additional index and data information on the volume. To stop storing information on a volume, select the volume definition that you want to remove, as shown in Figure 43-9, and click Delete.
Note: |
If you do not specify the disk volumes setting, Hyperion Essbase stores data only on the volume where the ARBORPATH directory resides. If the ARBORPATH variable is not set, Hyperion Essbase stores data only on the volume where the server was started. For information on setting ARBORPATH , see the Hyperion Essbase Installation Notes.If a volume reaches capacity, Hyperion Essbase moves on to the next volume. If all specified volumes reach capacity, Hyperion Essbase stops any ongoing database operations, issues an error message, and performs fatal error handling. For more information, see Fatal Error Handling. If these events occur, shut down the database, allocate more disk space, and restart the database. |
You set disk volumes on a per database basis. It is possible for more than one database to use space on the same volume, so allocate space carefully. For example, if you specify 7 GB on Volume A for Database 1 and 7 GB on Volume A for Database 2, you have allocated 14 GB for Hyperion Essbase files on Volume A.
CAUTION: | If you specify a volume name but not a volume size, Hyperion Essbase uses all available space on the volume. |
For more information, see Storage Allocation.
Select Database > Settings > Storage.
Unlimited
; the minimum is 8,192 kilobytes.
You can specify index files, data files, or both. The default is Index
+
Data
.
To stop Hyperion Essbase from storing additional files on an allocated volume (that is, to "deallocate" a volume), enter the volume name in the Disk Volume text box and click Delete. Hyperion Essbase writes no new files to that volume, but continues to access and use files previously created on that volume.
For example, suppose you do not want any more information to be stored on Volume F. Select the volume definition for volume F and press Delete, as shown in Figure 43-9.
Figure 43-9: Deallocating a Volume
Now, Hyperion Essbase stores no additional data on Volume F.
Suppose you want to use up to 20 GB for Hyperion Essbase files on Volume E, 25 GB on Volume F, and 25 GB on Volume G. You are using the default file size limit of 2 GB.
Figure 43-10: Example of Using Disk Volumes
When you load data, Hyperion Essbase stores up to 20 GB on Volume E; if the database is larger than 20 GB, Hyperion Essbase stores the next 25 GB on Volume F, and so on.
Use alter database to allocate disk volumes in MaxL. First add a disk volume definition, and then change its settings with a separate statement. For example,
alter database Samp.Basic add disk volume samp.basic.vol3; alter database Samp.Basic set disk volume samp.basic.vol3 file_type index_data;
alter database Sample.Basic add disk volume Sample.Basic.C; alter database Sample.Basic set disk volume sample.basic.C file_type index;
For the exact syntax you should use to create MaxL statements, see the MaxL Language Reference in the online Technical Reference in the DOCS
directory.
To allocate a new volume, enter SETDBSTATEITEM
23
in ESSCMD and either follow the prompts or supply the required values on the command line.
ESSCMD prompts you for the following values, unless you supply them on the command line:
Then, for each new volume, ESSCMD prompts you for:
When you use ESSCMD, you can specify volume size in bytes (B), kilobytes (K), megabytes (M), or gigabytes (G). ESSCMD displays minimum, maximum, and current values and 0 for unlimited.
3-Index
+
Data
(index and data files on the same volume).
When you use ESSCMD, you can specify file size in bytes (B), kilobytes (K), megabytes (M), or gigabytes (G). ESSCMD displays minimum, maximum, and current values.
The following example allocates up to 10 gigabytes on Volume E, sets a maximum file size of 2 gigabytes, and specifies that data files should be stored only on E:
SETDBSTATEITEM 23 "JILLAPP" "JILLDB" "1" "E" "10G" "2" "2G"
To change the settings on an allocated volume, enter SETDBSTATEITEM
24
in ESSCMD and either follow the prompts or supply the required values on the command line.
ESSCMD prompts you for the following values, unless you supply them on the command line:
The following example allocates up to 20 gigabytes on Volume C and sets a maximum file size of 2 gigabytes:
SETDBSTATEITEM 24 "JILLAPP" "JILLDB" "1" "C" "20G" "3" "2G"
To stop Hyperion Essbase from storing additional files on a volume, enter SETDBSTATEITEM
25
in ESSCMD and either follow the prompts or supply the required values on the command line. Hyperion Essbase continues accessing files on the deallocated volume, but does not write new files to it.
ESSCMD prompts you for the following value, unless you supply it on the command line: Delete which volume definition. Use the GETDBSTATE command in ESSCMD to see a list of the currently defined disk volumes and to see the number assigned to each volume.
The following example deallocates the volume that is specified as fourth:
SETDBSTATEITEM 25 "JILLAPP" "JILLDB" "4"
For more syntax information, see the online Technical Reference in the DOCS
directory.
On UNIX, volume_name is a mounted UNIX file system. You must enter a fully qualified path name up to the name of the directory you are using for Hyperion Essbase. Hyperion Essbase automatically appends the \app
directory to the path; you do not specify the \app
directory. Consider the following examples:
/vol2/essbase 10M
Volume size is the maximum space, in kilobytes, allocated to the volume. The default value is unlimited--Hyperion Essbase uses all available space on that volume.
For new files, changes to the disk volumes setting take effect when you next start the database. Existing files and volumes are not affected.
Hyperion Essbase uses the data compression parameter to specify whether it compresses data on disk and to specify which, if any, compression scheme it uses. See Introducing the Hyperion Essbase Kernel for information about data compression.
Hyperion Essbase uses the following data compression schemes.
RLE
). Hyperion Essbase compresses repetitive, consecutive values, including zeros and #MISSING
values.
You can also disable compression. Compression is enabled by default.
To specify data compression, select Database > Settings and click the Storage tab. Select a value from the Data Compression list box.
Figure 43-11: Setting Data Compression
You can enable or disable data compession and set the data compression type by issuing the alter database statement in MaxL. For example, the following statements might be used in a MaxL script to enable compression and set it to run-length encoding:
alter database Sample.Basic enable compression; alter database Sample.Basic set compression rle;
You can enable or disable data compression by using SETDBSTATEITEM or SETDBSTATE. To set the data compression type, you must use SETDBSTATEITEM.
To enable or disable data compression, enter SETDBSTATEITEM
14
in ESSCMD and either follow the prompts or supply the required values on the command line.
ESSCMD prompts you for the following values, unless you supply them on the command line:
Y
(Yes, the default) or N
(No).
1
(run-length encoding) or 2
(bitmap, the default).
To specify the data compression type, enter SETDBSTATEITEM
15
in ESSCMD and either follow the prompts or supply the required values on the command line. ESSCMD prompts you for a value of "1" (run length encoding) or "2" (bitmap, the default).
The following example enables Bitmap compression:
SETDBSTATEITEM 14 "JILLAPP" "JILLDB" "Y" "2"
For more syntax information, see the online Technical Reference in the DOCS
directory.
Enter SETDBSTATE
in ESSCMD. Follow the prompts until the last prompt, Data Compression on Disk? Enter Y
(Yes, the default) or N
(No).
To set the data compression type, you must use SETDBSTATEITEM or the Database Settings dialog box.
For more syntax information, see the online Technical Reference in the DOCS
directory.
Changes to the data compression setting take effect immediately as Hyperion Essbase writes data blocks to disk. For blocks already on disk, Hyperion Essbase does not change compression schemes or enable or disable compression. When you change the data compression settings of blocks already on disk, Hyperion Essbase uses the new compression scheme the next time Hyperion Essbase accesses, updates, and stores the blocks.
Data block size is determined by the amount of data in a particular combination of dense dimensions. For example, when you change the dense or sparse configuration of one or more dimensions in the database, the data block size changes. Data block size is 8n bytes, where n is the number of cells that exist for that combination of dense dimensions.
Note: | Eight to 64 kilobytes is the optimum size range. |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Copyright © 1991-2000 Hyperion Solutions Corporation. All rights reserved.