[ 
https://issues.apache.org/jira/browse/KUDU-2824?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16844721#comment-16844721
 ] 

Yingchun Lai edited comment on KUDU-2824 at 5/21/19 10:56 AM:
--------------------------------------------------------------

[https://gerrit.cloudera.org/c/12852/] 

This patch allows administators to specify different priorities for tables by 
`gflags`, these maintenance OPs of these high priority tables have greater 
chance to be launched.
 # Define several integer priority levels for tables, like [-5, 5], default 
level is 0. The bounds can be specified by `--max_priority_range`
 # Each level has a multiplier on the op scores, Level N's multiplier is 
`base_multiplier^N`, base_multiplier is some like 1.1. It can be configured by 
`–maintenance_op_multiplier`
 # Priority multipliers only applied to the compaction ops to improve 
performance, NOT applied to GC ops and flush ops, they can work like before.

Currently, only support to specify prioritizing/deprioritizing levels to tables 
by gflags, like 
`--maintenance_manager_table_priorities=table_id_a:-5;table_id_b:-1;table_id_c:0;table_id_d:3;table_id_e:4`

We can improve it after table 'extra config' functionality provided.


was (Author: acelyc111):
[https://gerrit.cloudera.org/c/12852/] 

This patch allows administators to specify different priorities for tables by 
`gflags`, these maintenance OPs of these high priority tables have greater 
chance to be launched.
 # Define several integer priority levels for tables, like [-5, 5], default 
level is 0. The bounds can be specified by `--max_priority_range`
 # Each level has a multiplier on the op scores, Level N's multiplier is 
`base_multiplier^N`, base_multiplier is some like 1.1. It can be configured by 
`–maintenance_op_multiplier`
 # Priority multipliers only applied to the compaction ops to improve 
performance, NOT applied to GC ops and flush ops, they can work like before.

Currently, only support to specify prioritizing/deprioritizing levels to tables 
by gflags, like 
`--maintenance_manager_table_priorities=table_id_1:-5;table_id_2:-1;table_id_3:0;table_id_4:3;table_id_5:4`

We can improve it after table 'extra config' functionality provided.

> Make some tables in high priority in MM compaction
> --------------------------------------------------
>
>                 Key: KUDU-2824
>                 URL: https://issues.apache.org/jira/browse/KUDU-2824
>             Project: Kudu
>          Issue Type: Improvement
>          Components: tserver
>    Affects Versions: 1.9.0
>            Reporter: Yingchun Lai
>            Assignee: Yingchun Lai
>            Priority: Minor
>              Labels: MM, compaction, maintenance, priority
>
> In a Kudu cluster with thousands of tables, it's hard for a specified 
> tablet's maintenance OPs to be launched when their scores are not the 
> highest, even if the table the tablet belongs to is high priority for Kudu 
> users.
> For example, table A has 10 tablets and has total size of 1G, table B has 
> 1000 tablets and has total size of 100G. Both of them have similar update 
> writes, i.e. DRSs have similar overlaps, similar redo/undo logs, so they have 
> similar compaction scores. However, table A has much more reads than table B, 
> but table A and B are equal in MM, their DRS compactions are lauched equally, 
> we have to suffer a long time util most of tablets have been compacted in the 
> cluster to achieve a fast scan.
> So, maybe we can introduce some algorithm to detect high priority tables and 
> speed up compaction of these tables?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to