关于随机写入操作,“追加操作”的一些例子是什么



我刚刚读完谷歌文件系统(GFS)的论文。报纸上说GFS就是

optimized for appending operations rather than random writes. 

看到这一特点在整个论文中都得到了强调,我认为这一定非常重要。

作为一个根本没有工作经验的学生,谷歌提到的Appending Operations在现实生活中有哪些例子?听起来很激烈。

这是Google文件系统的核心限制。它将它与GPFS等通用并行文件系统进行了对比。然而,当涉及到复制时,它使设计变得容易得多。由于谷歌能够围绕其文件系统设计其应用程序,而且随机操作(在旋转媒体上)本身就很慢,这对他们来说很好。

很多东西都是"附加"操作:

  • 新的日志条目会附加到日志文件中。(GoogleFS也可以附加到已经关闭的文件中(有一些限制,非常类似http://hadoop.apache.org/hdfs/无法做到这一点)
  • 新的web爬网数据将附加到爬网文件,而不是覆盖文件中爬网的现有版本
  • 所有MapReduce(你也应该阅读那篇论文)的输出都是从头到尾写一个文件,并将键/值对附加到文件中

使用seek或pwrite操作对文件进行的所有未更新文件中间数据的写入都是追加操作。随机写入最重要的用途是(经典的)数据库后端。

相关内容

  • 没有找到相关文章

最新更新