Skip to content

Conversation

nik9000
Copy link
Member

@nik9000 nik9000 commented Mar 22, 2021

This moves top_metrics from global ordinals to segment ordinals which
should should speed it up a ton on shards receiving a lot of writes at
the cost of a little speed on shards that aren't receiving many writes.

The rally tests on hot shards so the performance cost is between .5% and
5%:

|                               |  before |  after  |   diff   |    |
|  50th percentile service time | 706.406 | 716.434 |  10.0277 | ms |
|  90th percentile service time | 738.705 | 742.636 |   3.9311 | ms |
| 100th percentile service time | 773.643 | 812.476 |  38.8331 | ms |

That seems worth it for 0 startup cost on hot shards.

Closes #70453

This moves `top_metrics` from global ordinals to segment ordinals which
should should speed it up a ton on shards receiving a lot of writes at
the cost of a little speed on shards that aren't receiving many writes.

The rally tests on hot shards so the performance cost is between .5% and
5%:
```
|                               |  before |  after  |   diff   |    |
|  50th percentile service time | 706.406 | 716.434 |  10.0277 | ms |
|  90th percentile service time | 738.705 | 742.636 |   3.9311 | ms |
| 100th percentile service time | 773.643 | 812.476 |  38.8331 | ms |
```

That seems worth it for 0 startup cost on hot shards.

Closes elastic#70453
@nik9000 nik9000 merged commit 571c9a4 into elastic:7.x Mar 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant