Get Storage Statistics
/essbase/rest/v1/applications/{applicationName}/databases/{databaseName}/statistics/storage
Returns storage statistics of the specified database.
Request
-
applicationName(required): string
Application name.
-
databaseName(required): string
Database name.
Response
- application/json
- application/xml
200 Response
OK
Database storage statistics returned successfully.
object
-
aggregateDataSize:
integer(int32)
For aggregate storage cubes, the total disk space occupied by aggregate cells
-
averageClusteringRatio:
number(double)
A measure of the fragmentation of the page file. A value close to 1 indicates the degree of fragmentation is low. A value close to zero indicates a high degree of fragmentation that could affect calculation and query performance.
-
blockDensity:
number(double)
The average block density (calculated using all currently loaded blocks)
-
blockSize:
integer(int32)
-
compressionRatio:
number(double)
Average data block compression ratio
-
costOfQueryingIncrementalData:
number(double)
For aggregate storage cubes, the average percentage of query time spent processing incremental data slices. This is useful in deciding when slices should be merged together to improve query performance.
-
dimensions:
array dimensions
-
existingLevelZeroBlocks:
number(double)
The number of non-missing leaf (lowest level) blocks in the cube
-
existingUpperLevelBlocks:
number(double)
The number of non-missing, non-leaf (upper level) blocks in the cube
-
indexFileSize:
integer(int64)
-
inputLevelDataSize:
integer(int32)
For aggregate storage cubes, the total disk space used by input-level data
-
maxKeyLengthBits:
integer(int32)
For aggregate storage cubes, the sum of all the bits used by each dimension. For example, there are 20 bits in the key used for dimensions, and the first 4 are used by Year.
-
maxKeyLengthBytes:
integer(int32)
For aggregate storage cubes, how many bytes the key uses per cell
-
numberOfAggregateCells:
integer(int32)
For aggregate storage cubes, the number of cells stored in aggregate views
-
numberOfAggregateViews:
integer(int32)
For aggregate storage cubes, the number of aggregate views, including those automatically built on incremental slices
-
numberOfExistingBlocks:
number(double)
Total number of existing data blocks (not the maximum)
-
numberOfIncrementalAggregateCells:
integer(int32)
For aggregate storage cubes, the number of cells stored in the incremental slices' aggregate views
-
numberOfIncrementalDataSlices:
integer(int32)
For aggregate storage cubes, the number of data slices resulting from incremental data loads
-
numberOfIncrementalInputCells:
integer(int32)
For aggregate storage cubes, the number of level-0 cells in the incremental data slices
-
numberOfInputLevelCells:
integer(int32)
For aggregate storage cubes, the number of existing level-0 cells in the database, including incremental slices
-
pageFileSize:
integer(int64)
-
percentageOfMaximumBlocksExisting:
number(double)
-
potentialNumberOfBlocks:
number(double)
400 Response
Bad Request
Failed to get storage statistics. The application or database name may be incorrect.
500 Response
Internal Server Error.
Examples
The following example shows how to get storage statistics for a cube.
This example uses cURL to access the REST API from a Windows shell script. The calling user's ID and password are variables whose values are set in properties.bat
.
Script with cURL Command
call properties.bat
curl -X GET "https://myserver.example.com:9001/essbase/rest/v1/applications/Sample_Dynamic/databases/Basic/statistics/storage" -H "accept: application/json" -u %User%:%Password%
Example of Response Body
{
"storage": {
"maxKeyLengthBits": 0,
"maxKeyLengthBytes": 0,
"numberOfInputLevelCells": 0,
"numberOfIncrementalDataSlices": 0,
"numberOfIncrementalInputCells": 0,
"numberOfAggregateViews": 0,
"numberOfAggregateCells": 0,
"numberOfIncrementalAggregateCells": 0,
"costOfQueryingIncrementalData": 0,
"inputLevelDataSize": 0,
"aggregateDataSize": 0,
"numberOfExistingBlocks": 354,
"blockSize": 672,
"potentialNumberOfBlocks": 1900,
"existingLevelZeroBlocks": 354,
"existingUpperLevelBlocks": 0,
"blockDensity": 83.61904761904762,
"percentageOfMaximumBlocksExisting": 18.63157894736842,
"compressionRatio": 0.9943010752688172,
"averageClusteringRatio": 0.33334593787222777,
"pageFileSize": 294969,
"indexFileSize": 8216576
}
}