Get General Statistics
/essbase/rest/v1/applications/{applicationName}/databases/{databaseName}/statistics
Returns general statistics of the specified database. Additional statistics can be retrieved using the expand
parameter.
Request
-
applicationName(required): string
Application name.
-
databaseName(required): string
Database name.
-
expand: string
Use
none
to show only general statistics (this is the default). Other options available:storage
,runtime
, andall
.Default Value:none
Allowed Values:[ "none", "storage", "runtime", "all" ]
Response
- application/json
- application/xml
200 Response
OK
General database statistics returned successfully, with links to get expanded statistics.
object
-
cacheHitRatio:
number(double)
Ratio of the number of requests answered from aggregate storage cache as opposed to from the hard disk. May not be accurate when parallel data load or parallel calculation operations are in use.
-
currentCacheSize:
number(double)
The current size of the aggregate storage cache. See also currentCacheSizeLimit.
-
currentCacheSizeLimit:
number(double)
The maximum size (in kilobytes) to which the aggregate storage cache may grow.
-
diskSpaceAllocatedForData:
number(double)
For an aggregate storage cube, total space used by all disk files in the default tablespace.
-
diskSpaceUsedByData:
number(double)
For an aggregate storage cube, total space actually in use within the disk files in the default tablespace (some space within files may be free).
-
hitRatioOnDataCache:
number(double)
-
hitRatioOnDataFileCache:
number(double)
-
hitRatioOnIndexCache:
number(double)
-
numberOfDataBlockReads:
number(double)
-
numberOfDataBlockWrites:
number(double)
-
numberOfIndexPageReads:
number(double)
-
numberOfIndexPageWrites:
number(double)
-
pageReadsSinceLastStartup:
number(double)
For an aggregate storage cube, number of data pages read from disk since the last time the application was started.
-
pageSize:
number(double)
For an aggregate storage cube, size of the data page in kilobytes.
-
pageWritesSinceLastStartup:
number(double)
For an aggregate storage cube, number of data pages written to disk since the last time the application was started.
-
temporaryDiskSpaceAllocated:
number(double)
For an aggregate storage cube, total space used by all disk files in the temp tablespace.
-
temporaryDiskSpaceUsed:
number(double)
For an aggregate storage cube, total space actually in use within the disk files in the temp tablespace (some space within files may be free).
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 the statistics. The application or database name may be incorrect.
500 Response
Internal Server Error.
Examples
The following example shows how to get general 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?expand=all" -H "accept: application/json" -u %User%:%Password%
Example of Response Body
{
"general": {
"databaseStartTime": 1586308012000,
"databaseElapsedTime": "0:0:3:34",
"numberOfConnections": 1,
"numberOfDimensions": 10,
"loadStatus": "Loaded"
},
"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
},
"runtime": {
"cacheHitRatio": 0,
"currentCacheSize": 0,
"currentCacheSizeLimit": 0,
"pageReadsSinceLastStartup": 0,
"pageWritesSinceLastStartup": 0,
"pageSize": 0,
"diskSpaceAllocatedForData": 0,
"diskSpaceUsedByData": 0,
"temporaryDiskSpaceAllocated": 0,
"temporaryDiskSpaceUsed": 0,
"hitRatioOnIndexCache": 0,
"hitRatioOnDataCache": 0,
"numberOfIndexPageReads": 0,
"numberOfIndexPageWrites": 0,
"numberOfDataBlockReads": 0,
"numberOfDataBlockWrites": 0,
"hitRatioOnDataFileCache": 0
}
}