[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-827?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

zhaijia updated BOOKKEEPER-827:
-------------------------------
    Description: 
Current bookie compaction in GarbageCollector has setting: 'compactionRate'. It 
is throttling and limiting the compaction by entries. 
But from a bandwidth perspective, it would be good that we could throttle and 
limit compaction by bytes, which would really reflect the bandwidth of disk. 

So in this enhancement, we added another "by bytes" option when doing 
compaction in GarbageCollector:
"boolean isThrottleByBytes": true when use by bytes, false when use by entries;
"int compactionRateByEntries": by entries, number of concurrent entries;
"int compactionRateByBytes": by bytes, number of bytes of entries before flush.

  was:
Current bookie compaction in GarbageCollector has two settings: 
'compactionMaxOutstandingRequests' and 'compactionRate'. They are throttling 
and limiting the compaction by entries. 
But from a bandwidth perspective, it would be good that we could throttle and 
limit compaction by bytes, which would really reflect the bandwidth of disk. 

So in this enhancement, we added another "by bytes" option when doing 
compaction in GarbageCollector:
"boolean isThrottleByBytes": true when use by bytes, false when use by entries;
"int maxOutstandingRequests": by entries, number of entries before flush;
"int compactionRateByEntries": by entries, number of concurrent entries;
"int maxOutstandingRequestsBytes: by bytes, number of bytes that entries have 
occupied before flush. 
"int compactionRateByBytes": by bytes, number of bytes of entries before flush.


> change throttle in GarbageCollector to use either "by entry" or "by byte"
> -------------------------------------------------------------------------
>
>                 Key: BOOKKEEPER-827
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-827
>             Project: Bookkeeper
>          Issue Type: Improvement
>          Components: bookkeeper-server
>    Affects Versions: 4.3.0
>            Reporter: zhaijia
>            Assignee: zhaijia
>             Fix For: 4.4.0
>
>         Attachments: BOOKKEEPER-827-v2.patch, BOOKKEEPER-827-v3.patch, 
> BOOKKEEPER-827-v4.patch
>
>
> Current bookie compaction in GarbageCollector has setting: 'compactionRate'. 
> It is throttling and limiting the compaction by entries. 
> But from a bandwidth perspective, it would be good that we could throttle and 
> limit compaction by bytes, which would really reflect the bandwidth of disk. 
> So in this enhancement, we added another "by bytes" option when doing 
> compaction in GarbageCollector:
> "boolean isThrottleByBytes": true when use by bytes, false when use by 
> entries;
> "int compactionRateByEntries": by entries, number of concurrent entries;
> "int compactionRateByBytes": by bytes, number of bytes of entries before 
> flush.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to