Best Practices Guide for Tuning Oracle® Business Intelligence Enterprise Edition

11g Release 1 (11.1.1.5)

An Oracle® White Paper October 2011

Change Record
Date 10/2011 Primary Author Ahmed Awan (Product Assurance Engineering) Version 2.0 Change Reference Revised edition

Disclaimer:
 All tuning information stated in this guide is only for orientation, every modification has to be tested and its impact should be monitored and analyzed. Before implementing any of the tuning settings, it is recommended to carry out end to end performance testing that will also include to obtain baseline performance data for the default configurations, make incremental changes to the tuning settings and then collect performance data. Otherwise it may worse the system performance.

1

TABLE OF CONTENTS
INTRODUCTION ................................................................................................................... 3 1.0 PERFORMANCE OVERVIEW .................................................................................... 3 1.1 1.2 1.3 INTRODUCTION TO ORACLE® BUSINESS INTELLIGENCE EE PERFORMANCE .............. 3 PERFORMANCE TERMINOLOGY ................................................................................... 3 UNDERSTANDING KEY PERFORMANCE DRIVERS ........................................................ 4

2.0 TOP TUNING RECOMMENDATIONS FOR OBIEE ............................................... 5 2.1 TUNE OPERATING SYSTEMS PARAMETERS ..................................................................... 6 2.2 TUNE ORACLE® WEBLOGIC SERVER (WLS) PARAMETERS ......................................... 13 2.3 TUNE 64BIT JAVA VIRTUAL MACHINES (JVM) ............................................................ 16 2.4 TUNE 32BIT JAVA VIRTUAL MACHINES (JVM) ............................................................ 21 2.5 TUNE HTTP SERVER PARAMETERS .............................................................................. 22 2.6 TUNE HTTP SERVER COMPRESSION / CACHING ........................................................... 25 2.7 TUNE ORACLE® DATABASE PARAMETERS .................................................................. 32 3.0 PERFORMANCE MONITORING OBIEE ............................................................... 32 3.1 PERFORMANCE MONITORING IN WINDOWS ENVIRONMENT .......................................... 32 3.2 BUILT-IN BI METRICS FOR PERFORMANCE MONITORING ............................................. 35 3.3 PERFORMANCE MONITORING IN UNIX ENVIRONMENT ................................................ 37 4.0 TUNING OBIEE COMPONENTS .............................................................................. 39 4.1 ORACLE BI PRESENTATION SERVICES COMPONENT ..................................................... 39 4.2 ORACLE BI SERVER COMPONENT ................................................................................ 41 5.0 TUNING ESSBASE ...................................................................................................... 44 5.1 ESSBASE ASO TUNING ................................................................................................. 44

2

INTRODUCTION
This document is written for people who monitor performance and tune the components in a BI environment. It is assumed that readers know server administration, Oracle® Fusion Middleware (FMW), hardware performance tuning fundamentals, web servers, java application servers and database.

1.0

PERFORMANCE OVERVIEW

This chapter discusses performance and tuning concepts for Oracle® Business Intelligence Enterprise Edition. This chapter contains the following sections: 1.1 1.2 1.3 Introduction to Oracle® Business Intelligence EE System Performance Performance Terminology Understanding Key Performance Drivers

1.1

Introduction to Oracle® Business Intelligence EE Performance

To maximize Oracle® Business Intelligence Enterprise Edition performance, you need to monitor, analyze, and tune all the Fusion Middleware / BI components. This guide describes the tools that you can use to monitor performance and the techniques for optimizing the performance of Oracle® Business Intelligence Enterprise Edition components.

1.2

Performance Terminology
 Scalability o System's ability to perform within specification under increasing user load, data load and hardware expansion. Latency o Time between the issuing of a request and the time when the work actually begins on the request. Think time o The time a real user pauses to think between actions. Resource utilization o A consumption metric, for example, the percent of CPU usage. Response time o A time metric, for example round-trip time it takes the server to deliver a Web page.

This guide uses the following performance terminologies:

  

3

Throughput o A rate metric (requests per unit of time), for example, requests per second, bits per second. For example, if an application can handle 20 customer requests simultaneously and each request takes one second to process, this site has a potential throughput of 20 requests per second.

1.3

Understanding Key Performance Drivers

To optimize your deployment, you must understand the elements that influence performance and scalability. A factor that dictates performance is called a key performance driver. Knowing how the drivers behave in combination further enhances your ability to deploy Oracle® Business Intelligence Enterprise Edition optimally, based on the unique requirements of each deployment. Hardware Capacity - Factors such as number of servers, quantity and speed of processors, available RAM, network speed etc. Technical Platforms Tuning – Fine tuning other third party software required for installing and running Oracle® Business Intelligence Enterprise Edition product; for example: relational databases, Java application servers, Web servers, Server / Client Operating System and browsers. Business Application Design - Application design is an important factor in OBIEE system performance i.e. structure, size, and use of product / custom features in designing reports and dashboards etc. Business process usage - Activities carried out by users in the normal flow of your business cycle. o Business process usage has three components:  User activity—Activities available to users for reporting and analysis.  Rate of user activity – A number of transactions executed by one user per one hour. User concurrency—Number of users for each activity being carried out simultaneously.

-

-

-

4

proceed incrementally and thoroughly test with each incremental change. 2.2.5 2.7 Tune Operating Systems parameters. 5 . Tune HTTP Server parameters. Tune 32bit Java Virtual Machines (JVM). Tune Oracle® WebLogic Server (WLS) parameters. we have created a list of recommendations to help you optimize your Oracle® Business Intelligence Enterprise Edition performance.3 2.4 2. care needs to be taken to have appropriate backups. it is not meant to be comprehensive list of areas to tune.1 2.2 2.6 2. Note: While the list in each of the above stated section is a useful tool in starting your performance tuning. Tune HTTP Server Compression / Caching. This chapter includes the following sections that provide a quick start for performance tuning Oracle® Business Intelligence Enterprise Edition infrastructure. Tune Oracle® Database Parameters. Tune 64bit Java Virtual Machines (JVM).0 TOP TUNING RECOMMENDATIONS FOR OBIEE Performance tuning Oracle® Business Intelligence Enterprise Edition is a complex iterative process. You must monitor and track specific performance issues within your Business Intelligence Enterprise Edition dashboards / reports design to understand where tuning can improve performance. To get you started.

Consult your Linux (OEL / RHEL / SLES) documentation for more information on how to permanently change the value for this parameter.1 Linux Tuning Parameters This topic describes how to tune the Linux operating system to optimize the performance of your Oracle® Business Intelligence Enterprise Edition. providing more resources for new connections. Consult your Linux (OEL / RHEL / SLES) documentation for more information on how to permanently change the value for this parameter. 1024 4096 Default Value 60 Suggested Value 30 1024 8192 (x86 32bit) 65535 (x86 64bit) For more information about Linux tuning. File descriptors (open files) If WebLogic Server Administration Server reports a Too Many Open Files error message on the Enterprise Manager (EM) console when the maximum number of file descriptors configured for the Administration Server is less than 8192 on 32bit OS and 65535 on 64bit OS.2. Note the above TCP/kernel tunable parameters and their corresponding values are provided as examples and rough guidelines only. Important Note: When you increase the soft limit.1. Backlog connections queue (tcp_max_syn_backlog) When the server is heavily loaded or has many clients with bad connections with high latency. 6 . You can re-adjust these and other parameters based on actual system load. you should consult your Linux documentation. Operating system error conditions always degrade performance.1 Tune Operating Systems parameters Proper OS tuning might improves system performance by preventing the occurrence of error conditions. The hard limit is the maximum value which can be reached before the user gets the error messages Out of file handles. The following sections describe issues related to operating system performance: 2. Linux Parameter tcp_fin_timeout By reducing the value of this entry. it can result in an increase in half-open connections. usage patterns such as the number of concurrent users and sessions and so on. make sure to increase the hard limit as well. Consult your Linux (OEL / RHEL / SLES) documentation for more information on how to permanently change the value for this parameter. TCP/IP can release closed connections faster.

