Caching for the Business Analytics Server
The
Business Analytics Server caches artifact metadata, for internal purposes, and optionally caches mashable and mashup responses to improve performance. By default, caches are stored in local memory. See
Artifact Caching and
Response Caching for details.
All
Business Analytics caches plus the
MashZone NextGen Analytics In-Memory Stores, can be distributed when
Business Analytics is deployed in clusters. See
Distributed Caching for
Business Analytics
Clusters for an overview of distributed caching for
Business Analytics.
Artifact Caching
Artifact caching caches metadata for mashables, mashups and apps when they are run in Business Analytics Hub, the AppDepot, the Business Analytics Mobile apps or in any external destination such as SharePoint, portals or web pages. For example, the first time an app is viewed, the specification for that app is retrieved from the Business Analytics Repository and cached. Subsequent requests use the cached specification.
Because updates to artifacts are typically infrequent, this cache is long-lived. It is not persisted to disk. Cache entries are flushed only when an artifact is updated or when the server hosting the cache is restarted. No additional configuration is required to enable local artifact caching for Business Analytics.
Response Caching
Response caching caches the responses from mashables and mashups when they are run. This is a short lived cache that caches response data based on the unique signature of each request to mashables or mashups.
Configuration for response caching gives you fine grained control for which mashables and mashups use response caching and the expiration periods for their cache entries. See
Configuring Mashable/Mashup Response Caching for instructions.
Distributed Caching for Business Analytics Clusters
When Business Analytics is deployed in clusters, both artifact caching and the MashZone NextGen Analytics In-Memory Stores must be distributed to maintain cache integrity. Response caching, however, can be left in local memory for each Business Analytics Server or it can be distributed.
In many environments, local caching provides both good performance and acceptable cache integrity for response caching. Local caching is "eventually consistent", but can result in visible differences as cached responses are not guaranteed to be identical for different cluster members. For environments that cannot tolerate any loss of cache integrity, distributed response caching is recommended.
Note: | Distributed caching is only available if you purchase and deploy BigMemory Servers. |
You use BigMemory Servers to handle distributed caching for Business Analytics. When this is combined with Business Analytics clusters, the high-level architecture looks like this:
With BigMemory Servers, data for both the MashZone NextGen Analytics In-Memory Stores and most Business Analytics caches can use the total off-heap memory configured for the cluster plus any heap and off-heap memory configured for the Business Analytics local host.
The BigMemory Servers manage consistency and memory across the cluster. They also support failover, with mirror servers, for high availability and many other advanced capabilities that may be useful for enterprise production systems.