|
Release 11.1.2.1
This document describes the new features in Oracle Essbase Release 11.1.2.1. For detailed information on these features, see the Oracle Essbase Database Administrator's Guide, Oracle Essbase Technical Reference, and Oracle Essbase API Reference.
For information about the new features in Oracle Essbase Administration Services, see Oracle Essbase Administration Services New Features.
You can manage the number of security backup files (essbase_timestamp.bak) that Essbase maintains; the interval at which the security backup files are created; and whether to switch to the latest, valid security backup file on startup if the essbase.sec file is invalid.
NUMBEROFSECFILEBACKUPS configuration setting: Specifies the maximum number (up to 10) of security backup files that Essbase creates and maintains. By default, Essbase maintains two versions of essbase_timestamp.bak.
SECFILEBACKUPINTERVAL configuration setting: Specifies the amount of time Essbase waits before creating a security backup file.
ENABLESWITCHTOBACKUPFILE configuration setting: Specifies whether Essbase loads a valid security backup file at startup if the essbase.sec file is invalid.
Pre-upgrade Security File Backup
When you upgrade to Essbase 11.1.2.1 from an earlier release, a backup of the security file for the earlier release is created before the security file is upgraded. The security file backup, Essbase.Bak_preUpgrade, is in ARBORPATH/bin. Unlike the essbase_timestamp.bak file, which regularly backs up the latest state of Essbase security, this pre-upgrade backup file is kept intact and is not subsequently updated by further operations.
When Essbase is started using the latest, valid security backup file (essbase_timestamp.bak) instead of essbase.sec, you can use the alter system MaxL statement to reconcile the security file to match the state of Essbase applications and databases on an external disk.
The alter system reconcile grammar logs messages in essbase.log when:
An application or database folder is on the disk but not in the security file
An application or database is in the security file but not on the disk. In this scenario, using the alter system reconcile force grammar removes the application or database from the security file.
Essbase supports the Secure Socket Layer (SSL) protocol for all client-to-server and server-to-server communication. SSL allows Essbase to communicate unilaterally across a network with Essbase clients, including Oracle Hyperion Provider Services, Oracle Essbase Administration Services, and Oracle Essbase Studio, while preventing eavesdropping and tampering. End-point authentication and communications occur confidentiality over the Internet using CipherSuite cryptography.
These configuration settings supply parameters that enable SSL communication:
AGENTSECUREPORT
CLIENTPREFERREDMODE
ENABLECLEARMODE
ENABLESECUREMODE
NETSSLHANDSHAKETIMEOUT
SSLCIPHERSUITES
WALLETPATH
For information on using SSL with Essbase, see the Oracle Hyperion Enterprise Performance Management System Security Administration Guide.
Essbase cluster logical names can be used for login, in the form <name>:<secure>. The name is resolved by communication with the Provider Services servers specified in configuration files:
APSRESOLVER in essbase.cfg—Server-to-server communication; for example, when defining Essbase servers for partitions or in the @XREF or @XWRITE calculation functions
aps.resolver.urls in essbase.properties—Client-to-server communication; for example, when connecting to Essbase from Oracle Essbase Spreadsheet Add-in or Oracle Hyperion Smart View for Office, Fusion Edition
See Oracle Hyperion Provider Services Administration Guide.
You can specify the host name to which Essbase binds by using the ESSBASESERVERHOSTNAME configuration setting in essbase.cfg. If no host name is specified, Essbase uses a system API to get the host name. Using host names enables you to partition network traffic on all the network interfaces of a computer. This is useful on computers with single network cards and those with multiple NIC cards.
The essbase.cfg settings QRYGOVEXECBLK and QRYGOVEXECTIME can now also control long-running MDX queries.
New user and group identity functions are added, enabling the specification of user directories and unique identity attributes during typical operations. The parameters of these functions identify users and groups that are hosted in a directory.
EssAddToGroupEx
EssCreateExtGroup
EssDeleteFromGroupEx
EssDeleteGroupEx
EssDeleteUserEx
EssGetApplicationAccessEx
EssGetDatabaseAccessEx
EssGetGroupInfoEx
EssGetGroupListEx
EssGetUserInfoEx
EssKillRequestEx
EssListConnectionsEx
EssListGroupsInfoEx
EssListLocksEx
EssListLoginsEx
EssListRequestsEx
EssListUsersInfoEx
EssSetApplicationAccessEx
EssSetCalcListEx
EssSetDatabaseAccessEx
EssSetFilterListEx
EssSetGroupListEx
AGENTSECUREPORT
APSRESOLVER
CLIENTPREFERREDMODE
ENABLECLEARMODE
ENABLESECUREMODE
ENABLESWITCHTOBACKUPFILE
ESSBASESERVERHOSTNAME
NUMBEROFSECFILEBACKUPS
SECFILEBACKUPINTERVAL
SSLCIPHERSUITES
SSOPTIMIZEDGRIDPROCESSING
WALLETPATH
The statement display system has new configuration grammar for displaying Essbase configured values set using the essbase.cfg file.
Changes to alter system statement: The reconcile keyword displays discrepancies in application and database information between the security file and the external disk; the reconcile force keyword removes from the essbase.sec security file applications or databases that do not exist on the external disk but that are listed in the security file.
Changes to login statements:
The HOST-NAME parameter can be an Essbase cluster logical name provided that you use the APSRESOLVER configuration setting to specify a Oracle Hyperion Provider Services server to resolve the logical name to the corresponding physical name.
If using SSL, append :secure to the HOST-NAME parameter; for example:
login essexer password on “localhost:secure”;
When running Essbase in Oracle Hyperion Enterprise Performance Management System security mode, Essbase obtains user and group details (including user and group information and provisioning to Essbase applications) from Oracle's Hyperion® Shared Services. Essbase does not store all users and groups in the Essbase security file (essbase.sec); therefore, an Essbase Administrator does not need to explicitly synchronize security between Essbase and Shared Services.
When a user logs on to Essbase, Essbase queries Shared Services for that user’s information. The privileges with which a user starts a session are preserved throughout the session, regardless of whether the user’s privileges are changed in Shared Services during the session.
The Essbase Administrator can optionally delete a user or group from the Essbase security file. Any calculation or filter assignments are removed; however, the user still exists in Shared Services and is not deprovisioned.
Externally authenticated Essbase groups can be created. The specified group must exist in Shared Services.
Additionally, Essbase accepts the provider name along with the user or group name for user and group management and authentication. For example, users can be created and can log in with the format userName@providerName. This enables the coexistence of multiple Essbase users and groups with the same name, who are hosted on different provider domains. See User and Group Identities.
Essbase, when in EPM System security mode, now enables user and group names to be non unique, if you specify the user or group's provider directory or unique identity attribute.
In MaxL, user and group names can be specified as name@provider or as a unique identity attribute.
The provider is the name of a user directory, such as LDAP or Active Directory, where the external user or group is hosted. The unique identity attribute, or "identity," is a unique string assigned to every user and group. The identity enables Essbase to distinguish between users and groups with the same name across providers.
Allocations are used in the budgeting process to distribute revenues or costs.
The allocations feature allows you to allocate a given source amount to a target range of cells in an aggregate storage database. The source amount can be allocated to the target proportionately, based on a given basis, or the source amount can be spread evenly to the target.
You can perform aggregate storage allocations using the MaxL statement execute allocation. Using the Essbase API, use the EssPerformAllocationAso function and provide the information about the allocation in the ESS_PERF_ALLOC_T API structure.
Custom calculations extend the analytical capabilities of Essbase by enabling the execution of recurring calculations on aggregate storage databases.
You can write custom calculations for aggregate storage databases that update target level-0 cells. Custom calculation scripts are expressed in MDX.
Custom calculations on aggregate storage databases can be useful when the database is used for general ledger reporting, where double-entry accounting is in effect. Debit items, such as assets and expenses, must balance with credit items, such as equity and revenue.
You can perform custom calculations on an aggregate storage database using the MaxL statement execute calculation (aggregate storage version). Using the Essbase API, use EssPerformCustomCalcASO to perform or verify a custom calculation. Provide the information for the custom calculation in the ESS_PERF_CUSTCALC_T structure.
Using the @XWRITE calculation function, Essbase can write to blocks other than the ones being calculated. The write can occur in the same database or on a remote database. @XWRITE, like @XREF, uses a location alias.
Applications developed to work with Essbase send numerous requests to Essbase upon startup or as a response to a user action. To improve response times when users query for member information, you can have the application send multiple similar queries as one, using these new API functions:
EssOtlGetMemberInfoArray (an array version of GetMemberInfo)
EssOtlQueryMembersExArray (an array version of QueryMembersEx)
Essbase supports 32 alias tables for block storage and aggregate storage databases.
Using the Essbase API, you can specify multiple language codes for an alias table. When you create an alias table, a language code is not specified. You can get the set of language codes and clear the language codes associated with an alias table.
When clearing aliases from an alias table, language codes are removed from the alias table.
When copying an alias table, language codes are removed from the copied alias table.
When renaming an alias table, language codes are preserved in the renamed alias table.
Essbase supports these limits for user, group, and filter names:
Non-Unicode application limit: 256 bytes
Unicode-mode application limit: 256 characters
In addition to supporting the conversion of non-Unicode block storage outlines to non-Unicode aggregate storage outlines, Essbase supports these conversion scenarios:
Non-Unicode block storage outline to Unicode aggregate storage outline
Unicode block storage outline to Unicode aggregate storage outline
Essbase supports the IPv6 internet protocol on Microsoft Windows 2008 and all UNIX platforms.
Essbase supports connecting to Oracle databases using the Oracle Call Interface (OCI). You can load data from Oracle databases using Data Prep Editor in Administration Services Console by specifying an OCI connect identifier. Additionally, you can specify an OCI connect identifier when deploying a cube using the MaxL deploy statement. For information on Oracle Essbase Studio support for OCI, see Oracle Essbase Studio New Features.
Previously, data loads and dimension builds were always synchronized processes, meaning that Essbase has to wait for them to finish before making modifications.
If you use asynchronous data loads and dimension builds, during the process you can query for this information:
State of dimension build/data load process: whether it is in progress, in the final stages, or completed
Stage of the dimension build/data load process: whether opening the data source, reading the outline, building dimensions, verifying an outline, or writing an outline
Number of data records processed and rejected so far
The name and location of the error file
Data records processed and rejected so far
These C Main API functions are added to handle asynchronous data loads and dimension builds:
EssAsyncBuildDim issues an asynchronous dimension build request
EssAsyncImport and EssAsyncImportASO issue asynchronous data load requests
EssGetAsyncProcLog gets the error log for the asynchronous process
EssGetAsyncProcState queries the state of the asynchronous process
EssCancelAsyncProc cancels the asynchronous process
EssCloseAsyncProc closes the connection for a finished or canceled asynchronous dimension build or data load
Essbase offers improved dataload error messages for debugging purposes, and records causing errors are included in the log files.
These C Main API functions are added to improve debugging of dataload failures:
EssUpdateEx—Sends an update specification to the active database as a single string.
EssUpdateUtf8Ex—Sends an update specification to the active database as a single UTF-8-encoded string.
EssUpdateFileEx—Sends an update specification to the active database from a file.
EssUpdateFileUtf8Ex—Sends an update specification to the active database from a UTF-8-encoded file.
EssUpdateFileASOEx—Sends an update specification to the active aggregate storage database from a file.
EssUpdateFileASOUtf8Ex—Sends an update specification to the active aggregate storage database from a UTF-8-encoded file.
Essbase supports MDX queries that exceed the 232 query limit. Essbase sends 64-bit values representing cell offsets to the client. The Java MDX API now handles 64-bit offsets.
User names can contain any characters defined within the code page referenced by the ESSLANG variable.
The MaxL Shell IfError command can detect syntactical errors, nested script errors, and lack-of-permission errors. The MaxL Shell Exit command can accept a non-zero argument to return an exit status to the parent shell.
Essbase can exit calculations immediately under specified logical conditions. You can use the IF... ELSEIF calculation command block to specify the logical error conditions, and use the new @RETURN function to exit the calculation with customized error messages and levels.
You can extract metadata, either from the active database outline or an input outline file, to an XML file. Comparing versions of XML files enables you to view and track changes made to the outline over time.
The MaxL statement export outline is added to support exporting the metadata.
Essbase supports clustering of Essbase servers to provide active-passive failover with write-back capability. Active-passive Essbase failover clusters use the service failover functionality of the Oracle Process Manager and Notification (OPMN) Server. Essbase agent and server processes use leases to ensure that at any given point-in-time there is one and only one owner for a given shared resource. These processes acquire a lease against a particular shared resource upon startup, continue to renew the lease during their lifetime, and surrender the lease upon termination.
These configuration settings supply tuning parameters that support Essbase failover clustering:
AGENTLEASEEXPIRATIONTIME—Sets the maximum amount of time an agent can own a lease before the lease expires.
AGENTLEASEMAXTRETRYCOUNT—Specifies the number of times the agent attempts to acquire or renew a lease. If these attempts are unsuccessful, the agent terminates itself.
AGENTLEASERENEWALTIME—Specifies the time interval in seconds after which the agent attempts to renew lease. This should always be less than AGENTLEASEEXPIRYTIME.
FAILOVERMODE—Determines whether Essbase is deployed as a failover cluster.
SERVERLEASEEXPIRATIONTIME—Sets the maximum amount of time Essbase Server can own a lease before the lease expires.
SERVERLEASEMAXRETRYCOUNT—Specifies the number of times Essbase Server attempts to acquire or renew a lease. If these attempts are unsuccessful, Essbase Server terminates itself.
SERVERLEASERENEWALTIME—Specifies the time interval in seconds after which Essbase Server attempts to renew lease. This should always be less than SERVERLEASEEXPIRYTIME.
If you migrate Essbase Server and any existing users and groups to Oracle Hyperion Enterprise Performance Management System security mode, you can change the name of the global application and application project in Oracle's Hyperion® Shared Services by using the alter system MaxL statement with the rename global registration name grammar.
Essbase clients developed in Java can execute MaxL statements to facilitate Oracle Essbase administrative tasks.
These calculation functions and command are added to improve calculation of databases that use varying attributes:
@ISMBRWITHATTR
@ISATTRIBUTE
SET SCAPERSPECTIVE
@WITHATTR is enhanced to allow varying attributes to be specified in the function argument.
EssAsyncBuildDim
EssAsyncImport
EssAsyncImportASO
EssCancelAsyncProc
EssCloseAsyncProc
EssGetAsyncProcLog
EssGetAsyncProcState
EssPerformAllocationAso
EssPerformCustomCalcASO
EssUpdateEx
EssUpdateUtf8Ex
EssUpdateFileEx
EssUpdateFileUtf8Ex
EssUpdateFileASOEx
EssUpdateFileASOUtf8Ex
EssOtlSetAliasTableLanguage
EssOtlGetAliasTableLanguages
EssOtlClearAliasTableLanguages
EssOtlGetAltHierarchyEnabled
EssOtlSetAltHierarchyEnabled
EssOtlGetHierarchyType
EssOtlSetHierarchyType
EssOtlOpenOutlineEx
EssOtlWriteOutlineEx
EssOtlQueryMembersExArray
EssOtlGetMemberInfoArray
@BETWEEN
@EQUAL
@EXPAND
@ISATTRIBUTE
@ISMBRWITHATTR
@LIKE
@MBRCOMPARE
@MBRPARENT
@NOTEQUAL
@RETURN
@XWRITE
@WITHATTR is enhanced to allow varying attributes to be specified in the function argument.
AGENTLEASEEXPIRATIONTIME
AGENTLEASEMAXTRETRYCOUNT
AGENTLEASERENEWALTIME
APSRESOLVER
ASOSAMPLESIZEPERCENT
DIMBUILDERRORLIMIT
FAILOVERMODE
FILELOCKINGMODE
NETSSLHANDSHAKETIMEOUT
PERSISTUSERATLOGIN
PRELOADUDANAMESPACE
RTDEPCALCOPTIMIZE
SERVERLEASEEXPIRATIONTIME
SERVERLEASEMAXRETRYCOUNT
SERVERLEASERENEWALTIME
XOLAPSCHEMAVERIFICATION
XOLAPMAXNUMCONNECTION
XOLAPSQLIDLEPERIOD
XOLAPENABLEHEURISTICS
New statement execute allocation (aggregate storage only)
New statement execute calculation (aggregate storage version)
New statement export outline
Changes to alter user and alter group statements to enable revoking filters.
Changes to create group statement to enable creating external groups.
Changes to deploy statement: the odbc_dsn keyword enables custom ODBC DSN names, and enables you to specify a Oracle Call Interface (OCI) connect identifier
Changes to drop user and drop group statements to enable deletion from essbase.sec only.
Changes to USER-NAME and GROUP-NAME terminals. All user and group names can be of the form name, name@provider, or with identity STRING.