Important Note: It is only recommended to enable /3GB. This parameter determines the availability of user ports requested by Oracle® Business Intelligence Enterprise Edition. if BI Presentation Services (32bit) crashes due to 2 GB process virtual memory limit.com/kb/2207548 Tip: How-to change a power plan: 1. Tip: The utility to manage the BCD Store. /3GB switch applies to BI Presentation (sawserver. Balanced High Performance Tune Windows 2008 (32bit) /3GB switch.2. 7 . and the default end port is 65535. You can view the current dynamic port range on the server by using the following “netsh” command: netsh int ipv4 show dynamicport tcp Set the power option setting to "High performance" With High Performance power scheme.EXE. you would need to type in BCDEDIT.1. To set /3GB /USERVA=2900. *Use the following “netsh” command to configure start port and the range: netsh int ipv4 set dynamicport tcp start=1025 num=64508 Default Value 16383 Suggested Value* 65532 Important Note: If you are using firewalls to restrict traffic on your internal network you will need to update the configuration of those firewalls to compensate for the new port range. the start port is 49152. Close the Power Option window. processors are always locked at the highest performance state. read MS KB article: http://support.2 Windows 2008 Tuning Parameters This topic describes how to tune the Windows 2008 operating system to optimize the performance of your Oracle® Business Intelligence Enterprise Edition. 2. Important Note: For more details.e. Tip: By default. BCDEDIT.exe) process i. Under Control Panel click on Power Options. compiled with the /LARGEADDRESSAWARE switch: Default process user limit (userVa) is 2048 MB. Choose the “High Performance” option 3.microsoft. this means there are 16383 usable dynamic ports.EXE /Set IncreaseUserVa 2900 in command prompt (cmd). Windows 2008 Server Parameter MaxUserPort Under heavy loads it may be necessary to adjust the MaxUserPort.

Parameter TcpTimedWaitDelay This parameter controls the amount of time the OS waits to reclaim a port after an application closes a TCP connection. Using the /3GB switch allocates 1 GB to the kernel and 3 GB to the User-mode space.3 Windows 2003 Tuning Parameters This topic describes how to tune the Windows 2003 operating system to optimize the performance of your Oracle® Business Intelligence Enterprise Edition.2. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management Open the Data: SystemPages Enter its new value (hex): FFFFFFFF Default Value 240 Suggested Value 30 5000 65534 3. After applying above settings. file caches among others. Tip: In registry set this parameter using following: HKLM\System\CurrentControlSet\Services\Tcpip\Parameters Value: MaxUserPort Value Type: dword Data: 65534 (decimal) Tune Windows 2003 (32 bit) /3GB switch Important Note: It is only recommended to enable /3GB. 8 . Enterprise" /fastdetect /NoExecute=OptOut /3GB /Userva=2900 2. Using a range of memory for the /userva=xxxx switch that is within the range of 2900 to 3030.1. if BI Presentation Services (32bit) crashes due to 2 GB process virtual memory limit.ini file demonstrates how to use the new switch to tune a server to allocate 2. in order to make sure OBIEE and Windows stability: 1. Increase the SystemPages in registry: The setting being updated controls the allocable memory for the operational system caches. The following sample boot. During a heavy users load. Therefore it is strongly recommended to implement following settings when /3GB switch is applied. Tip: In registry set this parameter using following: HKLM\System\CurrentControlSet\Services\Tcpip\Parameters Value: TcpTimedWaitDelay Value Type: dword Data: 30 (decimal) MaxUserPort The number of user-accessible ephemeral ports that can be used to source outbound connections is configurable using this parameter.196 MB of Kernel-mode virtual memory. This increases the available kernel space by 172 MB: [boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003. has a default value of 4 minutes. these limits may be exceeded resulting in an address in use: connect exception.900 MB of User-mode virtual memory and 1. reboot the server. and the value being set will tell Windows to calculate the value itself on the side of the maximum allocable resources.

Tip: Set using command no -r -o somaxconn=8192 1024 8192 Socket send buffer size Tip: Set using command no -r -o tcp_sendspace=16384 16384 For optimal value for your Ethernet adapter. Tip: Set using command no -r -o tcp_keepintvl=10 150 10 tcp_keepinit Specifies the connection.a Tip: Use the command "/bin/genld -l" to discover the libraries in use 9 .4 AIX Tuning Parameters This topic describes how to tune the AIX (6. if the "read-other" bit is turned on. etc) with this command: chmod o+r *. Tip: Set using command no -r -o tcp_timewait=1 Default Value 1 Suggested Value 1 tcp_keepidle KeepAlive packet ensures that a connection stays in an active/ESTABLISHED state. For optimal value for your Ethernet adapter. AIX Parameter tcp_timewait By reducing the value of this entry. consult IBM support. AIX will share common memory for these libraries. TCP/IP can release closed connections faster. consult IBM support.2. 150 initial timeout value for TCP 40 Tip: Set using command no -r -o tcp_keepinit=40 Listen Backlog Increase this to handle peak incoming connection rates under heavy load. ldap. Tip: Set using command no -r -o tcp_keepidle=600 14400 (2 hours) 600 (5 minutes) tcp_keepintvl Specifies the interval between packets that are sent to validate the connection.1) operating system to optimize the performance of your Oracle® Business Intelligence Enterprise Edition. Socket receive buffer size Tip: Set using command no -r -o tcp_recvspace=16384 16384 User Limit Parameter Tip: ulimit -a command displays all the ulimit limits.1.1 / 7.so *. It is recommended to change the permissions for all OBIEE libraries and client libraries ( database. time (seconds) file (blocks) data (kbytes) stack (kbytes) memory (kbytes) coredump (blocks) nofiles (descriptors) Default Default Default Default Default Default Default unlimited unlimited unlimited 4194304 unlimited unlimited 8192 OBIEE libraries are shared among processes running on the same box. providing more resources for new connections.

The default value is 40. 10 . LDR_CNTRL=IGNOREUNLOAD@LOADPUBLIC@PREREAD_SHLIB@MAXDATA=0x200000000 Important Note: 8GB or 16GB would be a good starting point for 64-bit. Use the tprof command to determine if the check_lock routine has high CPU usage. The result is a serious impact on multi-processor machines. If the servers crash for insufficient storage. only one call at a time). you can increase the value even more. free(). and realloc() subroutine calls. AIXTHREAD_COND_DEBUG=OFF Tip: Maintains a list of condition variables for use by the debugger SPINLOOPTIME=1000 Tip: SPINLOOPTIME controls the number of times the system will retry a busy lock before yielding to another process. the size can be adjusted with this AIX environment variable.heaps:4 Multiple heaps are required so that a threaded application can have more than one thread issuing malloc(). AIXTHREAD_MNRATIO=1:1 AIXTHREAD_MUTEX_DEBUG=OFF Tip: Maintains a list of active mutexes for use by the debugger. you should set this value to S. With a single heap. AIXTHREAD_RWLOCK_DEBUG=OFF Tip: For optimal performance. or realloc() call would be serialized (that is. Tip: How to review the bmaxdata value $ dump -X32_64 -o sawserver to check bmaxdata DB2_SKIP_TRACE=1 For more information about AIX tuning. The default is 0 MALLOCMULTIHEAP=considersize. nqsserver) require a lot of heap space for execution. free(). all threads trying to do a malloc(). If it does. This should be increased to 1000 or higher because a busy lock retry is inexpensive compared to the alternative. usage patterns such as the number of concurrent users and sessions and so on. which signifies system-wide contention scope (1:1). The number of times to yield the processor before blocking on a busy lock is n. where multiple locks are in use. YIELDLOOPTIME=4 Tip: This variable has been shown to be effective in OBIEE. 32GB. MALLOCTYPE=buckets MAXDATA The executables (sawserver. you should set the value of this thread-debug option to OFF.e.Set the following environmental variables in environment file OracleBIServerComponent / OracleBIPresentationServicesComponent process: for running AIXTHREAD_SCOPE=S Tip: For OBIEE. you should consult your AIX vendor’s documentation. Based on your system resources availability you can set MAXDATA to higher value i. You can adjust these and other parameters based on actual system load. Note the above TCP/kernel tunable parameters and their corresponding values are provided as examples and rough guidelines only.

there are some negative performance implications on some older versions of Solaris if you set these numbers too high. Note: Solaris default network tuning parameters should be sufficient in most cases. TCP/IP can release closed connections faster.5 Oracle® Sun Solaris Tuning Parameters This topic describes how to tune the Solaris operating system to optimize the performance of your Oracle® Business Intelligence Enterprise Edition. providing more resources for new connections. it’s always best practice to increase the size of key TCPrelated parameters to improve system performance and reduce dropped connections. On very fast networks. network centric workloads. Tip: The syntax for adjusting this parameter in the /etc/system file is shown below: set rlim_fd_cur=65535 tcp_time_wait_interval It is recommended to reduce this setting to 60.2. or 1 minute. your application’s throughput will suffer dramatic degradations because new connection requests may have to wait for a free space in the application’s file descriptor table. Tip: The command “netstat -a | grep TIME_WAIT | wc -l” will count all of the TCP connections that are in the TIME_WAIT state. Please make sure to check your operating system documentation and release notes. On Solaris this means setting the “rlim_fd_cur” in the /etc/system file and rebooting the box. By reducing the value of this entry. you should make sure that the values are set 49152 This parameter is calculated based on the network bandwidth and latency. Sun Solaris Parameter File descriptors (nofiles) Important Note: On any box that hosts an Oracle® HTTP Server / WebLogic Server / OBIEE (Presentation/BI) server / Essbase server it is recommended to increase nofiles (descriptors) to optimal value. this is the default value starting in Solaris 9/10. As this number approaches the maximum number of file descriptors per process.000 milliseconds.1. You could follow this rule to calculate: <numbers of bits per Default Value 256 Suggested Value 65535 60000 30000 11 . For heavy. Tip: Set using command: ndd -set /dev/tcp tcp_time_wait_interval 30000 tcp_xmit_hiwat The tcp_xmit_hiwat and tcp_recv_hiwat parameters control the default size of the send window and receive window for each TCP connection.

1024 (max_q) 4096 (max_q0) Connection backlog This parameter controls the maximum allowable number of completed connections waiting to return from an accept call (that have completed the three-way TCP connection handshake). and other improvements of the OS. which benefits WebLogic Server in regards to performance and functionalities. and performance will suffer accordingly. the default value of 0 means that the system automatically sizes an appropriate value for this parameter at boot time. performance. 49152 second> * <roundtrip latency> * 8 [bits/byte] This parameter is calculated based on the network bandwidth and latency. By default. Solaris 9 changes the default settings for both parameters to 48K. You could follow this rule to calculate: <numbers of bits per second> * <roundtrip latency> * 8 [bits/byte] 512 (in Solaris 9) 0 (in Solaris 10) 1024 (in Solaris 9) In Solaris 10. Certain patches specifically target the Java platform. Increase these values if you do see non-zero values for tcpListenDrop in the output for the following command: netstat –s | fgrep –i listendrop 128 (max_q) 1024 (max_q0) Increase the values in steps of 256 starting from the default value Tip: Set using commands: ndd -set /dev/tcp tcp_conn_req_max_q 1024 ndd -set /dev/tcp tcp_conn_req_max_q0 4096 Important Note: It is important to keep systems up to date with Solaris patches because the patches provide fixes for security vulnerabilities. tcp_recv_hiwat The tcp_xmit_hiwat and tcp_recv_hiwat parameters control the default size of the send window and receive window for each TCP connection. If the size is too small.to at least 32K. Solaris 9 changes the default settings for both parameters to 48K. By default. depending on the available memory. On very fast networks. 12 . respectively. it will result in long hash chains in each bucket that force the operating system into a linear search for the socket entry of interest. you should make sure that the values are set to at least 32K. You should increase this parameter only if you notice that your system is dropping connections. tcp_conn_hash_size (Solaris 9) / ipcl_conn_hash_size (Solaris 10) This parameter controls the size of a hash table that helps quickly locate the TCP socket’s data structure in the kernel.

and then click on Connection Pool tab.2 Tune Oracle® WebLogic Server (WLS) parameters This topic describes how to tune the WebLogic Server to optimize the performance of your Oracle® Business Intelligence Enterprise Edition. 13 .2. Tip: To increase this value: 1. Data Source Name bip_datasource mds-owsm EPMSystemRegistry Default Value Initial Capacity: 0 Maximum Capacity: 50 Initial Capacity: 0 Maximum Capacity: 50 Initial Capacity: 0 Maximum Capacity: 50 Suggested Value Initial Capacity: 0 Maximum Capacity: 150 Initial Capacity: 0 Maximum Capacity: 150 Initial Capacity: 0 Maximum Capacity: 150 Important Note: You need to determine the optimal value for the Maximum Capacity as part of your pre-production performance testing.1 Increase the Number of Connection Pool If JDBC (BI) data sources are running out of connections to the relational database then you need to set the maximum number of connections to high value for the following Business Intelligence Enterprise Edition data sources: Important Note: Reason why the default value maximum capacity size is set to lower value is because it is important to protect database resources. 2.1 Tuning JDBC Data Sources You can improve Oracle Business Intelligence Enterprise Edition performance and stability by properly configuring the attributes in JDBC data sources in your bifoundation_domain domain. Select your data source (for example “mds-owsm”). you may exceed the limit of PROCESSES / OPEN_CURSORS on Oracle® database server. If you increase initial / maximum capacity to very high value. So make sure you have enough resources on the database server (available memory is a constraint). 2. and then Maximum Capacity. Log in to the WebLogic Server administration console.2.2. if you have a data source with 150 connections deployed on 1 server and if you use default Statement Cache Size 10. Tip: Here is the example on how to size open cursors value on Oracle® database.1. you may open 1500 (150 x 1 x 10) cursors on your database server for the cached statements. 2. Once optimal values are determined then set the value of Initial Capacity equal to the value for Maximum Capacity in order to boost performance of JDBC in WebLogic Server web applications.

2 driver versions allow this.2 Tune the Statement Cache size Reusing prepared and callable statements reduces the round trip to the database resulting in lower CPU usage on the database server hence improving performance for the current statement and leaving CPU cycles for other tasks. and will permit significant memory savings by sharing/reclaiming memory if set at the driver level.2. so if the WebLogic Server pool is configured to cache too many statements. Oracle® JDBC driver does use a lot of memory in its Prepared/Callable statements. If need be statement caching can be set at driver level.e. 14 .1. If you are using Oracle® database i. Data Source Name bip_datasource mds-owsm EPMSystemRegistry Default Value 10 10 10 Suggested Value* 0 0 0 *The above setting to 0 is Oracle®-specific. The latest Oracle® JDBC 11. this takes lots of heap memory space. Important Note: If you are using SQL Server Database then use the default value 10 and determine the optimal value for the “Statement Cache Size” as part of your preproduction performance testing.2. If the heap memory utilization is too high then you can configure the pool to not cache statements (set the cache size to zero for following data sources). “Oracle® JDBC driver” then it is recommended to set the following data sources statement cache size to 0 in order to disable the WebLogic Server cache.

 Tip: Changing the stuck threads values will only change the detection of stuck threads. it is not required to increase Accept Backlog as default listen thread Accept Backlog value is increased to 300 which is a better default value. adjust as needed.” Because a stuck thread cannot complete its current work or accept new work. This can cause the thread to be stuck with that operation for whatever time it takes to complete that operation. click on BI Managed Server (bi_server_n) and then click on Tuning tab: 15 .2. long running large reports. The performance is not impacted or controlled through the stuck thread detection. Important Note: In WebLogic Server 10. WebLogic Server will not "delete" or "kill" a thread in case it becomes stuck. Only the reporting is changing. the server logs a message each time it diagnoses a stuck thread.3. computation loop inside an application) can get into an infinite loop. Use the below Stuck Threads suggested settings as a starting point.2 Tune Connection Backlog Buffering Tune the number of connection requests that a WebLogic Server instance will accept before refusing additional requests. and then. Database / Essbase call. This does not mean that there are no stuck threads any more. after careful testing of your long running transactions. Performance of the server can degrade significantly if many such threads get stuck. The Accept Backlog parameter specifies how many Transmission Control Protocol (TCP) connections can be buffered in a wait queue.  Some operations (for example.x.2. Managed Servers bi_server1 AdminServer Default Value Stuck Thread Max Time=600 Stuck Thread Timer Interval=60 Stuck Thread Max Time=600 Stuck Thread Timer Interval=60 Suggested Value Stuck Thread Max Time=1200 Stuck Thread Timer Interval=1200 Stuck Thread Max Time=1200 Stuck Thread Timer Interval=1200 Tip: To configure stuck thread detection behavior.2. Meaning how long usually a specific operation should take in OBIEE. complex large dashboards.3 Stuck thread detection behavior Tuning WebLogic Server automatically detects when a thread in an execute queue becomes “stuck. If such an operation takes longer than 600 seconds then you should increase the stuck thread value to a higher one to prevent the reporting of a stuck thread. 2.

Possible values are: o 0—Indicates only direct groups will be found. check the user group memberships in Active Directory. 16 . only direct members of Group A will be found.  Max Group Membership Search Level—Controls the depth of a group membership search if Group Membership Searching is defined.html . Tip: If you see BI Managed Server JVM seg faults and then it restarts / hangs when a user logs in. o If a limited search is defined. Max Group Membership Search Level must be defined. when searching for membership in Group A. if Group C is a member of Group B. This option controls how deeply to search into nested groups. For more information. this option allows improved performance during user searches by limiting the search to the first level of the group. For example. If the user belongs to groups in a circular reference (group A belongs to group B that belongs to group A). without additional configuration parameters. If Group B is a member of Group A. a search for membership in Group A will return direct members of Group A. That is. However.2. the members of Group C will not be found by this search.4 To improve the performance of WebLogic and LDAP Authentication providers: To optimize the group membership caches for WebLogic and LDAP Authentication providers. If Group B is a member of Group A. if this option is set to 1. o Any positive number—indicates the number of levels to search. For configurations that use only the first level of nested group hierarchy. Max Group Membership Search Level is ignored. the members of Group B will also be found by this search. o If an unlimited search is defined. the members will not be found by this search. refer to “Improving the Performance of WebLogic and LDAP Authentication Providers” section at http://download. the JVM may segfaults. set the following attributes (found in the Administration Console on the LDAP Authentication provider’s Configuration → Provider Specific and Performance pages):  Group Membership Searching—Controls whether group searches are limited or unlimited in depth. To workaround that set in WebLogic Server administration console the "Max Group Membership Search Level" for the AD provider.2.com/docs/cd/E12840_01/wls/docs103/secmanage/atn.oracle.

Important Note: This change does not take effect immediately—it requires the server be restarted. and allows for the application to use the native driver objects directly. The wrapping can be turned off by setting this value to false. 6.2. deselect the checkbox to disable wrapping. This allows for features like debugging output and track connection usage to be done by the server. If you have not already done so. In the Domain Structure tree. 5. 3. Select the Configuration: Connection Pool tab. To activate these changes. This improves performance.2. 2. In Wrap Data Types. in the Change Center of the Administration Console. Click Save. Scroll down and click Advanced to show the advanced connection pool options. in the Change Center of the Administration Console. JDBC data type’s objects are wrapped with a WebLogic wrapper. then select Data Sources. 8. expand Services. 17 . in some cases significantly.5 Disable Wrap Data Types By default. 7. 4. click Activate Changes. click Lock & Edit. On the Summary of Data Sources page. click the data source name for example “mds-owsm”. Tip: How to Disable Wrapping in WLS Administration Console You can use the Administration Console to disable data type wrapping for following JDBC data sources in bifoundation_domain domain: Data Source Name bip_datasource mds-owsm EPMSystemRegistry To disable wrapping for each JDBC data source (as stated in above table): 1.

Thread-local areas (TLA) is used for min=4k -XXtlasize:min=4k.1 Tuning 64bit JRockit JVM In JRockit JVM (R28).3. Optimal JVM settings can be determined only by close monitoring of application server performance under peak realistic load.lang.preferred=64k object allocation. Note the suggested value (depending on available physical memory on each server). Below table lists the memory setting that applies to all managed servers in BI domain i. You may also need to consider increasing the physical memory on server to permanently resolve the “getNewTla” error occurrences. the default value of the -Xmx option is changed from 1 GB to 3 GB on 64-bit OS. a large heap increases the memory footprint of the Java process. Also large heap reduces the garbage collection frequency and fragmentation. 18 . This option preferred=64k (-XXtlaSize) can be used to tune the size of the thread-local areas. however. Note: It is recommended to use the default garbage collection mode i. bi_server_n.e. The JVM also ensures that the heap size grows up to the maximum Java heap size (-Xmx) before an OutOfMemory error is thrown. Admin Server. and the Oracle® JRockit Java argument: Setting Minimum heap Maximum heap Suggested Value 1024 MB 2048 MB Java Argument* -Xms1024m -Xmx2048m -XXcompressedRefs:size=32GB Increase the size of Compressed 32 GB References only to resolve native OutOfMemory (OOM) error despite physical memory being available. Important Note: Only apply this setting if you see “java. which are often too small to accommodate Oracle Business Intelligence Enterprise Edition 64 bit requirements. In addition. the heap grows faster than before.2. Note the JRockit JVM auto shrinks the heap if it is unused or if other applications require more physical memory.3 Tune 64bit Java Virtual Machines (JVM) Newly deployed web application server instances use default memory heap settings. -Xgc:throughput. improving the throughput of the application.OutOfMemoryError: getNewTla” error in web app logs. 2.e.

bi_server1) managed servers:  Startup Times Take Longer When Using JRockit JVM Versus Sun JVM: The Oracle® JRockit JVM is by default optimized for server use.*Warning: Make sure you have enough physical memory allocated / available on 64bit servers and then use the above settings as a starting point.    19 . CPU. and a reasonable value is around 75 MB.1 Common JRockit JVM issues seen with BI (i. For a stable / an even performance over time. Workaround: The default value of -XX:MaxClassBlockMemory=50 MB. adjust as needed. This will fix the issue native OutOfMemory errors. as the application runs. 2. and after load testing. and determine if they have sufficient memory / CPU’s to support their requirements. On Oracle Solaris SPARC.  By design Oracle® JRockit will often use more memory than Sun JVM because JRockit compiles everything and is optimized for being a server-side JVM.e. the JRockit JVM optimizes frequently called methods.x up to date with latest fix release because the latest release provide fixes for security vulnerabilities. memory) then it is recommended to experiment with switching to the Sun JVM which should save some system resources.e. improving the performance further. if native OutOfMemory errors occurs despite memory being available only then add the parameter -XXcompressedRefs:size=32GB in JVM startup options to enable heap to grow up to 32 GB heap (practical limit of 25 GB). but customer really should consider to do a performance tuning and sizing exercise.x. When you run the JRockit JVM on a 64-bit system with a heap size less than 4 GB. you should set the initial heap size (Xms) to the same value as the maximum heap size (-Xmx). and other improvements of the Oracle® JRockit R28.1. Oracle® JRockit (R28) might occasionally run out of memory when a large number of classes are loaded (in the order of 100000).1. which means that the startup times can be longer in favor of high performance as soon as the application is up and running. So if your customer have limited resources (i. Moreover heap size still be restricted till the limits defined using -Xmx only benefit would be your heap will get the capability to grow beyond 4 GB up to 25 GB due to increase in size of pointer to 32 bit address. It is important to keep Oracle® JRockit R28. performance.1. Moreover. due to the way classblock memory is reserved.3.

20 . bi_server_n. and after load testing.2.3. Admin Server. For a stable / an even performance over time. Note the suggested value (depending on available physical memory on each server). and the Oracle® Sun Java argument. you should set the initial heap size (-Xms) to the same value as the maximum heap size (-Xmx). adjust as needed.e.2 Tuning 64bit Sun JVM Below table lists the memory setting that applies to all managed servers in BI domain i. Setting Minimum heap Maximum heap Minimum permanent generation heap Maximum permanent generation heap Minimum young generation size Maximum young generation size Suggested Value 1024 MB 2048 MB 256 MB 512 MB 512 MB 512 MB Java Argument* -Xms1024m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:NewSize=512m -XX:MaxNewSize=512m *Warning: Make sure you have enough physical memory allocated / available on servers and then use the above settings as a starting point.

4. it is not recommended to change to other available dynamic strategies. 2.4 Tune 32bit Java Virtual Machines (JVM) Newly created application server instances use default memory settings. and the Oracle® JRockit Java argument: Setting Minimum heap Maximum heap Suggested Value 1024 MB 1024 MB Java Argument -Xms1024m -Xmx1024m Important Note: By setting minimum heap size = maximum heap size gives you a controlled environment where you get a good heap size right from the start and also to minimize minor/major garbage collections. you need to use a 64bit JVM in order to allocate more than 1024 MB of maximum heap. the JVM will do a full garbage collection of the entire heap before resizing the permanent area. the suggested value. 2. For 32bit JVM in order to allocate a heap of more than 1024 MB. See section “Tune 64bit Java Virtual Machines (JVM)” in this guide. which are often too small to accommodate Oracle Business Intelligence Enterprise Edition requirements.1 Tuning 32bit JRockit JVM This table lists the memory setting. the suggested value.4. Important Note: By default. and the Sun’s Java argument: Setting Minimum heap Maximum heap Minimum permanent generation heap Maximum permanent generation heap Suggested Value 1024 MB 1024 MB 128 MB 256 MB Java Argument -Xms1024m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=256m Important Note: By setting minimum heap size = maximum heap size gives you a controlled environment where you get a good heap size right from the start and also to minimize minor/major garbage collections. make sure that the size of the permanent generation heap must be increased (as stated in above table).2 Tuning 32bit Sun JVM This table lists the memory setting.2. Important Note: Also for application servers that use Sun's Java Virtual Machine (JVM). JRockit JVM uses the dynamic garbage collection strategy to optimize for throughput. 21 . For OBIEE JVM component. When the permanent area of the heap is too small.

It is recommended to reduce or disable the minBytesPerSecond property in IIS 7.exe set config -section:system. select an application pool.2. Disable “Regular Time Interval (minutes)” setting for BI Application Pool. selection an application pool and then click on “Advanced Settings . on Application Pool page. and then click Recycling in the Actions pane and deselect this option.1 IIS 7. minBytesPerSecond property Tip: If “Timer_MinBytesPerSecond” error message noted in httperr1..5 Tune HTTP Server parameters This topic describes how to tune the HTTP server to optimize the performance of your Oracle® Business Intelligence Enterprise Edition.. Tip: In IIS manager.0+ HTTP Server Tuning Parameters Disable “Idle Time-out (minutes)” setting BI Application Pool.” to set this configuration.applicationHost/webLimits /minBytesPerSecond:"50" /commit:apphost Default Value 20 Suggested Value 0 1740 0 22 . Run the Command: appcmd.0+ to prevent a slow client connection from being closed prematurely.5. 240 50 How-To: Navigate to Path: C:\Windows\System32\Inetsrv\ . Tip: On the Application Pools page.log file on the IIS server. 2.

Tip: On the Application Pools page. 23 .applicationHost/sites "/[name='Default Web Site']. Tune the following memory limits for all the BI (64bit) Application Pool: Private Memory Limit (KB) Virtual Memory Limit (KB) Tune the following memory limits for all the BI (32bit) Application Pool: Private Memory Limit (KB) Virtual Memory Limit (KB) Important Note: It is recommended to set no memory limits (0) only for 64bit IIS. and then.0+ parameters should be set only after considering the nature of the workload and the system capacity (i. and then click Recycling in the Actions pane and deselect all the options. To avoid potential performance issues. values for IIS 7.200 How-To: Navigate to Path: C:\Windows\System32\Inetsrv\. after careful testing. Run the Command: appcmd. 120 7.connectionTimeout:02:00:00" /commit:apphost = Default = Default =0 =0 = Default = Default = 1048576 = 1572864 Important Note: Use the above suggested settings as a starting point.exe set config -section:system. CPU and memory). it is recommended to increase this value. adjust as needed.Connection Timeout Tip: In order to avoid random disconnections for remote users. Only force memory limits for 32bit IIS. select an application pool.limits.e.

