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

Yi Liu commented on HADOOP-11847:
---------------------------------

Kai had an offline discussion with me.  
1. In RSRawDecoder.java, for the additional input buffers, we don't need them, 
we can use inputs directly, and do some modification for {{RSUtil.GF}} to check 
whether some input is null. Then it's more efficient and simper.
2. For output, we have looked into RS implementation, all the outputs have 
relationship with each other, so in current phase, we still decode all outputs. 
For example, for 6+3, if there is 2 chunks missed, ideally we just need to 
reconstruct 2 chunks, but because the relationship of outputs, currently we 
still go to reconstruct 3 chunks. HADOOP-11871 is for further improvement of 
this.  So for output buffers, we may need to allocate some buffer(s).

> Enhance raw coder allowing to read least required inputs in decoding
> --------------------------------------------------------------------
>
>                 Key: HADOOP-11847
>                 URL: https://issues.apache.org/jira/browse/HADOOP-11847
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: io
>            Reporter: Kai Zheng
>            Assignee: Kai Zheng
>              Labels: BB2015-05-TBR
>         Attachments: HADOOP-11847-HDFS-7285-v3.patch, 
> HADOOP-11847-HDFS-7285-v4.patch, HADOOP-11847-HDFS-7285-v5.patch, 
> HADOOP-11847-v1.patch, HADOOP-11847-v2.patch
>
>
> This is to enhance raw erasure coder to allow only reading least required 
> inputs while decoding. It will also refine and document the relevant APIs for 
> better understanding and usage. When using least required inputs, it may add 
> computating overhead but will possiblly outperform overall since less network 
> traffic and disk IO are involved.
> This is something planned to do but just got reminded by [~zhz]' s question 
> raised in HDFS-7678, also copied here:
> bq.Kai Zheng I have a question about decoding: in a (6+3) schema, if block #2 
> is missing, and I want to repair it with blocks 0, 1, 3, 4, 5, 8, how should 
> I construct the inputs to RawErasureDecoder#decode?
> With this work, hopefully the answer to above question would be obvious.



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

Reply via email to