Showing posts with label INSTANCE CONFIG. Show all posts
Showing posts with label INSTANCE CONFIG. Show all posts

Saturday, October 1, 2011

OBIEE obips_config_base.xsd

Good Sunday afternoon reading, locate you obips_config_base.xsd and open it read only in a text editor (or download the PDF here).

It' contains loads of info on the instanceconfig.xml tags.

Have a special look at the  <!-- Top Secret, Do NOT Expose On Penalty Of Dismissal (throw away) –> stuff

image 

(Kudos to the genius who left them in the normal download Knipogende emoticon ) 

Till Next Time

Sunday, April 3, 2011

OBIEE11g using Dashboard Templates

When logging in for the first time you normally get an empty dashboard page:

image

Wouldn’t it be nicer if you can give a dashboard which already has some content ?

Let prep the instance config.xml

add: <DefaultName>Template</DefaultName> between the <Dashboard> tags

Now let’s make a template dashboard.

Step 1 build a nice dashboard:

image

Save this dashboard in the shared folder with the name ‘Template’

image 

First create a folder Template:

image 

Create a folder dashboards:

image

Next save:

image

Set the owner in the catalog

image

Create a new user:

image

don’t forget to assign it to a group:

image

Log in to OBIEE:

image 

Check the catalog folder of the user to see that it’s actually saved as a personal dashboard.

image

This is ideal to create cooperate standard default dashboards for all users.

Till Next Time

Thursday, March 31, 2011

OBIEE11g Controlling Table, Pivot and Charts behaviour

In 11g it is still controlled by the instanceconfig.xml. You can edit the file and restart the system to see the effect.

Especially the MaxVisible.. parameters are of interest when you seem to “miss” data on the screen on large reports.

Be aware these are system wide controls, so don’t change the DefaultRowsDisplayed just for one report!

<ServerInstance>
<Views>
<Table>
<MaxVisiblePages>1000</MaxVisiblePages>
<MaxVisibleRows>500</MaxVisibleRows>
<MaxVisibleSections>25</MaxVisibleSections>
<DefaultRowsDisplayed>30</DefaultRowsDisplayed>
</Table>
<Pivot>
<MaxVisibleColumns>300</MaxVisibleColumns>
<MaxVisiblePages>1000</MaxVisiblePages>
<MaxVisibleRows>500</MaxVisibleRows>
<MaxVisibleSections>25</MaxVisibleSections>
<DefaultRowsDisplayed>30</DefaultRowsDisplayed>
</Pivot>
<Charts>
<MaxVisibleColumns>2000</MaxVisibleColumns>
<MaxVisiblePages>1000</MaxVisiblePages>
<MaxVisibleRows>2000</MaxVisibleRows>
<MaxVisibleSections>25</MaxVisibleSections>
<JavaHostReadLimitInKB>4096</JavaHostReadLimitInKB>
</Charts>
</Views>
</ServerInstance>



Till Next Time

Thursday, February 17, 2011

OBIEE11g Customisations Directory

Doing look and feel customisations in OBIEE11g is not harder then in then 10g, you just need to pay attention where you put stuff. Since the weblogic server tend to overwrite stuff during startup and or updates it’s good practice to have a special directory for your customisations. Here is how you do it in WIndows XP.

First create a new folder say D:\OBIEE11gCustom

image

Set the security so that everbody can see it, if neccesary make it shared:

imageimage

Next step is to add the folder to the instanceconfig.xml file:

image

[Code]

<URL>

<CustomerResourcePhysicalPath>D:\OBIEE11gCustom</CustomerResourcePhysicalPath>

</URL>

[/Code]

In the next article I will show you how to expose it from the weblogic server.

Till Next Time

Saturday, February 27, 2010

OBIEE Presentation Server Always Refresh

