IBM CMOD Cache Filesystems
IBM Content Manager OnDemand Cache Filesystem
Here are some frequently asked questions about the IBM CMOD cache.
What is the IBM CMOD Cache filesystem?
The OnDemand cache filesystem, often named “arscache” is a pool of storage on your server that Content Manager OnDemand uses to store documents for fast loading or retrieval. Application Groups are configured by default to load data into the cache filesystem, and migrate it to secondary storage at a later time. Migrating the data from the CMOD cache to secondary storage doesn’t delete it - the caches are kept at 80% by default, to help make retrievals for end users faster. One of the easiest ways to tune the OnDemand Cache performance on large Content Manager OnDemand installations is to increase this number to over 95%.
Where do I configure the behavior of the CMOD cache?
Inside the Content Manager OnDemand Administrator Client, in the Application Group window, on the Storage Management tab, there’s a button labelled ‘Advanced’ that will allow you to change how Application Group data is managed.
Diagram: Configuring IBM CMOD Cache behavior
How does the cache get filled?
As you load data into IBM Content Manager OnDemand, data is placed into the caches for fast access by end users. The only exception to this rule is if you choose not to load Application Group data to the cache at all, and send them directly to secondary storage - which is generally reserved for situations where documents need to be archived for legal or regulatory reasons, but are rarely, if ever, accessed.
If you have more than one cache filesytem, IBM CMOD chooses the cache with the most free space, and puts the compressed objects generated by the load there.
How does the cache get emptied?
You can reduce the amount of data in the cache filesystems with the arsmaint command. You will want to migrate any data with the
arsmaint -m command first, then run the
arsmaint -c command to delete eligible items from the cache. You can combine both options in the same command
arsmaint -mc to perform both tasks. While it's possible to run both cache migration and expiration at the same time in two different processes, it's not recommended.
What is cache expiration?
CMOD Cache expiration is the process by which OnDemand reduces the amount of data inside the caches, in order to make room for new data that is loaded into your Content Manager OnDemand server. It does this by removing data that has already been migrated to secondary storage or is eligible for expiration, starting with the oldest documents first, until the filesystems are approximately 80% full by default. As mentioned above, on large IBM CMOD servers that have multiple terabytes of cache, adjusting the minimum and maximum parameters makes optimal use of your expensive cache filesystems. The only reason to maintain a terabyte or more of free space in your cache is to ensure there is room to load incoming files if data can't be written to secondary storage for some reason. You can visit the arsmaint page to find out more about how you can create free space in the IBM CMOD cache filesystem.
What is cache optimization?
Storage is expensive and finite. In order to make the most out of the storage space you have in your IBM CMOD Cache filesystems, you should try to store more of the data that users are actually accessing, for the period of time that they’re interested in them. You can optimize the cache contents so that you’re using precisely enough disk to perform the required retrievals and to have enough space to load new data. An optimized cache contains only the data people are accessing. Unfortunately, there's no built-in tool for performing the Content Manager OnDemand Cache, but CMOD Cache optimization is offered as a service by IBM Business Partners.
How can I optimize the IBM CMOD Cache?
If your IBM CMOD Cache Filesystems are large (over 1 terabyte) then the default setting for the
arsmaint -c will leave 20% - 200 gigabytes of empty cache. If you have multiple 1TB cache filesytems, and you only load 20GB per day, you could have a huge amount of wasted space in your caches. You can adjust this number with the
-n options for arsmaint to set new maximum and minimum caches sizes during cache expiration.
The other ways to tune the cache filesystems are to analyse the patterns of retrievals of Application Group data, and change the cache retention to match actual end user usage, and to use data from your load and retrieval patterns to determine your optimal cache size.
Can I delete files in the cache manually?
NO! The cache is only to be managed with the arsmaint utility! The structure of the Cache Filesystem is complex, and deleting files or directories inside the Content Manager OnDemand cache could lead to documents becoming unavailable to end users, and potentially irrecoverable data loss.
Too late, I already deleted files from my CMOD cache filesystem. Help!
If you have a backup of your cache data in your enterprise backup system, you can probably recover the missing data. You can contact Tenacious Consulting for assistance. They have tools to help you restore and verify the contents of your cache, or to pull data from secondary storage back into the CMOD cache.
What are the retr and migr directories?
Someone’s been spelunking! The retr and migr directories inside the cache help CMOD retrieve and migrate documents. There’s a very good presentation on the OnDemand User’s Group forums on the cache filesystem internals. Registration on the forums is required to access the presentation - and new registrations are normally approved within 48 hours.
How do I add more cache filesystems?
Ask your System Administrator or Storage Management team to add an additional cache filesystem to your server (create /arscache/cache03... cache04, etc.) and simply add that filesystem as an entry in the CMOD cache configuration file, normally ars.cache. If you have more than one Content Manager OnDemand instance configured on your IBM CMOD server, then you’ll need to edit the file specified by SRVR_SM_CONFIG in the instance definition in your ars.ini configuration file.
Can I remove a cache filesystem?
Yes, and no. You can remove a filesystem from the ars.cache configuration file, and CMOD will stop adding data to it during loads, and will expire data from it during cache expiration processing. However, your IBM CMOD server will NOT redistribute objects to other caches. If you want to consolidate your existing caches into a smaller collection of caches, visit Cache Consolidation for assistance.
Can I balance the data in the cache filesystem?
Content Manager OnDemand automatically balances the amount of data in caches by placing new CMOD object files in the cache with the most free space, measured in blocks of free space in the filesystem. If you have a large number of cache filesystems with dramatically different utilization, you may have a configuration issue that needs to be corrected.
ARS0199E Unexpected empty directory in cache
ARS0198E Invalid ownership and/or permissions on cache file/directory
ARS0111E OnDemand is unable to determine the link for file