You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Maxim Muzafarov (Jira)" <ji...@apache.org> on 2019/10/01 15:20:00 UTC
[jira] [Updated] (IGNITE-12183) Rebalancing process metrics for
cache groups
[ https://issues.apache.org/jira/browse/IGNITE-12183?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Maxim Muzafarov updated IGNITE-12183:
-------------------------------------
Labels: IEP-35 await (was: IEP-35)
> Rebalancing process metrics for cache groups
> --------------------------------------------
>
> Key: IGNITE-12183
> URL: https://issues.apache.org/jira/browse/IGNITE-12183
> Project: Ignite
> Issue Type: Improvement
> Reporter: Aleksandr Brazhnikov
> Assignee: Surkov Aleksandr
> Priority: Major
> Labels: IEP-35, await
> Fix For: 2.8
>
>
> h3. Intro
> Currently, some of the Apache Ignite rebalance process metrics are not working well enough. For instance, `EstimatedRebalancingKeys` keys time to time returns `-1` value due to a bug, or `rebalanceKeysReceived` metric treated as CacheMetric in fact calculated for the whole cache group (e.g. historical rebalance, see IGNITE-11330 and code block comment below).
> All the rebalance process metrics must be re-worked.
> {code:java}
> /**
> * Update rebalancing metrics.
> */
> private void updateGroupMetrics() {
> // TODO: IGNITE-11330: Update metrics for touched cache only.
> // Due to historical rebalancing "EstimatedRebalancingKeys" metric is currently calculated for the whole cache
> // group (by partition counters), so "RebalancedKeys" and "RebalancingKeysRate" is calculated in the same way.
> for (GridCacheContext cctx0 : grp.caches()) {
> if (cctx0.statisticsEnabled())
> cctx0.cache().metrics0().onRebalanceKeyReceived();
> }
> }
> {code}
> h3. What we have
> _CacheMetrics_ - statistics must be enabled to see these metrics.
> * getRebalancedKeys
> * getKeysToRebalanceLeft
> * getEstimatedRebalancingKeys
> * getEstimatedRebalancingFinishTime
> * getRebalancingStartTime
> * getRebalanceClearingPartitionsLeft
> * getRebalancingKeysRate
> * getRebalancingBytesRate
> h3. What to do
> All such metrics (or their analogue) must be available for the _CacheGroupMetrics_. I'd suggest to do the following:
> # Phase-1
> #* rebalancingPartitionsLeft long metric
> #* rebalancingReceivedKeys long metric
> #* rebalancingReceivedBytes long metric
> #* rebalancingStartTime long metric
> #* rebalancingFinishTime long metric
> # Phase-2
> #* rebalancingExpectedKeys long metric
> #* rebalancingExpectedBytes long metric
> #* rebalancingEvictedPartitionsLeft long metric
> # Phase-3 (statistics must be enabled)
> #* rebalancingKeysRate HitRate metric
> #* rebalancingBytesRate HitRate metric
> # Phase-4
> #* Mark rebalancing _CacheMetrics_ deprecated and remove from metrics framework IGNITE-11961.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)