Sizing temporary storage example

This is an example of how the temporary storage for a map is sized.

Assume that your map has two inputs and one output. Input 1 is a WebSphere MQ message. Input 2 is a lookup from a DB/2 table. The target destination for the output is to DB/2.

The MQ message is 100,000 bytes. The DB/2 lookup is 1,200 bytes. The target destination for the output is to DB/2 and is 25,000 bytes.

Work space estimates:

Input
 500,000 = 100,000 + (100,000 * 4)  
Input 2
 6,000 = 1,200 + (1,200 * 4) 
Output 1
25,000 = 25,000 

Map total size is: 531,000.

In this example, the actual amount of TSQ used will be greater based on the fact that the size of the TSQ records used by the work space manager is 32,763. Also, the map's page size setting will determine the minimum amount of space used by the core.

Assuming a 64K page size setting, the estimate would be:

Input 1
622,497 = ((100,000 / 32,763) + 32,763) +
((((400,000 / 65,535) + 65,535) / 32,763) + 32,763)
Input 2
131,052 = 32,763 + ((65,535 / 32,763) + 32,763) 
Output 1
32,763

New map total size is 786,312.

The actual required amount will depend on how many 64K pages are necessary to validate the input. An additional factor for which you need to account when sizing temporary storage is the maximum number of concurrent transactions that will be running the map.

Assuming there can be 3 concurrent tasks, the total temporary storage would be:

 2,358,936 = 3 * 786,312