阅读文章The Google File System后,我仍然对以下几点感到困惑:
'追加操作'与'写操作'有什么优势?文章强调使用追加操作而不是写操作,我想知道为什么。追加比写快?
为了保持一个chunk的redundancy之间的一致性,gfs使用lease让一个chunkserver作为primary,并且让primary决定操作顺序来达到一致性,我的问题是如果重试之后update操作还是不能成功,redundancys会处于不一致的状态。那么当不同的客户端来读取更新失败的相同偏移量的同一个chunk时,他们可能会读取不同的内容。gfs是如何处理这种问题的。
如果追加操作发生错误,主chunkserver会选择一个新的偏移量来追加记录吗?记录是什么意思?当客户端读取文件时,它如何处理文件中的一些填充或重复记录?