What are the two leading design solutions recommended by Oracle that you would use for
performance?
A.
Design requests that use Complex Queries
B.
Avoid returning big data sets within the Dashboard
C.
Use Cache
D.
Avoid using Guided Navigation unless the data set is large
Explanation:
C: OBIEE Caching and Cache Seeding
Cache is a component that improves performance by transparently storing data such that future
requests for the same criteria can be served much faster. Like other application cache is not virtual
memory in OBIEE. In OBIEE cache will be stored as files on the Hard Disk of the OBIEE Server in
the form of files. By Default caching is enabled in the OBIEE server configuration.
For time-consuming Dashboard Pages, we can use the concept of cache seeding in OBIEE, this
can be configured as a scheduled job that will ensure that the data is cached and readily available
as and when the user runs the dashboard.
C and D
I think it’s B & C
http://www.rittmanmead.com/2015/09/obiee-bi-server-cache-management-strategies/
Seeding the Cache
Bob runs an OBIEE dashboard, and the results are added to the cache so that when Bill runs the same dashboard Bill gets a great response rate because his dashboard runs straight from cache. Kinda sucks for Bob though, because his query ran slow as it wasn’t in the cache yet. What’d be nice would be that for the first user on a dashboard the results were already in cache. This is known as seeding the cache, or ‘priming’ it.
There are several options for seeding the cache.
1.Run the analysis manually, which will return the analysis data to you and insert it into the BI Server Cache too.
2.Create an Agent to run the analysis with destination set to Oracle BI Server Cache (For seeding cache), and then either:
1.Schedule the analysis to run from an Agent on a schedule
2.Trigger it from a Web Service in order to couple it to your ETL data load / cache purge batch steps.
3.Use the BI Server Procedure SASeedQuery to load the given query into cache without returning the data to the client. This is useful for doing over JDBC/ODBC/Web Service. You could just run the Logical SQL itself, but you probably don’t want to pull the actual data back to the client, hence using the procedure call instead.