Kbase 10759: Extending the database with pre-allocated blocks Multi-vol.
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  5/10/1998 |
|
Extending the database with pre-allocated blocks Multi-vol.
The first time PROGRESS extends the database is uses 16 PROGRESS
blocks. There are 2048 bytes per block, so this calculates into
16 * 4 * 512 bytes for VMS.
The next time PROGRESS extends the database, the formula used is
32 PROGRESS blocks, or 32 * 4 * 512 for VMS.
The next time PROGRESS extends the database, it will use 48 PROGRESS
blocks, or 48 * 4 * 512 bytes.
Thereafter, PROGRESS extends the database with 64 PROGRESS blocks.
To avoid the overhead of extending the database, or the before-image
file, PROGRESS offers the feature of MULTI-VOLUME DATABASES, which
pre-allocate blocks that can then be used as required. With careful
management, you can pre-allocate the space required for a given time
interval (before adding more fixed extents) and never have to use a
variable extent. This can give you a significant performance
advantage.
The advantage comes from allocating all the required space up-front,
in "administrative mode", rather than while users are updating the
database real-time. They would have to wait for the database to
extend before continuing if they were using a single-volume database
or a variable extent multi-volume database.
It is important to remember that extents should be added after careful
analysis. Operations like an index rebuild, or any other process
that reads all the blocks in the database, will be made to be
prohibitively time-consuming by pre-allocating too many blocks.
The blocks do not have to be continguous for PROGRESS to use them.
It is all managed by the operating system and the database manager,
and the pieces are treated all together into one logical file.
Progress Software Technical Support Note # 10759