Block transfer means that the HiRDB system sends data to a HiRDB client in units of a specified number of rows. The block transfer facility is useful when a HiRDB client accesses the HiRDB system to retrieve a large amount of data.
Figure 4-53 shows an overview of the block transfer facility.
Figure 4-53 Overview of block transfer facility
The block transfer facility is executed when both of the following conditions are satisfied:
You can use client environment definition PDBLKBUFFSIZE to specify the communication buffer size between the server and the client.
For retrievals in which the number of rows to be extracted (PDBLKF specification value) is large, specifying PDBLKBUFFSIZE suppresses the allocation of a communication buffer memory larger than the value specified in the server. However, a communication buffer memory for transferring one row is allocated.
For details about the calculation equation for the communication buffer size between the server and the client, see Formula for size of memory required during block transfer or array FETCH in the HiRDB Version 8 Installation and Design Guide.
The table below shows the number of rows transferred in one transmission when the block transfer facility is used.
PDBLKF specification value | PDBLKBUFFSIZE specification value | |
---|---|---|
0 | 1 or higher | |
1 | Block transfer facility does not apply. | Number of rows = Min (X, 4096)*
|
2 or higher | Number of rows = PDBLKF value | Number of rows = MIN (X, Y)* X: Number of rows that can be stored in specified buffer size (same as X shown above) Y: PDBLKF value |