getStatistics(statistics: JadeDynamicObject input) abstract;
The getStatistics method of the Collection class analyzes the collection and returns structural statistics in the attributes of a JadeDynamicObject, representing collection statistics.
The attributes of a collection statistics dynamic object are defined and interpreted as follows.
| Attribute | Description |
|---|---|
| blockSize | Entries per block |
| keyLength | Size of the key in bytes (oid (6) for |
| entrySize | Size of each collection entry in bytes |
| size | Number of entries in the collection (that is, the size of the collection itself) |
| blockCount | Total number of blocks in the collection |
| height | Number of levels in the collection (always 1 for Array classes) |
| minEntries | Minimum number of entries found in any block |
| maxEntries | Maximum number of entries found in any block |
| avgEntries | Average number of entries in collection blocks |
| loadFactor | Actual average percent loading of collection blocks (entries for each block) |
To compute the block size in bytes, multiply the blockSize attribute by the entrySize attribute. The maximum collection block size for a collection is 256K bytes (that is, the value defined by the MaximumCollectionBlockSize global constant in the
The
| Global Constant | String Value |
|---|---|
| JStats_ArrayName | "JStatsArray" |
| JStats_DictionaryName | "JStatsDictionary" |
| JStats_JadeBytesName | "JStatsJadeBytes" |
| JStats_SetName | "JStatsName" |
The
| Global Constant | Integer Value |
|---|---|
| JStats_ArrayType | 101 |
| JStats_DictionaryType | 102 |
| JStats_JadeBytesType | 104 |
| JStats_SetType | 103 |
The following example shows the use of the getStatistics method.
vars
jdo : JadeDynamicObject;
begin
create jdo;
node.processes.getStatistics(jdo);
write jdo.display;
epilog
delete jdo;
end;
For details about the behavior and tuning of collections, see