[
https://issues.apache.org/jira/browse/HDFS-12443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16224875#comment-16224875
]
Weiwei Yang commented on HDFS-12443:
------------------------------------
Hi [~linyiqun]
Sorry for the late review, was pretty busy last few days. I have looked at the
patch, mainly focus on {{SCMBlockDeletingService#call}} logic. Now the behavior
seems like, on each interval, SCM scans delLog to get up to
{{dnSize*blockDeleteLimitSize}} number of containers, and them to command
queue. I don't think this resolves the problem. For example,
{code}
numOfDn = 5
blockSize=256mb
containerSize=5gb
blockNumPerContainer=20
blockDeleteLimitSize= 1000/20 = 50
{code}
then on each interval, SCM gets 50 containers from delLog, that looks like
{code}
container0: B1, B2..
container1: B3, B4
...
container50: Bn...
{code}
but we don't know which datanode these container belongs. Still worst case,
these 50 containers might both belong to one datanode. This way other DNs will
be starving.
> Ozone: Improve SCM block deletion throttling algorithm
> -------------------------------------------------------
>
> Key: HDFS-12443
> URL: https://issues.apache.org/jira/browse/HDFS-12443
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Components: ozone, scm
> Reporter: Weiwei Yang
> Assignee: Yiqun Lin
> Labels: OzonePostMerge
> Attachments: HDFS-12443-HDFS-7240.001.patch,
> HDFS-12443-HDFS-7240.002.patch, HDFS-12443-HDFS-7240.002.patch,
> HDFS-12443-SCM-blockdeletion-throttle.pdf
>
>
> Currently SCM scans delLog to send deletion transactions to datanode
> periodically, the throttling algorithm is simple, it scans at most
> {{BLOCK_DELETE_TX_PER_REQUEST_LIMIT}} (by default 50) at a time. This is
> non-optimal, worst case it might cache 50 TXs for 50 different DNs so each DN
> will only get 1 TX to proceed in an interval, this will make the deletion
> slow. An improvement to this is to make this throttling by datanode, e.g 50
> TXs per datanode per interval.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]