System Usage of FSGCache
Teradata Database file system manages FSG Cache, which is used by:
- AMPs on the node
- Backup activity for AMPs on other nodes
Teradata Database file system uses FSG Cache for file system segments such as:
- Permanent data blocks (includes fallback data and SIs)
- Cylinder Indexes for permanent data blocks
- Cylinder statistics for Cylinder Read
- Spool data blocks and Cylinder Indexes for spool
- WAL space, including Transient Journal (TJ) rows and WAL REDO records
- Recovery journal rows
Space in FSG Cache
Space in the FSG Cache is not necessarily evenly distributed among AMPs. It is more like a pool of memory; each AMP uses what it needs.
FSG cache contains the most recently used database segments. When Teradata Database needs to read a data block, it checks and reads from cache instead of from disk, whenever possible.
The system performs optimally when FSG Cache is as large as possible, but not so large that not enough memory exists for the database programs, scratch segments, and other operating system programs that run on the node.
Calculating FSG Cache Size Requirements
The FSG Cache percent field controls the percentage of memory to be allocated to FSG Cache. You can change the value in FSG Cache percent using the ctl utility. See the section on setting variables in “Control GDO Editor (ctl)” in Utilities.
First, configure sufficient operating system memory, using the guidelines discussed in About Managing Free Memory. Then let the remaining memory be allocated to FSG Cache.
Calculating FSG Cache Read Misses
To calculate if FSG Cache read misses have increased, use the following formulas:
- FSG Cache read miss = physical read I/O divided by logical read I/O
Physical read I/O counts can be obtained from ResUsageSpma table by adding FileAcqReads + FilePreReads.
Logical I/O counts can be obtained from ResUsageSpma table column FileAcqs.
- Increase in FSG Cache misses = FSGCacheReadMissAfter divided by FSGCacheReadMissBefore
While Teradata Database cannot guarantee a particular improvement in system performance, experience has shown gains of 2-8% when adding 1GB of memory per node in such instances.