Various
Caches Available in MicroStrategy
What is
Caching:
Caching is the retention of a recently used
elements, objects, or report results for the purpose of improving the query
response time in the further requests. Caching enables user to retrieve results
from stored files rather that executing queries against a database.
There are four types of caches in
MicroStrategy.
1. Element Caches : Elements of frequently
browsed
attributes are stored in the memory on the Intelligent Server and the MicroStrategy
Desktop machine for faster retrievals.
attributes are stored in the memory on the Intelligent Server and the MicroStrategy
Desktop machine for faster retrievals.
2. Object Caches : Definition of the
frequently
viewed metadata objects are stored on the I-Server and the MicroStrategy
Desktop machines for faster retrieval.
viewed metadata objects are stored on the I-Server and the MicroStrategy
Desktop machines for faster retrieval.
3. Report Caches : Results of previously executed
reports are stored in the memory or disks on the I-Server machine, so that they
can be retrieved quickly, rather than re-executing the request against the ware
house database.
reports are stored in the memory or disks on the I-Server machine, so that they
can be retrieved quickly, rather than re-executing the request against the ware
house database.
4. Document Caches : Results of the report
services
Document are stored in the memory or disk on the I-Server machine for faster retrieval.
Document are stored in the memory or disk on the I-Server machine for faster retrieval.
Where
do Caches Reside :
The table summarizes them
Caches
Types and Location
Cache
Type |
Client
Memory |
Server
Memory |
Server
Disk |
Element
|
Yes
|
Yes
|
|
Object
|
Yes
|
Yes
|
|
Report
|
|
Yes
|
Yes
|
Document
|
|
Yes
|
Yes
|
In
Two Tier mode, Object and Element caches
exist on the Client Machine for
each Project that the Client accesses.
each Project that the Client accesses.
In
three tier mode, Object, Element, Report and
Document caches exists for each
Project on the I-Server machine and Object and Element Caches exists on the
Client Machines too.
Project on the I-Server machine and Object and Element Caches exists on the
Client Machines too.
Note
: Caches are Created and stored at the Project Level, Therefore they are
not shared across Projects.
Element Caches :
An Element Caches is a recently used attribute element list stored in the memory of
MicroStrategy Desktop and I-Server machines.
The example below illustrated is how
element caches work.
·
A
MicroStrategy Desktop User double-Clicks the
Customer Attribute in the data Explorer in order to display a list of Customers.
Customer Attribute in the data Explorer in order to display a list of Customers.
·
If
no element caches exist n the MS-Desktop or the I
sever memory, the element request is send to the ware house for processing.
sever memory, the element request is send to the ware house for processing.
·
The
list of Customers retrieved from the warehouse is
then stored as an Element Cache in the memory of the I-Server machine, and the MS-Desktop machine of the user who submitted the request.
then stored as an Element Cache in the memory of the I-Server machine, and the MS-Desktop machine of the user who submitted the request.
·
If
the same user requests the same attribute elements, the element cache
on the local MS-Desktop machine is used to satisfy that request.
on the local MS-Desktop machine is used to satisfy that request.
·
If
a different user requests the attribute elements,
the Element Cache on the I-Server Memory is used to satisfy that request.
the Element Cache on the I-Server Memory is used to satisfy that request.
Note: When a user requests elements,
Element cache ID’s are matched to the
element requests in order to determine if
a cache can be used to satisfy the request.
Object Caches :
Object Caches is a recently used objects
definition stored in the memory of the MS-Desktop and I-Server. We can create
object caches for both application and schema objects.
The example below illustrates how object
caches work:
·
A
user opens the report editor.
·
The
collection of attributes, metrics and other user objects are displayed in the
report editor that makeup the report definition.
If no object cache for the report exists in the memory of the MS-Desktop or I
Serer machine, the object request is sent to the metadata for processing.
If no object cache for the report exists in the memory of the MS-Desktop or I
Serer machine, the object request is sent to the metadata for processing.
·
The
report object definition is retrieved from
metadata and displayed to the user in the report editor.
metadata and displayed to the user in the report editor.
·
An
object cache is created in the memory of the I-Server
and MS-Desktop machines.
and MS-Desktop machines.
·
If
the same user requests the same object, the object
cache on the local MS-Desktop machine satisfies the request.
cache on the local MS-Desktop machine satisfies the request.
·
If
a different user requests the same report the
object cache in the I-Server memory satisfies that request.
object cache in the I-Server memory satisfies that request.
Report Caches:
The I-Server provides report caching
functionality that
reduce the number of user requests that query the data warehouse. When an user initially runs the report the I-Server caches the result set. Subsequently, when a different user runs the same report again the I-Server can retrieve the result set from the cache rather than having to query the data warehouse again.
reduce the number of user requests that query the data warehouse. When an user initially runs the report the I-Server caches the result set. Subsequently, when a different user runs the same report again the I-Server can retrieve the result set from the cache rather than having to query the data warehouse again.
The example below illustrates how report
caches work.
·
A
user runs
a report.
a report.
·
The
report
runs against the data warehouse.
runs against the data warehouse.
·
The
I-Server
caches the result set and returns the result to the user.
caches the result set and returns the result to the user.
·
A
second
user subsequently runs the same report.
user subsequently runs the same report.
·
The
I-Server
searches the report Caches.
searches the report Caches.
·
The
I-Server
checks the following variables.
checks the following variables.
I.
Are
the
report and any objects it contain unchanged since the cache is created.
report and any objects it contain unchanged since the cache is created.
II.
For
the
prompted reports did the second user choose the same prompt answers as the first user.
prompted reports did the second user choose the same prompt answers as the first user.
III.
Based
on
the cache property and security settings, is the second user allowed to access the first user’s cache.
the cache property and security settings, is the second user allowed to access the first user’s cache.
IV.
Is
the
cache still active ie. Is it not expired
cache still active ie. Is it not expired
·
If
the answer to any of the variables is no, the cache
is not valid, and the I-Server queries the data warehouse. If the answer to all
the variables is Yes the cache is valid and the I-Server retrieves the result
set from cache.
is not valid, and the I-Server queries the data warehouse. If the answer to all
the variables is Yes the cache is valid and the I-Server retrieves the result
set from cache.
Document Caching :
Report service document can be cached to
improve the system
performance and maintain a low memory footprint of the I-Server.
performance and maintain a low memory footprint of the I-Server.
Document caches are created on the runtime
or on schedule and
behave in a similar to the report caches. At runtime the document caches are
created only in MS-Web.
behave in a similar to the report caches. At runtime the document caches are
created only in MS-Web.
For example when you execute a prompted
document in MS-Web,
an XML document cache is generated. When you reprompt the document, a new XML cache is generated with the data reflecting the new prompt answers.
an XML document cache is generated. When you reprompt the document, a new XML cache is generated with the data reflecting the new prompt answers.
You can configure the Document Caching
properties at two different levels.
1. Project Level
2. Document Level.
The tutorial is very helpful for a first timer like me, by the way if you could have given a
ReplyDeletetutorial on creating a free blog, it would have been very helpful for newbies like me.
click here now