hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Zhe Zhang (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HDFS-7348) Erasure Coding: striped block recovery
Date Tue, 28 Apr 2015 23:40:08 GMT

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

Zhe Zhang commented on HDFS-7348:
---------------------------------

Please find detailed comments below:

Logics:
# Since recovering multiple missing blocks at once is a pretty rare case, should we just reconstruct
all missing blocks and use {{DataNode#DataTransfer}} to push them out?
# I filed HDFS-8282 to move {{StripedReadResult}} and {{waitNextCompletion}} to {{StripedBlockUtil}}.
# In foreground recovery we read in parallel to minimize latency. It's an interesting design
question whether we should we do the same in background recovery. More discussions are needed
here.
# If we do choose to read source blocks in parallel, how should we design the unit of sync-and-decode?
Right now the readers read a cell at a time. Another option is to read entire blocks and then
decode. The drawback is larger temporary memory usage. The benefits are: i) simpler logic
(no need to recreate reading threads) and avoid the overhead of initializing connection to
source DNs; ii) maintain open connections as short as possible (fast readers don't need to
wait for slow ones); iii) Does it save CPU to decode in big chunks? [~drankye] Could you advise?

# Should we save a copy of reconstructed block locally? More space will be used; but it will
avoid re-decoding if push fails. 

Nits:
# Could use {{ArrayList<>}}
{code}
stripedReaders = new ArrayList<StripedReader>(sources.length);
{code}
# Maybe we can move {{getBlock}} to {{StripedBlockUtil}} too; it's a useful util to only parse
the {{Block}}. If it sounds good to you I'll move it in HDFS-8282.

> Erasure Coding: striped block recovery
> --------------------------------------
>
>                 Key: HDFS-7348
>                 URL: https://issues.apache.org/jira/browse/HDFS-7348
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: datanode
>            Reporter: Kai Zheng
>            Assignee: Yi Liu
>         Attachments: ECWorker.java, HDFS-7348.001.patch
>
>
> This JIRA is to recover one or more missed striped block in the striped block group.



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

Mime
View raw message