hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Zhe Zhang (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HDFS-10702) Add a Client API and Proxy Provider to enable stale read from Standby
Date Thu, 03 Nov 2016 22:51:58 GMT

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

Zhe Zhang commented on HDFS-10702:

Thanks [~mackrorysd] for taking over this work! It's exciting to see this feature moving forward.

IIUC, if a client issues a read with a "stale bound" which is fresher than the SbNN's current
latest TxId, the SbNN will tail edit logs from ANN, right?

My concern is that if a significant portion of read requests follow this scenario (needs a
fresher TxId), that will cause a high writeLock contention on SbNN. At lease in our production
cluster, over 99% of RPC requests are reads, and NN relies on parallelism between the read
requests to catch up with incoming requests. If say 50% of those requests are sent to SbNN
and 50% of those request a fresher TxId (considering the edit log tailing frequency, this
is quite likely), SbNN is taking much higher writeLock contention than current ANN.

Maybe we can consider combining this SbNN read logic with the ideas discussed under HDFS-8940,
to somehow combine the SbNN state with events from {{inotify}}? Pinging [~drankye], [~mingma]
and [~HuafengWang] for thoughts.

> Add a Client API and Proxy Provider to enable stale read from Standby
> ---------------------------------------------------------------------
>                 Key: HDFS-10702
>                 URL: https://issues.apache.org/jira/browse/HDFS-10702
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>            Reporter: Jiayi Zhou
>            Assignee: Jiayi Zhou
>            Priority: Minor
>         Attachments: HDFS-10702.001.patch, HDFS-10702.002.patch, HDFS-10702.003.patch,
HDFS-10702.004.patch, HDFS-10702.005.patch, HDFS-10702.006.patch, StaleReadfromStandbyNN.pdf
> Currently, clients must always talk to the active NameNode when performing any metadata
operation, which means active NameNode could be a bottleneck for scalability. One way to solve
this problem is to send read-only operations to Standby NameNode. The disadvantage is that
it might be a stale read. 
> Here, I'm thinking of adding a Client API to enable/disable stale read from Standby which
gives Client the power to set the staleness restriction.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: hdfs-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-help@hadoop.apache.org

View raw message