If you have a separate development presentation server, you can use the developersprompt: (http://obiee101.blogspot.com/2008/10/obiee-developersprompt.html) for bypassing the BI servercache. If you always want to bypass the Presentation server cache add this to the instanceconfig file of the development presentation server:

<WebConfig>
<ServerInstance>
<ForceRefresh>TRUE</ForceRefresh>
</ServerInstance>
</WebConfig>

Till Next Time

Thursday, January 28, 2010

OBIEE Performance tuning

Lately I get a lot of OBIEE “performance” tuning questions.

FI: Our client is downloading a report with 4 million rows and the server get’s very slow our even crashes……….

Or: Out client has a report with 2 million rows and 20 columns with a sort option on each column…….

First: I said it before and will say it again and again…..

OBIEE is not an ETL tool. It is NOT designed to handle large amounts of non aggregated data. It’s designed to handle dimensional structured data with sufficient aggregation tables.

So please please stop hammering in nails with an plush screwdriver!

image

Of course there are some tuning possibilities you might want to explore.

WORK_DIRECTORY_PATHS

From the OBIEE documentation:

Specifies one or more directories for temporary space.
Each directory listed needs to be an existing fully-qualified, writable directory pathname, with double quotes ( " ) surrounding the pathname. Specify mapped directories only. UNC path names and network mapped drives are allowed only if the service runs under a qualified user account. To change the account under which the service is running, see the corresponding topic in the Oracle Business Intelligence Enterprise Edition Deployment Guide.
Specify multiple directories with a comma separated list. Valid values are any fully qualified pathname to an existing, writable directory.
For optimum performance, temporary directories should reside on high performance storage devices.
If you specify more than one directory, they should reside on different drives.
Syntax: WORK_DIRECTORY_PATHS = "<full_directory_path_1>" [,"<full_directory_path_2>"{, "<full_directory_path_n>"}] ;


Example 1: WORK_DIRECTORY_PATHS = "C:\Temp" ;
Example 2: WORK_DIRECTORY_PATHS = "D:\temp", "F:\temp" ;


NOTE: Specifying more than one directory per drive does not improve performance because file I/O takes place through the same I/O controller. In general, specify only one directory per disk drive.
Specifying multiple directories on different drives improves the overall I/O throughput of the Oracle Business Intelligence Server because internally, the processing files are allocated using a roundrobin algorithm that balances the I/O load across the given disk drives.

Rule of thumb: Invest in fast drives, consider virtual / RAM drives.

SORT_MEMORY_SIZE

From the OBIEE documentation:

Specifies the maximum amount of memory to be used for each sort operation. Multiple operations can each use memory up to the value specified. The limit for SORT_MEMORY_SIZE is determined by the physical memory of the server machine and on the number of sort operations that might occur simultaneously. Specify KB for kilobytes, MB for megabytes, and no units for bytes.
Example: SORT_MEMORY_SIZE = 4 MB ;

The size specified by SORT_MEMORY_SIZE sets the upper limit on how large the sorting buffer can be in the Oracle Business Intelligence Server. When this limit is exceeded, data is sorted in allotments of the size set by SORT_MEMORY_SIZE and the sorted sets are merged together. For example, suppose SORT_MEMORY_SIZE is set to 4 MB and the size of the data to be sorted is 32 MB. The server performs the sort once per each 4 MB of data, for a total of eight sort operations,
and then merge the results into a single result set. This technique allows the Oracle Business Intelligence Server to sort data of indefinite size.
The merge process itself is generally not costly in terms of resources, but it does include a read and write of each result set in a temporary file. To reduce the time this takes, increase the SORT_MEMORY_SIZE. This parameter can be tuned over time by taking into consideration the data size of the query and the number of concurrent users.

Rule of thumb: Don’t go overboard with this value, 10mb for a hundred concurrent users is 1 Gb of server memory. Don’t let OBIEE push other processes into the swap memory of the OS.

 

SORT_BUFFER_INCREMENT_SIZE

From the documentation:

Specifies the increment that the sort memory size is increased by as more memory is needed. As more memory is required, the size increases by the value specified until it reaches the value of
SORT_MEMORY_SIZE.
Example: SORT_BUFFER_INCREMENT_SIZE = 256 KB ;

This parameter defines the increment by which SORT_MEMORY_SIZE should be reached. For example, suppose SORT_MEMORY_SIZE is set to 4 MB and the data to be sorted is just one megabyte. As data is fed into the sort routine, the size of the sort buffer increases only by the increment size, rather than the full size allowed by SORT_MEMORY_SIZE. This mechanism allows the Oracle Business Intelligence Server to sort smaller result sets efficiently without wasting memory.

Rule of thumb: 5 – 10 % of the SORT_MEMORY_SIZE

 

VIRTUAL_TABLE_PAGE_SIZE

From the documentation:

Several operations—sort, join, union and database fetch—can require memory resources beyond those available to the Oracle Business Intelligence Server. To manage this condition, the server uses a virtual table management mechanism that provides a buffering scheme for processing these operations. When the amount of data exceeds the VIRTUAL_TABLE_PAGE_SIZE, the remaining data is buffered in a temporary file and placed in the virtual table as processing
continues. This mechanism supports dynamic memory sizes and ensures that any row can be obtained dynamically for processing queries.
When VIRTUAL_TABLE_PAGE_SIZE is increased, I/O operations are reduced. Complex queries may use 20 to 30 virtual tables, while simple queries may not even require virtual tables. The
default size of 128 KB is a reasonable size when one considers that the size for virtual paging in Windows NT is 64 KB. This parameter can be tuned depending on the number of concurrent users and the average query complexity. In general, setting the size higher than 256 KB does not yield a corresponding increase in throughput due to the 64 KB size limit of Windows NT system buffers, as each I/O still goes through the system buffers

Rule of thumb: Trust the documentation, more then 256 KB is not necessary.

All the parameters are set in the NQSConfig.INI File

Till Next Time

Wednesday, January 13, 2010

OBIEE ResultRowLimit

I still wonder why people want to do it: A report with more than 65000 rows, but still….
You can override the maximum number of rows that can appear in a Table view by modifying the Oracle BI Presentation Services configuration file (instanceconfig.xml) to add the following entry.


<ResultRowLimit>95000</ResultRowLimit>

 

The internal default is 65000. If the user exceeds this value, the server returns an error message when the table view is rendered.


NOTE: This entry applies to the Table view, not the Pivot Table view.
The ResultRowLimit entry controls the maximum value that can be set for the DefaultRowsDisplayed, DefaultRowsDisplayedInDelivery, and the DefaultRowsDisplayedInDownload (fi download to Excel) entries.


To set DefaultRowsDisplayed, DefaultRowsDisplayedInDelivery, or DefaultRowsDisplayedInDownload to a value that exceeds the current value of ResultRowLimit, you also must increase the value of ResultRowLimit to equal or exceed the value that you want to set.

Till Next Time

Thursday, September 24, 2009

OBIEE Grand Totals with Calculated Columns (repost)

This is a bit of a specific problem, but I could see it being something that those new to OBIEE could run into. It deals with incorrect Grand Total values being displayed for a Calculated Column when using report filters.
Consider the following report:
unfiltered_unagg
In this report, Amount A and Amount B are standard columns in a database table, and Variance is a calculated column in the repository. The calculation for Variance is 100 * (Amount B - Amount A) / Amount A. So, going by the Grand Total amounts in the report above, 100 * (696 - 550) / 550 = 26.55.
Suppose you want to filter the results of this request so that it only shows items having a Variance greater than 30:
filtered_unagg
Note the Grand Total for Amount A and Amount B are summed correctly for the filter, but the Variance still shows 26.55. Obviously, this is incorrect, so what’s going on here? The filtered amount should be reported as 100 * (220 - 130) / 130 = 69.23.
If you want to show the correct variance for the filtered Grand Total amounts, you need to enable an option in your instanceconfig.xml file. Open the file $OracleBIData/web/config/instanceconfig.xml, and add the following line somewhere inside your <ServerInstance> and </ServerInstance> section:
<ReportAggregateEnabled>true</ReportAggregateEnabled>

Make sure you don’t accidentally put this inside an element nested inside <ServerInstance>, or it won’t work.

Save instanceconfig.xml, and restart your BI Server and Presentation service.
Now, the correct amount should be shown for the filtered Grand Total variance:
filtered_agg
This was previously a bug in OBIEE that was addressed by adding the ReportAggregateEnabled option. It’s not really documented anywhere other than on Metalink, so hopefully this will be helpful to someone.
This article was original posted on the Kevin C. oraclebi blog. See: http://obiee101.blogspot.com/2009/09/obiee-blog-lost.html
Till Next Time

Monday, July 13, 2009

OBIEE Enable508

While going trough the list of configuration tags: http://knowledge.ciber.nl/weblog/OBIEE/OBIEE10340CONFIGURATIONTAGS.pdf I found this
{enable508}true{/enable508}
It changes this



Into this:

Put it between the serverinstance tag of the instanceconfig.xml

Till Next Time

Note: Have a look at Stijn his comment on 508 Compliancy

Tuesday, June 23, 2009

OBIEE Remember my ID and password

Page 196 of the Presentation Services Administration Guide (the example to change kmsgAuthenticateRemembermyIDandpassword) triggered me to look for the option to switch on this feature:

image

Of course the answer can be found the manual on page 18….. It is controlled by the value of :”AllowRememberPassword” in the instanceconfig.xml. set it to “true” between the serverinstance tags to switch it on:

image

Till Next Time

Friday, January 9, 2009

OBIEE creating large / huge PDF documents

When you try to create big PDF files in OBIEE after a certain size you will get an error like:

A fatal error occurred while processing the request. The server responded with: Error while executing PDFRpcCall.processMessage com.siebel.analytics.utils.InputStreamWithLimit$ReadOverTheLimitException at com.siebel.analytics.utils.InputStreamWithLimit.incTotalBytes(InputStreamWithLimit.java:58) at ...............

Basicly it means that the FOP processor is running out of workspace. The workspace is controlled from the instanceconfig.xml JavaHost part. Instead of enlarging the default value of 1024 kb you could also consider setting this to unlimited.

<JavaHost>
  <PDF>
     <InputStreamLimitInKB>0</InputStreamLimitInKB>
   </PDF>
</JavaHost>

Till next Time

Wednesday, January 7, 2009

OBIEE Selecting SKIN and STYLE from URL

Sometimes you want to redirect a user to a different SKIN and or STYLE. One method is giving the SKIN/STYLE name in the login URL.

To enable this feature you first you have to define a parameterlist in Auth\UserIdPassword part of the instanceconfig.xml:

<Auth>
    <UserIdPassword enabled="true">
        <ParamList>
            <Param name="NQ_SESSION.STYLE" source="url" nameInSource="STL"/>
            <Param name="NQ_SESSION.SKIN" source="url" nameInSource="SKN"/>
        </ParamList>
    </UserIdPassword>
</Auth>

Restart the presentation server. Now add the SKIN and STYLE to the URL: http://vmobiee:9704/analytics/saw.dll?Dashboard&SKN=siebel77&STL=siebel77

{Remember to clear your browser cache first!}

Till Next Time

Tuesday, December 9, 2008

OBIEE bypassing the presentation / web cache

In addition to settings mentioned in this article:  http://obiee101.blogspot.com/2008/11/obiee-presentation-services-cache.html. You sometimes you want to bypass the presentation / cache for development purposes. Or more often when you get weird write back behaviour. Add this to the instanceconfig file:

<CacheMaxExpireMinutes>-1</CacheMaxExpireMinutes>

<CacheMinExpireMinutes>-1</CacheMinExpireMinutes>

<CacheMinUserExpireMinutes>-1</CacheMinUserExpireMinutes>

Till Next Time

Monday, October 27, 2008

OBIEE No language dropdown on loginscreen

If you don't want users to choose any other languages then the one you have defined, goto instanceconfig.xml and set the required languages between the AllowedLanguages tags. If you keep to one language the dropdown list will not appear.

Till Next Time

Saturday, October 4, 2008

OBIEE ReportAggregateEnabled

My list of things I want to blog about is getting hugher every day. Today it stands at 32. As with most bloggers my biggest problem is R&D time. Luckily more and more people start blogging on OBIEE.
One of those people is Kevin Custer. He made a great entry on "ReportAggregateEnabled" here: http://oraclebi.soundvoid.net/2008/10/grand-totals-with-calculated-columns-2/. This is one of those things you have look at when you work "complex" grand totals. It is not in the documentation only on metalink3 : SR 3-159350471



Till Next Time

Saturday, July 26, 2008

OBIEE Number of default values in a multiselect prompt

Q: There seems to be a maximum to the number of default values on a multiselect control prompt, can we set this to 5000?




A: Yes, the default is 255, but why the hell you want to do that? Big chance that you run into trouble with the "in" statement OBIEE will create from this prompt!

Anyway, this is how you do it:
Add / modify the following in your instanceconfig.xml:
{Prompts}
{MaxDefaultValues}5000{/MaxDefaultValues}
{/Prompts}

Till Next Time

Friday, July 25, 2008

OBIEE Number of values in the multiselect prompt




If you want more or less choices returned alter / add this in the instanceconfig.xml:


{Prompts}


{MaxScrollValues}100{/MaxScrollValues}


{/Prompts}




Till Next Time

Thursday, July 24, 2008

OBIEE dropdown prompt

Q: Is it possible to add 10.000 entries to a dropdown prompt
A: Yes, but why the hell you want to do that since OBIEE doesn't know autofill?

Anyway, this is how you do it:
Add / modify the following in your instanceconfig.xml:

{Prompts}
{MaxDropDownValues}10000{/MaxDropDownValues}
{/Prompts}

Till Next Time

Monday, July 21, 2008

OBIEE number of gauges on canvas

Some time ago a colleague of mine encountered the following error screen when developing a dashboard with gauges.
After a small discussion: “why the hell he needed more then the OBIEE default of 100 gauges on a single screen?”, he convinced me that it was for development purposes only.

The properties which influence the gauge behavior can be found in the instanceconfig.xml.

If they are not yet present in the file OBIEE uses the default settings.
Till Next Time

Saturday, February 23, 2008

OBIEE Controling Pivot View behavior

One of the more powerful tools in OBIEE is the pivot view. If you have large amounts of data you sometime run out of rows and or columns or even worse out of cells

You can control these values by altering the instanceconfig.xml.
This file is usually found in ..\OracleBIData\web\config
Good info can be found in the Oracle® Business Intelligence Presentation
Services Administration Guide (b31766.pdf)

If you open instanceconfig.xml in notepad you get something like these parameters


The behavior of the pivot view can be altered with the following parameters:


  • [MaxVisibleColumns] Sets the maximum number of columns to be displayed in a Pivot View default{1000}

  • [MaxVisiblePages] Sets the maximum number of page choices (or pages in PDF) to be displayed in a Pivot View default{1000}

  • [MaxVisibleRows] Sets the maximum number of rows to be displayed in a Pivot View. Default{100000}

  • [MaxVisibleSections] Sets the maximum number of sections to be displayed in a Pivot View. Default{1000}

Altered in the instance config it would look like this:





If you still run out of cells try this:



  • [CubeMaxPopulatedCells] The maximum number of populated cells in the Pivot Table. If this maximum is exceeded, the user receives an error when rendering the pivot table. Default {150000 }

  • [CubeMaxRecords ] The maximum number of records returned by a query for the Pivot Table engine to process. This roughly governs the maximum number of cells that can be populated in a pivot table (unpopulated cells in a sparse pivot table do not count). If this maximum is exceeded, the user receives an error when rendering the pivot table.




Till next Time