【读正常流程】

(1)Clinet携带文件名从Master中获取数据位置。
(2)Clinet任意选择一份副本来进行读取(其中,也要考虑读取的位置等)。

对异常的读取:
如果读取第一个位置出错,则开始读取第二个位置……依次尝试直到读取到正确数据。这种方式增加了读取的时间。

【读流程优化】

目的是为了解决依次重试带来的性能下降。
关键:并行读取某几个CS(比如两个)。一旦一份读取完成,就发送结束读取的消息。
缺点:增加了两份IO复用。

慢节点规避
Clinet收到Master返回的文件位置后,对多个位置评价延迟时间,然后选择延迟时间最小和第二小的进行读取。

0
Posted in BigData

Leave a Comment:

电子邮件地址不会被公开。