The default MPM type is Worker MPM.2 Oracle® HTTP Server (ohs) Tuning Oracle® HTTP Server uses directives in httpd. after careful testing.e.2. adjust as needed. To avoid potential performance issues. CPU and memory).g. and then.conf file. Parameters MaxKeepAliveRequests KeepAliveTimeout KeepAlive Timeout # WinNT MPM (this MPM is for Windows Only <IfModule mpm_winnt_module> ThreadsPerChild ListenBackLog MaxRequestsPerChild </IfModule> #worker MPM (by default OHS use multithreaded mode in UNIX) <IfModule mpm_worker_module> StartServers MaxClients ListenBackLog MinSpareThreads MaxSpareThreads ThreadsPerChild MaxRequestsPerChild AcceptMutex fcntl LockFile "${ORACLE®_INSTANCE}/diagnostics/logs/${COMPONENT_TYPE}/${COMPONENT_NAME}/http_lock" Default Value 100 5 On 300 Suggested Value 0 15 On 6000 = 150 = Default =0 = 1048 = 1000 =0 =2 = 150 = Default = 25 = 75 = 25 =0 =2 = 1024 = 1000 = 25 = 75 = 64 =0 </IfModule> SendBufferSize ReceiveBufferSize Important Note: Only add this settings if your customer have large volume of data to display e.5.conf file. The directives for each MultiProcessing Module (MPM) type are defined in the httpd. 2000 to 10000 rows of data. 24 . values for OHS parameters should be set only after considering the nature of the workload and the system capacity (i. = OS dependent = OS dependent = 8123292 = 8123292 Important Note: Use the above suggested settings as a starting point.

