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

Ignacio Corderi commented on HDFS-5549:
---------------------------------------

This patch enables multiple different DataNode implementations running on the 
infrastructure. 
In particular this allows us to implement a DataNode that can access new 
storage based on Seagate Technology.
Part of this work was done in collaboration with Nathan Roberts and Daryn Sharp 
from Yahoo.

The block transfer factory also gives us the ability to change how this new 
DataNodes transfer blocks between each other, but this is only part of the main 
motivation for the patch.

> Support for implementing custom FsDatasetSpi from outside the project
> ---------------------------------------------------------------------
>
>                 Key: HDFS-5549
>                 URL: https://issues.apache.org/jira/browse/HDFS-5549
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: datanode
>    Affects Versions: 3.0.0
>            Reporter: Ignacio Corderi
>         Attachments: HDFS-5549.patch
>
>
> Visibility for multiple methods and a few classes got changed to public to 
> allow FsDatasetSpi<T> and all the related classes that need subtyping to be 
> fully implemented from outside the HDFS project.
> Blocks transfers got abstracted to a factory given that the behavior will be 
> changed for DataNodes using Kinetic drives. The existing DataNode to DataNode 
> block transfer functionality got moved to LegacyBlockTransferer, no new 
> configuration is needed to use this class and have the same behavior that is 
> currently present.
> DataNodes have an additional configuration key 
> DFS_DATANODE_BLOCKTRANSFERER_FACTORY_KEY to override the default block 
> transfer behavior.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to