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

Thomas Demoor commented on HADOOP-12878:
----------------------------------------

[~cnauroth]: I assumed this would be used as follows: by having  
{{fs.wasb/s3a.block.location.impersonatedhost=host1,host2,...,host50}}  you 
would impersonate the block to be local on all nodes, the scheduler would then 
be offered options. An optimization would be to return 5 random hosts.
[~dweeks]: Thanks for your interest!
* The current s3a implementation causes scheduling delays as it declares 
localhost as the only locality for all blocks. 
* The proposed solution can indeed be suboptimal under load but it's always an 
improvement over the current situation
* I agree that using "*"  woud be easier and more correct but I think 
[[email protected]] might have a point. Testing... 
* Returning the s3 endpoint so things are always off-rack seems like an 
interesting idea. Testing...

[~PieterReuse] has verified that what I originally proposed speeds things up. 
We are checking if any of Daniel's proposals would work out as well. Expect an 
update next week.



> Impersonate hosts in s3a for better data locality handling
> ----------------------------------------------------------
>
>                 Key: HADOOP-12878
>                 URL: https://issues.apache.org/jira/browse/HADOOP-12878
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: fs/s3
>    Affects Versions: 2.8.0
>            Reporter: Thomas Demoor
>            Assignee: Thomas Demoor
>
> Currently, {{localhost}} is passed as locality for each block, causing all 
> blocks involved in job to initially target the same node (RM), before being 
> moved by the scheduler (to a rack-local node). This reduces parallelism for 
> jobs (with short-lived mappers). 
> We should mimic Azures implementation: a config setting 
> {{fs.s3a.block.location.impersonatedhost}} where the user can enter the list 
> of hostnames in the cluster to return to {{getFileBlockLocations}}. 
> Possible optimization: for larger systems, it might be better to return N 
> (5?) random hostnames to prevent passing a huge array (the downstream code 
> assumes size = O(3)).



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to