Cache Management in Oracle Analytics Cloud 5.4 Onwards
This post covers enhancements to ODBC calls for cache management, which allow you to purge or view the cache across all nodes of a cluster and provide a method to automate execution of these calls using agents.
Note: The solution described in this post assumes you use data model files (RPDs) to manage your data models in Oracle Analytics Cloud. If you use Data Modeler, these steps don't apply.
Because an Oracle Analytics Cloud instance is clustered, you as the administrator must manage the cache across multiple servers. You can use ODBC calls (for example, SAPurgeAllCache()) to manage the cache, but these calls previously operated only on the node that you’re logged into. Because you can’t control which node you’re logged into, the ODBC calls for cache management have been enhanced to permit operation on specific nodes or all nodes, starting with Oracle Analytics Cloud version 5.4.
Before Oracle Analytics Cloud version 5.4, these were the only forms of these calls supported:
You can issue these calls live using the Issue SQL function if you don’t want to schedule the calls. If you want to schedule these calls, you must modify the metadata repository (RPD) file by following these steps:
Start the Oracle Analytics Developer Client Tool.
Create an ODBC Basic database and give it a name such as CacheManagement.
Create a connection pool that uses the Data Source name “AnalyticsWeb,” which is the nqodbc system driver that Oracle Analytics Cloud uses. You must use a login name and password for a named user for the Oracle Analytics Cloud instance who has permission to execute direct database requests.
Publish or upload the RPD to Oracle Analytics Cloud.
In Oracle Analytics Cloud, navigate to the Classic Home Page, run the ODBC cache management calls through a direct database request. Ensure that you select the Bypass Oracle Analytics Presentation Services Cache box as shown here:
The results provide confirmation that the cache was purged.
Save the direct database request in the catalog, as shown here:
Execute the request using an agent, either on a time schedule (the time format is UTC on Oracle Analytics Cloud instances) or as a conditional agent so that you can coordinate it with other actions such as ETL completion.