The amount of storage space required for the data in the database varies during processing and is dependent on the nature of the DB applications storing and erasing records.
BSTATUS can be used to obtain an overview of the occupied storage space, giving the DB administrator complete control over storage space allocation. He is thus able to:
adapt the storage space occupied by the realms of his database to immediate needs so as not to take up more space than is required
prepare for DB applications which insert new records by allocating additional space to those DB elements (realms, tables) which have become too small to accommodate new records.
There is online access to the original database, i. e. in parallel with database operation, or to a shadow database.
When you run BSTATUS online, you must assume that the data output is not current since the DBH has not copied all the data from the buffer to the database yet. In order to obtain as much current data as possible, you should force a database update just before the BSTATUS run using the DAL command CHECKPOINT or NEW RLOG. However, the BSTATUS output may still differ from the actual contents of the database if an update is running parallel to this task.
The tables printed by BSTATUS provide the following specific information:
Realm statistics - used/unused storage space per realm:
size of the realm in pages
number of unused pages
number of pages partially filled
number of full pages
total number of unused bytes in the realm
Set statistics - storage space (per set) occupied by tables
number of set occurrences
number of stored member records in the largest and smallest set occurrences, and average number of member records in each set occurrence
The following information is recorded for each table in the set:
column numbers in the owner DBTT containing the addresses of the tables
filling ratio (= occupancy level) on index level 0 (main level)
filling ratio on all index levels other than the main level
maximum and average number of index levels other than the main level
number of set occurrences in which reorganization by BREORG results in a reduction in the number of index levels.
Owner statistics - storage space (per set) occupied by the tables for one owner
number of member records
for set occurrence table of the owner, the DBTT column number containing the address of the table
filling ratio (= occupancy level) on index level 0 (main level)
filling ratio on all index levels other than the main level
number of index levels other than the main level
flag indicating whether BREORG can reduce the number of index levels.
Record type statistics - used/unused DBTT entries per record type:
number of used DBTT entries, i.e. number of records stored
highest record sequence number
highest record sequence number possible, i.e. maximum number of records of this record type which can be stored
DBTT filling ratio as a percentage
CALC key statistics - the storage space used by the primary pages and overflow pages per hash area:
number of reserved primary pages
number of records (for a direct hash area) or number of pointers (for an indirect hash area) which can still be added
number of empty primary pages
occupancy level of the primary pages
number of overflow pages
number of records or pointers in the overflow pages
occupancy level of the overflow pages
depth factor, i.e. the average number of accesses required to locate a record
Record number statistics - the records of a record type stored in a realm
for one or more specified realms: Number of records per record type which have been stored in this realm
for one or more specified record types: Number of records of specified record types stored per realm
BSTATUS can also be used to obtain a printout of the statistics on the storage space occupied by
the database directory (DBDIR) and/or
the database compiler realm (DBCOM).