aihuaxu edited a comment on pull request #3595:
URL: https://github.com/apache/hadoop/pull/3595#issuecomment-954900267


   Thanks for the comments. @goiri, @symious and @Hexiaoqiao. We have thought 
of the solution completely on the router side to avoid the additional info 
exposed in the DFSClient. But the routers need to keep track of the mapping of 
the client->files and such mapping needs to be shared across multiple routers. 
That brings much complexity and also introduces the high latency on the router 
side. 
   
   renewLease(String clientName, String path) is a good solution from interface 
perspective, but it could cause NameNode overload as @Hexiaoqiao mentioned 
since instead of renewing per client, now we are renewing lease per file. This 
solution and current implementation will run into scale issue.
   
   Since adding renewLease(String clientName, String nsId) achieves the best 
performance, I feel we should still pursue similar idea rather than sacrificing 
the performance? 
   
   Another thought: maybe we can add an interface of renewLease(String 
clientName, List<String> files) to renew lease for all the files of that client 
and then the router can resolve to name services and make one call against one 
name service.  


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]



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

Reply via email to