microsoft.6.0 / 8. Tip: Implement the following recommendations to optimize Internet Explorer 7.0. Minimizing round trips over the Web to revalidate cached items can make a huge difference in browser page load times. Bandwidth Savings: Enabling HTTP compression can have a dramatic improvement on the latency of responses. Compression enabled on Oracle® HTTP server (ohs) level: HTTP IE / Firefox Decompression Layer (gizp. 2.com/kb/936213 “IE to download more than two files at one time” > http://support. see below MS KB articles at:   “How to optimize Internet Explorer” > http://support. below screen shot depicts the flow and where the compression and decompression occurs on Oracle® HTTP Server (ohs).0. Improves request/response latency: Caching makes it possible to suppress the payload of the HTTP reply using the 304 status code.microsoft. it will significantly reduce the remote (high latency) user response time.2.6 Tune HTTP Server Compression / Caching Why use Web Server Compression / Caching for Oracle® Business Intelligence? 1. deflate) WebLogic Server bi_server1:9704 Sending all compressed HTTP Responses to clients from Oracle port 7777 25 .    2.microsoft.com/kb/813827 In the IE browser navigate to: Tools -> Internet Options -> Advances -> Security and Locate the “Enable native XMLHTTP support” option and check the check box.microsoft.com/kb/555942 “Tune IE timeout values” > http://support.1 Web Server Compression Flow To better understand compression flow. deflate) Web Browser Rendering VPN (WAN) HTTP Oracle (ohs) :7777 Compression Layer (gzip.com/kb/282402 “IE slow performance or frequent freeze” > http://support. By compressing static files and dynamic application responses.

a.1.1 Oracle® HTTP Server (ohs) This topic describes how to enable compression in Oracle® HTTP Server of your Oracle® Business Intelligence Enterprise Edition.mp4$ no-gzip dont-vary #Caching of static files ExpiresActive On <IfModule mod_expires.conf file. can make a huge difference in browser page load times. verify that the following directives are included and not commented out: LoadModule expires_module "${ORACLE_HOME}/ohs/modules/mod_expires.mp3$ no-gzip dont-vary \.avi$ no-gzip dont-vary \.1.(gif|jpeg|png|x-javascript|javascript|css)$"> Header set Cache-Control "max-age=604800" </FilesMatch> </IfModule> 26 . 2.mov$ no-gzip dont-vary \.conf) for editing.x for the bi_server_n Managed Servers (refer to "OBIEE Enterprise Deployment Guide for Oracle Business Intelligence" document for details).(?:gif|jpe?g|png)$ no-gzip dont-vary \.2. How to Enable Compression and Caching: 1.so 4. This file is located in the OHS installation directory. To implement HTTP compression / caching.(?:pdf|doc?x|ppt?x|xls?x)$ no-gzip dont-vary \. To resolve this issue It is highly recommended to implement HTTP caching and compression that will help to minimize the round trips over the Web to revalidate cached items.c> <FilesMatch "\.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary \.c> ExpiresByType image/gif "access plus 7 days" ExpiresByType image/jpeg "access plus 7 days" ExpiresByType application/x-javascript "access plus 7 days" ExpiresByType text/css "access plus 7 days" ExpiresByType text/javascript "access plus 7 days" ExpiresByType image/png "access plus 7 days" </IfModule> #This stops the HTTP 304 replies in IE 7/8 browser <IfModule mod_headers. For example: ORACLE_HOME/Oracle_WT1/instances/instance1/config/OHS/ohs1 3. Add the following lines in httpd.c> SetOutputFilter DEFLATE SetEnvIfNoCase Request_URI SetEnvIfNoCase Request_URI SetEnvIfNoCase Request_URI SetEnvIfNoCase Request_URI SetEnvIfNoCase Request_URI SetEnvIfNoCase Request_URI SetEnvIfNoCase Request_URI </IfModule> \. In httpd.conf file below the directive LoadModule section to compression / caching and restart the OHS: #HTTP Compression <IfModule mod_deflate.6.so LoadModule deflate_module "${ORACLE_HOME}/ohs/modules/mod_deflate. Important Note: High load of HTTP replies with 304 status code causes the OBIEE 11g UI to work slow in IE browser 7 / 8. open the file HTTP Server configuration file (httpd. install and configure Oracle HTTP Server (OHS) 11. On the OHS machine.

557 1. Performance Gain Test (Oracle® HTTP Server) The test with/without HTTP compression enabled was conducted in internal lab to measure the transactions response time / throughput for Oracle® Business Intelligence Enterprise Edition.123.534.646 94% 350 0 HTTP/200: 483 HTTP/304: 525 355 0 HTTP/200: 15 - 27 .b. Total Throughput (bytes) (Total generated network traffic for one user) Average Network Delay (ms) Packet Loss % HTTP Response Codes Count 300 seconds 20 seconds 93% 18. Below table summarizes the performance improvement for OBIEE transactions over a 1 Mbps bandwidth link for one remote user. Average time (in sec) Before (Non-Compressed) Transaction Name Average time (in sec) After (Compressed) % Improvement Total transactions response time: OBIEE Main page > Display report (with 1000 rows) > Click & Navigate to next 1000 rows page up to 5 times.

2 IIS 7.0+ HTTP Server This topic describes how to enable compression and caching of your Oracle® Business Intelligence Enterprise Edition.staticCompressionLevel:9 -[name='gzip'].0.6. HTTP Compression should be enabled on the OBIEE site level as performance may hindered if enabled globally. Tip: Run the following command line option to increase GZip Compression Level: Navigate to Path: C:\Windows\System32\Inetsrv\ Run the command: Appcmd. How to Enable Compression IIS 7.2.exe set config /doDynamicCompression:"True" "obiee" -section:system. Important Note: High load of HTTP replies with 304 status code causes the OBIEE 11g UI to work slow in IE browser 7 / 8.0+: 1.webServer/urlCompression 2. for step by step details refer to IIS 7.x documentation. it is highly recommended to implement HTTP caching and compression that will help to minimize the round trips over the Web to revalidate cached items. To resolve this issue. 3. Ensure dynamic compression feature is installed via Web Server (IIS) > Add Role Services Wizard. Tip: Run the following command line option to apply Dynamic Compression on OBIEE web site level. Note: dynamic compression level default value is 0 and for static compression level default value is 7. Tip: Refer to WebLogic Server documentation on how to install and configure the Microsoft Internet Information Server Plug-In for IIS 7. can make a huge difference in browser page load times. Only static compression is installed by default. As stated below change the level of compression (in gzip) for dynamic files to 7 and for static files to 9. a. Restart the IIS HTTP Server. note in below command replace the “obiee” website placeholder with your web site name: Navigate to Path: C:\Windows\System32\Inetsrv\ Run the command: Appcmd. Increase the compression level of static and dynamic files.exe set config -section:httpCompression [name='gzip']. 28 .dynamicCompressionLevel:7 - Important Note: Raise the dynamic compression level above seven only if you need more network bandwidth and have sufficient CPU capacity to handle the extra load.

0+ Web Server: 1.webServer> <urlCompression doDynamicCompression="true" /> <rewrite> <outboundRules> <rule name="header1" preCondition="FilesMatch" patternSyntax="Wildcard"> <match serverVariable="RESPONSE_CACHE_CONTROL" pattern="*" /> <action type="Rewrite" value="max-age=604800" /> </rule> <preConditions> <preCondition name="FilesMatch"> <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/css|^text/xjavascript|^text/javascript|^image/gif|^image/jpeg|^image/png" /> </preCondition> </preConditions> </outboundRules> </rewrite> </system. 29 . In “web.0 Web Server with Oracle Business Intelligence.0+: Follow these steps to configure static file caching and content expiration if you are using Microsoft IIS 7. Restart IIS web server.0" encoding="UTF-8"?> <configuration> <system. Tip: It is important to install an IIS URL Rewrite Module that enables Web administrators to create powerful outbound rules as stated below.b. How to Enable Caching in IIS 7.webServer> </configuration> 2.config” file for OBIEE static files virtual directory (ORACLE_HOME/bifoundation/web/app) add the following highlight in bold the outbound rule for caching: <?xml version="1. Following are the steps to set up static file caching for Microsoft IIS 7.

Restart the IIS HTTP Server. If not excluded.css Tip: Run the following command line option to extend file extensions for compression: Navigate to Path: C:\Inetpub\AdminScripts Run the commands for gzip and deflate: cscript adsutil.0 HTTP Server This topic describes how to enable compression and caching of your Oracle® Business Intelligence Enterprise Edition.html. Tip: Run the following command line options to enable compression on the OBIEE site level. to enable compression at the individual OBIEE site.2.6.3 IIS 6. Edit the HcFileExtensions metabase property (for static files) and the HcScriptFileExtensions metabase property (for dynamic files) to apply compression to file types for both deflate and gzip compressions:  HcScriptFileExtensions set to asp. As stated below change the level of compression (in gzip. Navigate to Path: C:\Inetpub\AdminScripts Run the commands for gzip and deflate: cscript adsutil.vbs set w3svc/filters/compression/gzip/HcDynamicCompressionLevel 7 cscript adsutil. Read MS KB article at http://support. deflate) for dynamic files to 7.vbs set /w3svc/filters/compression/gzip/HcFileExtensions "css" "xml" "htm" "txt" "js" "html" "png" cscript adsutil.exe  HcFileExtensions set to htm.dll. How to Enable Compression IIS 6. Important Note: IIS compression directory should be excluded from the antivirus software's scan list.vbs set /w3svc/filters/compression/deflate/HcFileExtensions "css" "xml" "htm" "txt" "js" "html" "png" 2. Use two new metabase properties that are DoStaticCompression and DoDynamicCompression.com/kb/817442 30 . Important Note: raise the dynamic compression level above seven only if you need more network bandwidth and have sufficient CPU capacity to handle the extra load. Specify following additional file types to compress.vbs set w3svc/filters/compression/deflate/HcDynamicCompressionLevel 7 3. antivirus scanning of IIS compression directory may result in 0-Byte file.js.txt.vbs set w3svc/1/root/obiee/DoStaticCompression true” Navigate to Path: C:\Inetpub\AdminScripts Run the commands: “cscript adsutil. note in below commands to replace obiee site level with your web site name: Navigate to Path: C:\Inetpub\AdminScripts Run the commands: “cscript adsutil. HTTP Compression should be enabled on the site level as performance may hindered if enabled globally.0: 1.microsoft.vbs set w3svc/1/root/obiee/DoDynamicCompression true” 4. a.

2. Run Internet Service Manager.0 Web Server with Oracle Business Intelligence. 31 . Important Note: Only apply following caching to OBIEE static files found inside the /analytics directory (/web/app). click on HTTP Headers tab: i.b. 3. ii. In Internet Service Manager. right-click the OBIEE static files (/web/app) subdirectory properties. How to Enable Caching in IIS 6.0 Web Server: 1. Restart the IIS HTTP Server. Following are the steps to set up static files caching for Microsoft IIS 6.0: Follow these steps to configure static file caching and content expiration if you are using Microsoft IIS 6. Specify the content expiration to 7 days. Add Custom HTTP headers “Cache-Control: max-age=604800”.

Total processor utilization should be lower than about 70% to 80%. carefully monitor Paging activity. you will notice 5000 PTE as initial value after the reboot. Memory Processor Memory: Page Reads/sec Processor: % Processor Time_Total 32 .7 Tune Oracle® Database Parameters Database Administrator (DBA) to perform database monitoring and tuning on a periodic basis to ensure that you get the best optimal performance from your Oracle® Business Intelligence system.0 PERFORMANCE MONITORING OBIEE In addition to the standard system performance objects and counters (Processor. Memory. In these cases. System.000 “Critical” when Free System Page Table Entries is less than 5. File PerfMon. This topic outlines the processes that have to be monitored for the Oracle® Business Intelligence using default Operating System performance utilities.1. you also have to monitor the resource utilization at the process level. Memory Memory: Available Mbytes Should be no lower than 20% to 25% of installed physical memory. On OBIEE server. For more information on tuning the Oracle® database. 3. Tip: It is recommended that DBA should further tune the Oracle® Database parameters using Automatic Work Repository (AWR) / Active Session History (ASH) reports captured during normal / peak users load. 3.2. Paging.exe is a Windows system file and it’s located in the folder C:\Windows\System32. 3.1 Performance Monitoring in Windows environment In Windows Operating System use default available performance monitoring tool called “PerfMon”. see the Oracle® Database Performance Tuning Guide.000 at all times. Disk). if you enable /3GB without proper tuning as per recommendations stated in section “Tune Windows 32bit /3GB”. Network.000.1 System level Performance Counters using Windows Perfmon Utility: Subsystem Memory Counter Memory: Free System Page Table Entries Guidance “Warning” when Free System Page Table Entries is less than 8. This counter should be below 1.

ignore this counter and concentrate on the latency counters: PhysicalDisk\Average Disk sec/Read and PhysicalDisk\Average Disk sec/Write. The average value should be below 20 ms. Rule of thumb: When Avg. this counter does not tell us how to fix the problem. If a SAN is being used. For a 1000-Mbps NIC. For a 100-Mbps network interface card (NIC). It should be zero (0) at all times. Must be lower than about 25 ms. Spikes (maximum values) should not be higher than 50 ms. Disk Seconds/Transfer (the disk latency counter) is significantly greater than 25 ms. Remember. Disk Disk PhysicalDisk: Average Disk Queue Length Disk PhysicalDisk: Disk sec/Read Average Disk PhysicalDisk: Average Disk sec/Write Network Network Interface: Bytes Total/sec Network Network Interface: Packets Outbound Errors 33 . The average value should be below 20 ms.Processor Processor: % Processor Time_(N) Physical Disk: Avg. the disk subsystem is unhealthy and is a bottleneck. The average should be less than the number of spindles of the disk. it only indicates there is a problem. Spikes (maximum values) should not be higher than 50 ms. it should be below 6–7 MB/sec. Disk sec/Transfer Each processor instance should be lower than about 70% to 80% utilization. it should be below 60–70 MB/sec.

reports the shared and private bytes allocated to a process. Process: Working Set . sawserver.reports the size of the paging file. in bytes. 4.1. of the paged pool.The maximum size. The value of this counter tends to rise during a memory leak. Counters / Guidance Process: % Processor Time – Process processor utilization should be lower than 90%. 34 . Process: Virtual Bytes Peak .exe (BI Server). Process: Virtual Bytes . in bytes. 3. of virtual address space the process has used at any one time. Process: Page File Bytes .reports the total number of faults (hard and soft faults) caused by a process. Process: Private Bytes .exe (BI Managed Server). an area of system memory (physical memory used by the operating system) for objects that can be written to disk when they are not being used.reports bytes allocated exclusively for a specific process. The virtual byte of the perfmon process grows at a quick rate and never releases any memory indicating memory leak in application. in bytes. its value tends to rise for a leaking process. its value tends to rise for a leaking process. The virtual byte of the perfmon process grows at a quick rate and never releases any memory indicating memory leak in application.exe (BI Presentation Services) 2. its value tends to rise during a memory leak.reports the number of handles that an application opened for objects it creates. its value tends to rise for a leaking process. java. java. Process: Page Faults /sec .2 BI Process level Performance Counters using Windows Perfmon Utility Product process Oracle Business Intelligence EE (OBIEE) Instance: 1.The size. Handles are used by programs to identify resources that they must access.The current size. Process: Pool Nonpaged Bytes .exe (BI Admin Server). of the virtual address space the process is using.3. Process: Handle Count . nqsserver.

Total sessions and Queries/sec for OBIPS and Oracle BI Server. To see additional metrics. and then the coreapplication. Tip: To view the performance of an Oracle Presentation Services and BI Server: 1. the perfmon URL is still valid to use i. expand the farm. From the Business Intelligence instance menu. 35 . choose Monitoring > Performance The Performance Summary page is displayed.2. From the navigation pane. to diagnose further about the problem. such as Presentation Services and BI Server components are running slowly or are hanging. http://<server:port>/analytics/saw. including performance metrics for a particular target.2 Built-in BI Metrics for Performance Monitoring You can use Fusion Middleware Control metrics to monitor System Components (BI processes) and WebLogic Server processes.3.dll?Perfmon 3. you can view more detailed performance information.e.1 Viewing the Performance of Oracle BI System Components If you encounter a problem. The Business Intelligence instance home page is displayed. click Show Metric Palette and expand the metric categories. as well as information about Active Sessions. Tip:  Use Oracle Enterprise Manager (EM) URL to monitor end to end OBIEE real time performance: http://<server>:7001/em  In Oracle Business Intelligence 11g. consider using Oracle Enterprise Manager Grid Control. Note that Fusion Middleware Control provides real-time data. 3. then Business Intelligence. If you are interested in viewing historical data. 2. It shows performance metrics. Current Sessions.

Navigate to the component and select Monitoring. o Tip: You can also view the performance of components. and select the target. you can: o Click Slider to display a slider tool that lets you specify that more or less time is shown in the charts. so that you can view the performance of more than one target at a time. For example. Then. To customize the time frame shown by the charts..The following figure shows the Performance Summary page with the Metric Palette displayed: 1. slide the left slider control to the right until it displays the last 10 minutes. enter the Start Time and End Time.. To overlay another target. 3. instead of the past 15 minutes.. such as Oracle HTTP Server or Oracle WebLogic Server. then Performance Summary from the dynamic target menu. to show the past 10 minutes. 2. Select the calendar and clock icon. comparing their performance. click Overlay > Another BI Instance. 36 . Select a metric to add it to the Performance Summary. The target is added to the charts.

This file can be read by using the command “sar –f <name of the file>”.e. trap. In the program. and CPU activity. Oracle Solaris iostat: Reports terminal and disk I/O activity and CPU utilization. Solaris and AIX.Report statistics on active process stats. and CPU activity. mpstat -P ALL 2 5 Display five reports of statistics for all processors at two second intervals. CPU states. and processes.This program shows a lot of performance statistics that goes on with your system.3 Performance Monitoring in UNIX environment This section outlines the key performance monitoring utilities/commands that can be employed in the UNIX environment i. sar: Collects. vmstat . mpstat . Linux top . reports. The first line of output is for the time period since boot & each subsequent line is for the prior interval. prstat . a.vmstat reports virtual memory statistics of process. Tip: Use nmon to monitor as vmstat only allows 4 disks to be observed. Kernel maintains a number of counters to keep track of the values. b. load average. disk. you can type:  M for memory usage information  P for CPU information  q to quit It also shows you the memory usage. vmstat: vmstat reports virtual memory statistics of process.g. disk. Linux. Example: sar -A -o <name of the file> <interval> <count>. disk. 37 . virtual memory.3. or saves system activity information.Report processors related statistics e.iostat's activity class options default to tdc (terminal. uptime. and CPU). virtual memory. trap.

. verify that the network is not becoming a bottleneck. | ALL ] [-ehh [ :mm [ :ss ] ] ] [ -XFile ] [ -fFile ] [ -iSeconds ] [ -oFile ] [ -shh [:mm [ :ss ] ] ] [ Interval [ Number ] ] Example: sar -A -o <name of the file> <interval> <count>. refer to your operating system documentation.. or saves system activity information. lvmstat: Reports input/output statistics for logical partitions. or detect packet loss or other network performance issues.. adapters. For details on network performance monitoring. Usage: /usr/sbin/sar [ { -A | [ -a ] [ -b ] [ -c ] [ -d ][ -k ] [ -m ] [ -q ] [ -r ] [-u ] [ -V ] [ -v ] [ -w ] [ -y ] } ] [ -P ProcessorIdentifier.c. . Usage: lvmstat { -l | -v } Name [ -e | -d ] [ -F ] [ -C ] [ -c Count ] [ -s ] [Interval [ Iterations ] ] Tip: Your operating system’s network monitoring tools can be used to monitor utilization. reports. sar: Collects. AIX vmstat – Statistics about virtual memory and cpu/hard disk usage Usage: vmstat [ -f ] [ -i ] [ -s ] [ -I ] [ -t ] [ -v ] [ PhysicalVolume .Displays the statistics of the disks every 5 seconds. This file can be read by using the command “sar –f <name of the file>”. 38 . or saves system activity information. ] [Interval [ Count ] ] Example: vmstat hdisk0 hdisk1 5 . reports. Usage: iostat [ -s ] [ -a ] [ -d | -t ] [ -T ][ -m ][ Physical Volume . disks and CD-ROMs.. ] [ Interval [Count ] ] -a specifies adapter throughput report -s specifies system throughput report -t specifies tty/cpu report only -T specifies time stamp -d specifies drive report only -m specifies statistics for paths nmon: Collects.Reports Central Processing Unit (CPU) statistics and input/output statistics for the entire system. TTY devices.. logical volumes and volume groups.. iostat .

--> <AbsoluteMaxEntries>20000</AbsoluteMaxEntries> <CruiseEntries>3000</CruiseEntries> <ForceLRU>true</ForceLRU> </Query> <Accounts> <!-. <ServerInstance> <Cache> <CatalogXml> <!-. --> <!-.AbsoluteMaxEntries is the enforced maximum number of entries. Tip: [default is 8 i. --> <CleanupFrequencyMinutes>14400</CleanupFrequencyMinutes> </Accounts> <AccountIndex> <!-.0 TUNING OBIEE COMPONENTS This chapter includes the following sections that provide a quick start for tuning Oracle® Business Intelligence system components (OBIPS.Cleanup this cache every N minutes. MaxThreads: Specifies the maximum number of threads.CruiseEntries is amount of entries the OracleBI Presentation server tries to maintain in its cache. --> <!-. numProcessors() * 8] Caching related tunable parameters There are several OBIPS cache related parameters for number of cache entries.1 Oracle BI Presentation Services Component To achieve better performance with Presentation Services (OBIPS) component.Remove from the cache everything older than N minutes --> <MaxAgeMinutes>240</MaxAgeMinutes> <MaxLastAccessedSeconds>14400</MaxLastAccessedSeconds> </CatalogXml> <Query> <MaxEntries>10000</MaxEntries> <!-.subsequent queries will fail until the maximum is no longer exceeded.xml file for better performance and scalability. --> <CleanupFrequencyMinutes>14400</CleanupFrequencyMinutes> 39 . On 64bit OS. BI Server).4. the default value is low so you may need to set it to 2048. Charting thread related tunable parameters Number of charting threads and maximum number of jobs allowed in the queue can be tuned for performance when the dashboards have several charts: <ServerInstance> <ThreadPoolDefaults> <ChartThreadPool> <MaxQueue>2048</MaxQueue> <MaxThreads>32</MaxThreads> </ChartThreadPool> </ThreadPoolDefaults> </ServerInstance> MaxQueue: Specifies the maximum number of jobs allowed in the queue. expiry time.Forces the cache to attempt to remove an old entry when MaxEntries is exceeded.Cleanup this cache every N minutes. When this maximum is reached --> <!-.e. 4. the following parameters can be tuned instanceconfig. and algorithm to clean up the cache etc.

To avoid potential performance issues. Hard limit on when a lock is removed as stale.1. after careful testing.1. (b) Runcat cmd line commands to cleanup all permissions that appear to be invalid.xml is ORACLE_INSTANCE\config\OracleBIPresentationServicesComponent\coreapplication_obipsn 40 . <ServerInstance> <Cursors> <NewCursorWaitSeconds>10</NewCursorWaitSeconds> </Cursors> </ServerInstance> Tip: Web catalog upgrade from 10g to 11. Tip: File location for instanceconfig.1. weekly). Note: It is recommended to run all above tasks each & every time content is delivered from a development environment into production environment (e. this may cause slow user login time and also slowness in accessing the dashboard.1. Resolution: (a) Cleanup Web catalog via instanceconfig.Cleanup this cache every N minutes. It may be useful to set this value higher (such as 10 seconds) to avoid page refreshes if the majority of queries are not returning in 1 second. --> <CleanupFrequencyMinutes>14400</CleanupFrequencyMinutes> </CatalogAttributes> </Cache> </ServerInstance> Catalog related tunable parameters There are several OBIPS web catalog related parameters available like Soft limit on when a lock is warned of being stale. and then.e. adjust as needed. values for BIPS parameters should be set only after considering the nature of the workload and the system capacity (i.</AccountIndex> <CatalogAttributes> <!-. How many characters to use to hash usernames into sub directories etc <ServerInstance> <Catalog> <LockStaleSecsSoft>14400</LockStaleSecsSoft> <LockStaleSecsHard>14400</LockStaleSecsHard> <HashUserHomeDirectories>3</HashUserHomeDirectories> </Catalog> <BIEEHomeLists> <Enabled>false</Enabled> <CatalogSynhronizationFrequencyMinutes>30</CatalogSynhronizationFrequencyMinutes> </BIEEHomeLists> </ServerInstance> Waiting time for results Controls how long the server waits for results after the initial request before returning the Searching page to the browser. as part of the OBIEE administrator's regular backup & maintenance of the catalog. CPU and memory). If running performance tests some test implementations behave properly only if this setting is set very high (such as 1000 seconds).xml using the steps documented in "Validating the Catalog" section in System Administrator's Guide for Oracle Business Intelligence Enterprise Edition. Caution: Use the above suggested settings as a starting point.g.3 or 11.5 sometime corrupts some user permissions.

41 . 5000000. then response times will increase. Then the number of DB connections required for this load would be N * L * P. Below discussion pertains to session Init Blocks. Init Block query response time will be high if the connection pool points to a remote database. 2. Verify that the same Init Block query is not already being used in some other Init Block. There are three types of Init Blocks which cannot be deferred. Number of Init Blocks For a given session.e.INI file and will increase the performance of the BI system under high users load: Initialization blocks Initialization blocks are defined in repository and are of two types. Init Blocks which have other non-deferred dependent Init Blocks. Data Mart Automation performance tuning in repository The following parameters in the OBIS repository can be tuned to achieve better aggregate creation time:  MIN_BULK_FETCH_BUFFER_SIZE (default value 32768) and MAX_BULK_FETCH_BUFFER_SIZE (default value 327680) needs to be set to a higher value i. If an Init Block were not set for deferred mode.INI parameter: [ SERVER ] INIT_BLOCK_CACHE_ENTRIES = 5000 Init block connection pool and location of data source As a practice. 3. can be tuned. Be judicious in creating Init Blocks. Deferred mode It is recommended to enable deferred mode for Init Blocks wherever possible. Verify that cache is enabled for the Init Block and is being utilized Init Blocks Cache  The number of Init Block result sets that are cached with respect to row-wise initialization. Deferred mode or lazy loading enables Init Blocks to be executed when needed. Init Block queries are executed serially and represent the per session memory costs.4. Security related session variable Init Blocks. it would get executed per session irrespective of its need.  NQSConfig. let’s assume there are peak N users concurrently downloading dashboard pages. catalog and session. Maximum connections parameter in each connection pool of the repository should be set to a very large value. Tip: Based on your data source used. each logical query executes P physical queries. allocate a separate DB connection pool for Init Blocks in the OBIS repository.2 Oracle BI Server Component Following are the important parameters to tune in NQSConfig. On average. Database connection pool tuning The maximum connection size needs to be set in the repository for each DB connection pool. Use OBIS performance counters in EM to determine if more or fewer DB connections are required.INI file. For a simple sizing calculation. tune these above values in DBFeatures. Catalog Init Blocks are invoked once in the life time of server. 1. Row-wise Init Blocks which do not have target variables. It controls the number connections which can be made by BI server to the database. each dashboard page executes L logical queries. On average. If fewer connections are specified.

Read-Only Mode    Makes the repository read-only so that online updates cannot be made. // default is 1024   Query Results Caching  One of the main advantages of query caching is to improve apparent query performance. NQSConfig. MAX_ROWS_PER_CACHE_ENTRY = 100000.INI parameters to be tuned: [ SERVER ] # This Configuration setting is managed by Oracle Business Intelligence Enterprise Manager READ_ONLY_MODE = YES. Each SERVER_THREAD uses 0 or more DB_GATEWAY_THREADs depending upon the number of DB queries executed.INI parameters to be tuned: [ CACHE ] MAX_QUERY_PLAN_CACHE_ENTRIES = 1024.g. Never set the query plan cache size to 0. Increased scalability due to less lock contention NQSConfig.INI parameters to be tuned: [ SERVER ] MAX_SESSION_LIMIT=5000 SERVER_THREAD_RANGE = 40-260. o It increases scalability due to less lock contention. # 0 is unlimited size # This Configuration setting is managed by Oracle Business Intelligence Enterprise Manager    MAX_CACHE_ENTRY_SIZE = 20 MB. Improve sort efficiency by increasing sort buffer   It helps to have the sort directory on a fast disk (e. a RAM disk) NQSConfig. DB_GATEWAY_THREAD_RANGE = 50-520.INI parameters to be tuned : [ CACHE ] ENABLE = YES. Each client request to OBI Server uses one SERVER_THREAD. It might be valuable to seed the cache during off hours by running queries and hence causing the server to cache their results. Doing so may cause Result Cache misses.Tuning of OBI Server session and threads     Maximum number of concurrent client connections (sessions) to OBI server can be tuned. NQSConfig. Query plan caching  When the Query Plan cache is hit : o It eliminates query parsing time. The number of cache entries and disk size limit for the cache can be configured This configuration parameters can be set through by Oracle Business Intelligence Enterprise Manager NQSConfig. # This Configuration setting is managed by Oracle Business Intelligence Enterprise Manager MAX_CACHE_ENTRIES = 10000.INI parameters to be tuned: [GENERAL] 42 .

INI parameters to be tuned: [ CACHE ] # This Configuration setting is managed by Oracle Business Intelligence Enterprise Manager GLOBAL_CACHE_STORAGE_PATH = "<shared directory name>" SIZE.2. Tip: For complete details on how to apply above parameters in NQSConfig.INI. CACHE_POLL_SECONDS = 300. You can use the below Scalability tab of the Capacity Management page in Fusion Middleware Control to scale in the Oracle BI Server to two per server: Important Note: When you have multiple instances of a given Oracle Business Intelligence component in the deployment. you should first configure shared files and directories for the clustered components to use.WORK_DIRECTORY_PATHS = "C:\Temp". refer to System Administrators Guide for Oracle Business Intelligence. Cluster aware Cache seeding (using nqCmd or iBot)    Seeding one node propagates across cluster Data from shared location is pulled into local cache location during every poll NQSConfig. use Fusion Middleware Control to increase the number of BI Server components that run on the existing Oracle Business Intelligence host. For a stable / an even performance over time. MAX_GLOBAL_CACHE_ENTRIES = 1000. /* /dev/shm on Linux */ SORT_MEMORY_SIZE = 4 MB . make sure you have enough physical memory available on 32 bit / 64 bit servers and during performance / load testing. SORT_BUFFER_INCREMENT_SIZE = 256 KB . adjust as needed.pdf Important Note: You need to determine the optimal value for the parameter stated in above table as part of your pre-production performance / load testing. 4. 43 . Then.1 Using Fusion Middleware Control to Scale BI Server Component Before increasing the number of BI Servers per server. you should at least set two BI Servers per server.

Important Note: The default selection of aggregate views proposed by Essbase provides excellent performance. o Perform the default aggregation. Tip: The following process is recommended for defining and materializing aggregations: o After the outline is created or changed. o Turn on query tracking. note: Queries from all query tools are tracked. o Run the queries against the database. o Run the types of queries the aggregation is being designed for.5.1 Aggregated Views  Perform first time Aggregations. o Save the default selection in an aggregation script. o Save the aggregation selection as an aggregation script. o If query time or aggregation time is too long.1 Essbase ASO Tuning This topic describes how to tune the Essbase ASO to optimize the performance of your applications.0 TUNING ESSBASE This chapter includes the following sections that provide a quick start for tuning OBIEE with the Essbase ASO cube as a data source. load data values. o Materialize the suggested aggregate views and save the default selection in an aggregation script.  Fine-Tuning Aggregate View Selection Important Note: The default selection of aggregate views proposed by Essbase provides excellent performance. 44 . Do not select specify a storage stopping point option. Following are the tuning areas to consider when tuning Essbase ASO:  Aggregated Views  Essbase CFG Settings  Database level settings  MDX Optimizations  Understanding the Dynamic Calculations Log Messages 5. consider fine-tuning the aggregation as stated below.1. Tip: The following process is recommended for fine-tuning aggregations: o Perform the default aggregations as described above. 5.

It is recommended to use default value (200)* . NETRETRYCOUNT . The reason is because there have been a lot of customers complaining about Essbase “hangs”. adjust as needed. creating an aggregation script for each situation. NetDelay (200) is in milliseconds so divide by 1000 then multiple by NetRetryCount (600) to get timeout in seconds. AGENTTHREADS default value is 5.It is recommended to use default value (600)* Important Note*: It is recommended to set the timeout to default values. However. o Analyze the proposed list of aggregate views to be stored and select the aggregate views that you determine provide the best balance of system resources and retrieval performance. such as for generating reports or user queries.2 Essbase. you may need to repeat the tuning process. for example: (200/1000) * 600 = 120 seconds (120/60 = 2 minutes) 45 .cfg file. saved the selection in an aggregation script. . technically there is no hang until this “hang” exceeds the NetDelay/NetRetryCount settings. after careful testing.o After sufficient time to capture data retrieval requirements.1. 5. If your Essbase Server computer freezes while running multiple reports at the same time. note for more information about all of these parameters refer to Oracle Essbase Database Administrator's Guide: SERVERTHREADS AGENTTHREADS 100 25 Important Note: Use the above settings as a starting point. i. o Working with aggregation scripts and various selection criteria. NETDELAY . It is strongly recommended that you use this default value if you are running Essbase a 32-bit platform. increase the value of SERVERTHREADS by one for each report you run. which is 2 minutes. If need be. repeat the process until you believe you have the optimum selection of aggregate views for your situation. Tip: How to calculate the timeouts from these settings. Important Note: To optimize aggregations for different database retrieval situations. and then.cfg Settings Following are the Essbase parameters to consider in Essbase. the max amount of timeout that is recommended should not be above 5 minutes.e. perform another aggregation including tracked data. o Materialize the selected aggregate views and. refer to Oracle Essbase Database Administrator's Guide.

 Retrieval Buffer Size o Set Retrieval Buffer Size to 50 KB for 32 bit platform and 100 KB for 64 bit platform: The default buffer size is 10 KB for 32-bit platforms and 20 KB for 64-bit platforms. so the amount of memory needed is the number of server threads multiplied by the retrieval buffer size. e. Units/Transaction] is calculated using formula  [Avg. 256 MB (on Essbase Server 32 bit) or 2048 MB (on Essbase Server 64 bit) instead of staying with 32 Mb. Also note the retrieval buffer is allocated per thread.com/docs/cd/E17236_01/epm. Units/Transaction] = [Units]/[Transactions] 46 .1.Tuning Calculation Using NON EMPTY Behavior o The measure [Units] is a loaded value o The measure [Avg. o Set Retrieval Sort Buffer Size to 50 KB for 32 bit platform and 100 KB on 64 bit platform: Essbase requires a larger retrieval sort buffer size on 64-bit platforms than on 32-bit platforms.1.html Example .3 Database Level Settings  ASO Pending Cache Size: o Essbase Pending Cache Size: When millions of members. Important Note: It is recommended to start with default values and a test incremental setting on largest query tuning is based on.oracle. 5.5. As this setting is per user report request so it may lead to wastage of memory and only want to set as much as needed. Tip: Monitor the cache hit ratios (should be close to 1) in Essbase Administration Console and adjust cache size accordingly.  Non empty behavior can be defined by adding the following directives before a formula o NONEMPTYMEMBER <memberlist> o NONEMPTYTUPLE <tuple> Tip: Below link has information about NONEMPTYMEMBER optimization: http://download.1112/esb_tech_ref/mdx_properties_opt. try higher values than default.g.4 MDX Optimizations  The NONEMPTYMEMBER property enables MDX in Essbase to query on large sets of members while skipping formula execution on non-contributing values that contain only #MISSING data.

o The value of [Avg.  Error encountered when loading member [<MemberName>]'s calc string [<FormulaExpression>]. add a nonempty directive to optimize for sparse data 47 . 5. Fix the error message or drop these members from outline if they are not required.  The formula for member [MemberName] is Complex. Units/Transaction] = NONEMPTYMEMBER [Units] [Units]/[Transactions]  The saving obtained from defining non empty behaviors can be very significant.5 Understanding the Dynamic Calculations Log Messages  Essbase application log has some informative messages related to dynamic calculations that can be helpful in tuning: o The following message indicates an error in a formula. Assign correct solve orders for members indicated in the message.  Formula for member [% of Total] will be executed in [CELL] mode o The following message indicates that a formula is complex and Essbase couldn’t detect a non empty behavior for it.1.  The calculation of [Avg. If possible.  Invalid formula for member [<A>] (reason: depends on a member [<B>] with higher solveorder ) will be ignored during execution o The following message indicates that a formula is too complex for Essbase to optimize. Savings increase with the complexity of the formula and sparseness of the data. Units/Transaction] can be skipped if value of [Units] is empty. ignored o The following message indicates invalid solve order assignment. Units/Transaction] is empty if value of [Units] is empty. We can add non empty behavior for [Avg. Units/Transaction] by rewriting the formula as o [Avg. Rewrite if possible.

oracle.oracle.506.650.7200 www.506.Oracle®.650.7000 Fax: +1. Copyright © 2011 Oracle® Corporation All rights reserved.com/pa/entry/obiee_11_1_1_best Best Practices Guide for Tuning Oracle® Business Intelligence Enterprise Edition First edition: June 2011 Revised edition: September 2011 Author: Ahmed Shahzad Awan Oracle® EPM/BI Product Development – Product Assurance (PA) @ http://blogs.S. CA 94065 U.com/pa Oracle® Corporation World Headquarters 500 Oracle® Parkway Redwood Shores. Various product and service names referenced herein may be trademarks of Oracle® Corporation. 48 . Send us your comments about this at in an email to Product Assurance team @ http://blogs.com Oracle® is a registered trademark of Oracle® Corporation.A.Comments welcome Your comments are important to us! We want our Best Practices Guide for Tuning Oracle® Business Intelligence Enterprise Edition to be as helpful as possible. Worldwide Inquiries: Phone: +1. All other product and service names mentioned may be trademarks of their respective owners.

Sign up to vote on this title
UsefulNot useful