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

Lohit Vijayarenu commented on HDFS-6452:
----------------------------------------

On our clusters we are seeing about 70-75% of load is readonly (getFileInfo, 
listStatus, getBlockLocation). With this we have been thinking about enabling 
namenode stale reads. If we do that, then having clients pick random NameNode 
would distribute clients across both NameNode. How about we have an option to 
randomize which NN to talk to by the client. By default 
ConfiguredFailoverProxyProvider would behave like today, but an option to 
randomize would be useful. 

> ConfiguredFailoverProxyProvider should randomize currentProxyIndex on 
> initialization
> ------------------------------------------------------------------------------------
>
>                 Key: HDFS-6452
>                 URL: https://issues.apache.org/jira/browse/HDFS-6452
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: ha, hdfs-client
>    Affects Versions: 2.4.0
>            Reporter: Gera Shegalov
>            Assignee: Gera Shegalov
>
> We observe that the clients iterate proxies in the fixed order. Depending on 
> the order of namenodes in dfs.ha.namenodes.<nameservice> (e.g. 'nn1,nn2') and 
> the current standby (nn1), all the clients will hit nn1 first, and then 
> failover to nn2.  Chatting with [~lohit] we think we can simply select the 
> initial value of {{currentProxyIndex}} randomly, and keep the logic of 
> {{performFailover}} of iterating from left-to-right. This should halve the 
> unnecessary load on standby NN.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to