Skip to content

Commit

Permalink
Add vector collection metrics documentation [AI-52] (#1171)
Browse files Browse the repository at this point in the history
Documentation for metrics added in
hazelcast/hazelcast-mono#2471

---------

Co-authored-by: Oliver Howell <[email protected]>
  • Loading branch information
k-jamroz and oliverhowell committed Jul 19, 2024
1 parent ee1996b commit 97da964
Showing 1 changed file with 192 additions and 2 deletions.
194 changes: 192 additions & 2 deletions docs/modules/ROOT/pages/list-of-metrics.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -277,15 +277,15 @@ the watermark already having passed their windows.

|`map.getCount`
|count
|Number of local get operations on the map; it is incremented for every get operation even the entries do not exist.
|Number of local get operations on the map; it is incremented for every get operation even if the entries do not exist.

|`map.heapCost`
|count
|Total heap cost for the map on this member

|`map.hits`
|count
|Number of reads of the locally owned entries; it is incremented for every read by any type of operation (get, set, put). So, the entries should exists.
|Number of reads of the locally owned entries; it is incremented for every read by any type of operation (get, set, put). So the entries should exist.

|`map.indexedQueryCount`
|count
Expand Down Expand Up @@ -433,6 +433,196 @@ This is because the cluster has to communicate with more members, which can add
|===
====

.Vector Collection (Beta) [.enterprise]*{enterprise-product-name}*
[%collapsible]
====
[cols="4,1,6a"]
|===
| Name
| Unit
| Description

|`vectorCollection.backupCount`
|count
|Number of backups per entry

|`vectorCollection.backupEntryCount`
|count
|Number of backup entries held by the member

|`vectorCollection.backupEntryHeapMemoryCost`
|bytes
|Heap memory cost of backup entries in this member

|`vectorCollection.clearCount`
|count
|Number of local clear operations on the vector collection

|`vectorCollection.creationTime`
|ms
|Creation time of the vector collection on the member

|`vectorCollection.deleteCount`
|count
|Number of local delete operations on the vector collection

|`vectorCollection.getCount`
|count
|Number of local get operations on the vector collection; it is incremented for every get operation even if the entries do not exist.

|`vectorCollection.heapCost`
|count
|Total heap cost of the vector collection on this member

|`vectorCollection.lastAccessTime`
|ms
|Last access time of the locally owned entries

|`vectorCollection.lastUpdateTime`
|ms
|Last update time of the locally owned entries

|`vectorCollection.maxClearLatency`
|ms
|Maximum latency of local clear operations on the vector collection

|`vectorCollection.maxOptimizeLatency`
|ms
|Maximum latency of local optimize operations on the vector collection

|`vectorCollection.maxSearchLatency`
|ms
|Maximum latency of search operations coordinated by this member on the vector collection

|`vectorCollection.maxSizeLatency`
|ms
|Maximum latency of local size operations on the vector collection

|`vectorCollection.optimizeCount`
|count
|Number of local optimize operations on the vector collection

|`vectorCollection.ownedEntryCount`
|count
|Number of vector collection entries owned by the member

|`vectorCollection.ownedEntryHeapMemoryCost`
|bytes
|Heap memory cost of owned vector collection entries on this member

|`vectorCollection.putAllCount`
|count
|Number of local putAll operations on the vector collection.

Note that for each `putAll` invocation on the client there can be multiple invocations of `putAll` on the members
and some invocations may be translated to `set` if there is only 1 entry.

|`vectorCollection.putAllEntryCount`
|count
|Number of entries passed to local putAll operations on the vector collection

|`vectorCollection.putCount`
|count
|Number of local put operations on the vector collection

|`vectorCollection.removeCount`
|count
|Number of local remove operations on the vector collection

|`vectorCollection.searchCount`
|count
|Number of search operations coordinated by this member on the vector collection

|`vectorCollection.searchResultsCount`
|count
|Number of results returned by search operations coordinated by this member on the vector collection

|`vectorCollection.setCount`
|count
|Number of local set operations on the vector collection

|`vectorCollection.sizeCount`
|count
|Number of local size operations on the vector collection

|`vectorCollection.totalClearLatency`
|ms
|Total latency of local clear operations on the vector collection

|`vectorCollection.totalDeleteLatency`
|ms
|Total latency of local delete operations on the vector collection

|`vectorCollection.totalGetLatency`
|ms
|Total latency of local get operations on the vector collection

|`vectorCollection.totalMaxDeleteLatency`
|ms
|Maximum latency of local delete operations on the vector collection

|`vectorCollection.totalMaxGetLatency`
|ms
|Maximum latency of local get operations on the vector collection

|`vectorCollection.totalMaxPutAllLatency`
|ms
|Maximum latency of local putAll operations on the vector collection

|`vectorCollection.totalMaxPutLatency`
|ms
|Maximum latency of local put operations on the vector collection

|`vectorCollection.totalMaxRemoveLatency`
|ms
|Maximum latency of local remove operations on the vector collection

|`vectorCollection.totalMaxSetLatency`
|ms
|Maximum latency of local set operations on the vector collection

|`vectorCollection.totalOptimizeLatency`
|ms
|Total latency of local optimize operations on the vector collection

|`vectorCollection.totalPutAllLatency`
|ms
|Total latency of local putAll operations on the vector collection

|`vectorCollection.totalPutLatency`
|ms
|Total latency of local put operations on the vector collection

|`vectorCollection.totalRemoveLatency`
|ms
|Total latency of local remove operations on the vector collection

|`vectorCollection.totalSearchLatency`
|ms
|Total latency of search operations coordinated by this member on the vector collection

|`vectorCollection.totalSetLatency`
|ms
|Total latency of local set operations on the vector collection

|`vectorCollection.totalSizeLatency`
|ms
|Total latency of local size operations on the vector collection

3+a|
The above `latency` metrics are only measured for the members and do not represent the overall performance of the cluster.
We recommend monitoring the average latency for each operation, for example, `vectorCollection.totalGetLatency / vectorCollection.getCount` and `vectorCollection.totalSetLatency / vectorCollection.setCount`.
Increased average latency is a sign that the cluster is experiencing performance problems, or there is a spike in the load.
The following list details potential reasons:

* Increase in the load on the cluster: if the cluster is under heavy load, this can lead to increased latency for all operations, slowing down the overall performance.
* Increasing member count in the cluster: as the number of cluster members increases, the total latency for operations can also increase.
This is because the cluster has to communicate with more members, which can add to the overall latency. This might be a data architecture problem.
* Increasing the data set size: this causes the cluster to search through more data to find the requested data, which can slow down the overall performance.
* Increasing the number of concurrent operations: this causes the cluster to process more requests at the same time, which can slow down the overall performance. This is a potential bottleneck on resources (CPU, memory, network).
|===
====
.MultiMap
[%collapsible]
====
Expand Down

0 comments on commit 97da964

Please sign in to comment.